OIDC を使用した SSO
W&B サポートの ID プロバイダー (SAML、Ping Federate、Active Directory など) の Auth0 テナントを設定するには、contact@wandb.com にメールしてください。
既に Auth0 を使用している場合や、Open ID Connect 互換のサーバーを持っている場合は、以下の手順に従って Open ID を使用した認証を設定してください。
W&B サーバーはデフォルトで手動ユーザ管理を行います。ライセンスバージョンの wandb/local も SSO が可能です。
Open ID Connect
wandb/local は認証に Open ID Connect (OIDC) を使用します。あなたのユースケースに基づいて、AWS Cognito または Okta で W&B サーバーを Open ID Connect で認証する方法を学ぶために、以下のタブのいずれかを選択してください。
ID プロバイダー (IdP) でシングルページまたはパブリッククライアントアプリケーションを選択してください。
- AWS
- Okta
以下の手順に従って AWS Cognito を認証用に設定してください:
- まず、AWS アカウントにサインインし、AWS Cognito アプリに移動します。
許可されたコールバック URL を指定して、IdP にアプリケーションを設定します。
http(s)://YOUR-W&B-HOST/oidc/callback
をコールバック URL として追加します。YOUR-W&B-HOST
を W&B ホストパスに置き換えます。
IdP がユニバーサルログアウトをサポートしている場合、ログアウト URL を
http(s)://YOUR-W&B-HOST
に設定します。YOUR-W&B-HOST
を W&B ホストパスに置き換えます。
例として、アプリケーションが https://wandb.mycompany.com
で実行されている場合、YOUR-W&B-HOST
を wandb.mycompany.com
に置き換えます。
以下の画像は、AWS Cognito に許可されたコールバックおよびサインアウト URL を提供する方法を示しています。
wandb/local はデフォルトで "フォームポスト" レスポンスタイプを使用した "暗黙的" 承認 を使用します。
また、wandb/local を PKCE コードエクスチェンジ フローを使用した「承認コード」グラントを実行するように設定することもできます。
- 1 つ以上の OAuth グラントタイプを選択して、AWS Cognito がトークンをアプリに配信する方法を設定します。
- W&B は特定の OpenID Connect (OIDC) スコープを必要とします。以下を AWS Cognito アプリから選択します。
- "openid"
- "profile"
- "email"
例として、あなたの AWS Cognito アプリの UI は以下の画像のように見えるはずです。
設定ページで Auth Method を選択するか、環境変数 OIDC_AUTH_METHOD を設定してどのグラントを wandb/local に使います。
AWS Cognito プロバイダーの場合、Auth Method を「pkce」に設定する必要があります
- クライアント ID と OIDC 発行者の URL が必要です。OpenID 発見ドキュメントは
$OIDC_ISSUER/.well-known/openid-configuration
にある必要があります。
例として、AWS Cognito を使用する場合、ユーザプール ID を Cognito IdP URL に追加して発行者の URL を生成できます。これは User Pools セクション内の App Integration タブから行えます。
IDP の URL に「Cognito ドメイン」を使用しないでください。Cognito は https://cognito-idp.$REGION.amazonaws.com/$USER_POOL_ID
に発見ドキュメントを提供します。
- まず、新しいアプリケーションを設定します。Okta のアプリ UI に進み、Add apps を選択します。
- App Integration name フィールドにアプリの名前を入力します。(例:Weights and Biases)
- グラントタイプ
implicit (hybrid)
を選択します。
W&B は PKCE を使用した承認コードグラントタイプもサポートします
許可されたコールバック URL を提供します。
- 許可されたコールバック URL として
http(s)://YOUR-W&B-HOST/oidc/callback
を追加します。
- 許可されたコールバック URL として
IdP がユニバーサルログアウトをサポートしている場合、Logout URL を
http(s)://YOUR-W&B-HOST
に設定します。
例として、アプリケーションがポート 8080 のローカルホストで実行されている場合(https://localhost:8080
)、リダイレクト URI は https://localhost:8080/oidc/callback
のようになります。
- Sign-out redirects URIs フィールドに
http(s)://YOUR-W&B-HOST/logout
と設定します。
- OIDC 発行者、クライアント ID、そして Auth メソッドを https://deploy.wandb.ai/system-admin で wandb/local に提供するか、環境変数として設定します。
W&B アプリで SSO 設定を行う
すべてが設定されたら、発行者、クライアント ID、そして Auth メソッドを W&B アプリ上の wandb/local
に提供するか、環境変数として設定します。以下の手順では、W&B アプリの UI を使用して SSO を設定する手順を説明します。
- Weights and Biases サーバーにサインインします。
- W&B アプリに移動します。
- ドロップダウンから System Settings を選択します。
- 発行者、クライアント ID、および認証メソッドを入力します。
- Update settings を選択します。