このガイドは、Azure AD (OIDC) または Okta (OIDC) とのネイティブ連携でサポートされていないアイデンティティプロバイダーを利用しているお客様向けです。IdP が Azure AD または Okta の場合は、セットアップをよりスムーズに行えるネイティブ連携の利用を推奨します。
必要なもの
- Discovery URL - IdP の OIDC Discovery エンドポイント(例:
https://idp.example.com/.well-known/openid-configuration) - Client ID - IdP で設定したアプリケーションの Client ID
- Client Secret - IdP で設定したアプリケーションの Client Secret
- Identity Provider Domains - この IdP を通じて認証を行うすべての会社のメールドメイン(例:
example.com,subsidiary.example.com) - Scopes - 要求する OIDC スコープ(通常は
openid profile emailを指定します。IdP のグループ機能を使用する場合はgroupsを追加します)
セットアップ手順
ステップ 1: IdP でアプリケーションを登録する
| 設定 | 値 |
|---|---|
| Application Type | Web Application / Confidential Client |
| Sign-in Redirect URI (Callback URL) | https://auth.devin.ai/login/callback |
| Sign-out Redirect URI | 空のままにする |
| Grant Type | Authorization Code |
| Token Endpoint Authentication | Client Secret (POST) |
ステップ 2: Discovery URL を特定する
プロバイダーごとの代表的な Discovery URL の形式:
- Keycloak:
https://<host>/realms/<realm>/.well-known/openid-configuration - Ping Identity:
https://<host>/<tenant-id>/as/.well-known/openid-configuration - OneLogin:
https://<subdomain>.onelogin.com/oidc/2/.well-known/openid-configuration - Auth0:
https://<domain>/.well-known/openid-configuration - Google Workspace:
https://accounts.google.com/.well-known/openid-configuration
authorization_endpoint、token_endpoint、issuer などのフィールドを含む JSON ドキュメントが返ってくれば、その URL は正しく設定されています。ステップ 3: スコープを設定する
| Scope | 目的 | 必須かどうか |
|---|---|---|
openid | すべての OIDC フローで必須 | はい |
profile | ユーザーの表示名を返す | はい |
email | ユーザーのメールアドレスを返す | はい |
groups | ユーザーのグループメンバーシップ情報を返す(IdP グループ用) | IdP グループを使用する場合のみ |
openid profile email(IdP グループを使用する場合は openid profile email groups)。
IdP によっては、グループクレームに別のスコープ名(例:
roles やカスタムスコープ)を使用している場合があります。グループメンバーシップ情報を返す正しいスコープ名については、利用している IdP のドキュメントを確認してください。ステップ 4: グループクレームを設定する(IdP グループに必須)
- IdP 側で、アプリケーションに対して
groupsスコープが利用可能になっていることを確認します - IdP を設定して、ID トークンまたは userinfo レスポンスに
groupsクレームを含めます
IdP がデフォルトでグループクレームを含めない場合、カスタムスコープを作成するか、クレームマッピングポリシーを設定する必要がある場合があります。グループクレームを OIDC トークンに追加する手順については、IdP のドキュメントを参照してください。
ステップ 5: 設定情報を Cognition に送信する
- Discovery URL(例:
https://idp.example.com/.well-known/openid-configuration) - Client ID
- Client Secret
- Identity Provider Domains(この IdP 用のすべてのメールドメイン)
- Scopes(例:
openid profile email groups)
セットアップの確認
- Devin Enterprise の URL(例:
https://<your_subdomain>.devinenterprise.com)にアクセスします - ログインフローを開始するために Sign in with OIDC(または対応する SSO ボタン)をクリックします
- IdP のログインページにリダイレクトされます
- 認証が完了すると、Devin Enterprise の組織ページが表示されます
- Devin の Web アプリで Settings > IdP Groups に移動します
- 少なくとも 1 人のグループのメンバーがログインした後、IdP グループが一覧表示されます
- グループはログインのたびに同期されるため、IdP 側でのメンバーシップの変更は、次回ユーザーがサインインしたときに反映されます
IdP グループはユーザーのログイン時に取得されるため、グループメンバーシップの変更を反映するには再認証が必要です。グループベースのアクセス制御の設定詳細については、IdP Group Integration を参照してください。
