コンテンツにスキップ

シングルサインオン用のAuth0 SAMLの設定

PlaidCloudは、SAML 2.0によるシングルサインオン(SSO)をサポートしています。このガイドでは、組織のユーザーがPlaidCloudにアクセスする際にAuth0で認証できるよう、Auth0をSAML IDプロバイダーとして構成する手順を説明します。

  • Auth0テナント
  • Administratorロールを持つAuth0アカウント
  • 設定の調整と構成値の交換のために、PlaidCloudサポートと連絡が取れること

セットアップでは、2者がSAMLメタデータを交換します。

  1. お客様側の作業: Auth0でSAML2 Web Appアドオンを有効にしたアプリケーションを構成し、Identity Provider Metadata URLをPlaidCloudに提供します。
  2. PlaidCloud側の作業: Auth0アプリケーションの構成を完了するために必要なサービスプロバイダー(SP)のエンティティIDとACS URL(Assertion Consumer Service URL)を提供します。

以下のステップ3を完了する前に、PlaidCloudサポートと調整してSPの値を入手してください。

ステップ1:アプリケーションの作成

Section titled “ステップ1:アプリケーションの作成”
  1. Auth0 Dashboardにサインインします。
  2. 左側のサイドバーで、Applications > Applicationsに移動します。
  3. Create Applicationをクリックします。
  4. アプリケーションの名前を入力します(例:PlaidCloud SSO)。
  5. アプリケーションの種類としてRegular Web Applicationsを選択します。
  6. 作成をクリックします。

ステップ2:SAML2 Web Appアドオンの有効化

Section titled “ステップ2:SAML2 Web Appアドオンの有効化”
  1. アプリケーションの詳細ページで、Addonsタブを選択します。
  2. SAML2 Web Appアドオンをクリックして有効にします。
  3. アドオンの設定パネルが開きます。次のステップで設定するため、開いたままにしておきます。

SAML2 Web Appアドオンの設定パネルで、次の手順を行います。

  1. Application Callback URLフィールドに、PlaidCloudから提供されたACS URLを入力します。
  2. 設定のJSONエディターで、audienceフィールドにPlaidCloudから提供されたSPエンティティIDを設定します。
{
"audience": "your-sp-entity-id-from-plaidcloud",
"mappings": {
"email": "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress",
"given_name": "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname",
"family_name": "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname"
},
"nameIdentifierFormat": "urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress",
"nameIdentifierProbes": [
"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress"
]
}
  1. 有効にする(または保存)をクリックして設定を適用します。

ステップ4:Identity Provider Metadata URLの取得と送信

Section titled “ステップ4:Identity Provider Metadata URLの取得と送信”

アドオンを有効にしたら、メタデータURLを確認してPlaidCloudに送信し、連携を完了させます。

  1. SAML2 Web Appアドオンの設定パネルで、使用方法タブを選択します。
  2. Identity Provider MetadataのURLをコピーします(形式:https://{your-auth0-domain}/samlp/metadata/{client-id})。

このメタデータURLをPlaidCloudサポートに送信してください。 これは、PlaidCloudがIDプロバイダー側の信頼関係を構成するために必要なEntity Descriptor URLです。PlaidCloudがこのURLを受け取ると、チームがKeycloakの構成を完了し、SSOをテストできる状態になったらお知らせします。

ステップ5:グループの属性マッピングの構成(任意)

Section titled “ステップ5:グループの属性マッピングの構成(任意)”

PlaidCloudの構成でグループベースのセキュリティロール割り当てを使用する場合は、Auth0のルールまたはアクションを使用して、SAMLアサーションでグループメンバーシップを渡すことができます。

  1. 左側のサイドバーで、アクション > Libraryに移動します。
  2. Build Customをクリックし、Login / Post Loginトリガー用の新しいアクションを作成します。
  3. SAMLアサーションにグループ情報を追加するロジックを記述します。たとえば、グループがユーザーメタデータとして保存されている場合は次のようになります。
exports.onExecutePostLogin = async (event, api) => {
const groups = event.user.app_metadata?.groups || [];
api.samlResponse.setAttribute("groups", groups);
};
  1. アクションをデプロイし、Loginフローに追加します。

ステップ6:ユーザーアクセスの制御

Section titled “ステップ6:ユーザーアクセスの制御”

Auth0では、アプリケーションに関連付けられた接続とルールに基づいて、認証できるユーザーが制御されます。

  1. アプリケーションの詳細ページで、接続タブを選択します。
  2. このアプリケーションで使用する接続(組織のデータベース接続、Active Directory、ソーシャル接続など)を有効にします。
  3. PlaidCloudへのアクセスを許可しない接続は無効にします。

接続内の特定のユーザーにアクセスを制限するには、Auth0のアクションまたはルールを使用して、ユーザー属性やグループメンバーシップに基づいて認証を許可または拒否します。

PlaidCloudが構成の完了を確認したら、次の手順を行います。

  1. 組織のPlaidCloudワークスペース(例:https://my-workspace.plaid.cloud)に移動します。
  2. Auth0のサインインページ(または構成した接続のログインページ)にリダイレクトされます。
  3. Auth0の認証情報でサインインします。
  4. 認証に成功すると、PlaidCloudにリダイレクトされます。

エラーが発生した場合は、次の点を確認してください。

  • Application Callback URLとaudienceが、PlaidCloudから提供された値と完全に一致している
  • アプリケーションでSAML2 Web Appアドオンが有効になっている
  • nameIdentifierFormatがメールアドレス形式に設定されている
  • PlaidCloudに送信したメタデータURLにアクセスできる
  • ユーザーの接続がアプリケーションで有効になっている