このトピックでは、SAML プロトコルの構成について説明します。
背景情報
SAML (Security Assertion Markup Language) は、ID プロバイダーサービス プロバイダー (IDP) と (SP) など、異なるセキュリティドメイン間で認証データと承認データを交換するための XML ベースのオープン標準です。
Dataphin 側で SAML 構成情報を入力するDataphin 側の構成情報
構成項目 dataphin.sso.saml.properties を生成する
注: まず、提供されている SAML メタデータを使用して SAML 構成情報テンプレートへの入力を完了します。次に、Base64 エンコーディングを実行して、dataphin.sso.saml.properties 構成項目を作成します。
SAML 構成情報テンプレート
# dataphin(sp) identifier ID (saml 側で新しいアプリケーションを作成するときに生成されます)
onelogin.saml2.sp.entityid={saml 側で新しいアプリケーションを作成するときに生成されます}
# dataphin(sp) コールバック URL
onelogin.saml2.sp.assertion_consumer_service.url=https://{dataphin アドレス}/sso/saml/ssoCallback
# dataphin(sp) ログアウト URL
onelogin.saml2.sp.single_logout_service.url=https://{dataphin アドレス}/logout.htm
# saml(idp) 構成ファイル URL
onelogin.saml2.idp.entityid=https://sts.windows.net/8ae0e787-99a4-40d8-aeda-bb7023b5e023/
# saml(idp) ログイン URL
onelogin.saml2.idp.single_sign_on_service.url={メタデータの SingleSignOnService タグの Location アドレスを入力します}
# saml(idp) ログアウト URL
onelogin.saml2.idp.single_logout_service.url={メタデータの SingleLogoutService タグの Location アドレスを入力します}
# saml(idp) 証明書 (saml ページからダウンロードします)
onelogin.saml2.idp.x509cert={元のデータによって提供される x509cert キー}
# smal ユーザー情報解析キー
onelogin.saml2.userInfoKeys={"sourceUserId":"http://schemas.microsoft.com/identity/claims/objectidentifier","displayName":"http://schemas.microsoft.com/identity/claims/displayname","email":"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress","mobilePhone":""}構成項目 | 説明 |
onelogin.saml2.sp.entityid | これは、SAML システムで新しいアプリケーションを作成するときに生成されます。 |
onelogin.saml2.sp.assertion_consumer_service.url | これはコールバック URL で、 |
onelogin.saml2.sp.single_logout_service.url | これはログアウト URL で、 |
onelogin.saml2.idp.entityid | IDP のこの一意の識別子は、ダウンロードした IDP メタデータで確認できます。
|
onelogin.saml2.idp.single_sign_on_service.url | この URL は、IDP 側でのログインとログアウトの両方に使用され、IDP メタデータに記載されています。
|
onelogin.saml2.idp.single_logout_service.url | IDP のログアウト URL は、onelogin.saml2.idp.single_sign_on_service.url と同じ方法で取得されます。 |
onelogin.saml2.idp.x509cert | これは IDP の証明書です。
|
onelogin.saml2.userInfoKeys | これは SAML ユーザー情報解析キーです。お客様の SAML メタデータの auth:ClaimType タグから、sourceUserId (ユーザーの一意 ID)、displayName (表示名)、email、および mobilePhone に対応する Uri を抽出し、JSON に入力します (存在しないキーは省略します)。 |
お客様によってタグが異なります。ユーザーの一意の ID を確認する必要があります。
Dataphin SSO 関連の構成項目
Dataphin 構成ファイル values.yaml の以下のフィールドは、SAML 認証のアクティブ化に関連しています。後続の構成の詳細を Dataphin 運用チームに提供してください。
product:
dataphin:
sso:
provider:
# SAML アカウントと認証を使用するように設定します。次の識別子を使用します
session: 'com.alibaba.dataphin.sso.provider.saml.session.SamlSessionProvider'
account: 'com.alibaba.dataphin.sso.provider.saml.account.SamlAccountProvider'
security:
# SAML2 プロトコル構成を設定します
saml2: {properties: 'Base64 エンコードされた SAML プロパティファイルのコンテンツ=='}上記の例に従って構成し、SAML ベースのアカウントと認証機能を有効にします。
履歴ユーザーの認証システムを切り替える
Dataphin の userTable は、source_user_id から Dataphin user_id へのマッピングを保持します。Dataphin の運用では、user_id はユーザーの ID として機能し、source_user_id はユーザー情報の変換に使用されます。
ユーザーが source_user_id を Dataphin に送信して IDP にログインすると、Dataphin は userTable を介して source_user_id を user_id に変換し、ユーザー変換が完了します。
そのため、履歴ユーザーを更新する場合は、新しいシステムユーザーと対応する Dataphin ユーザーとのシームレスな統合を確保するために、source_user_id を調整することが重要です。
たとえば、お客様が Alibaba Cloud のログインシステムから Microsoft AD に移行し、Dataphin スーパー管理者が小明である場合、小明の Alibaba Cloud ID は Microsoft AD ID に置き換える必要があります。
マッピングテーブルには、少なくとも fromId と toId の 2 つの列を含める必要があります。fromId は以前の IDP の ID で、toId は新しい IDP の ID です。
変更されていないユーザーは Dataphin にアクセスできなくなります。承認権限などの特定の権限を持っている場合、運用に影響を与える可能性があります。したがって、お客様は更新プロセス中に見落としやエラーが発生しないように、修正テーブルを徹底的に検証する必要があります。
ユーザー名
fromId
toId
小明
aliyun123
ms_ad_124
SuperAdmin
aliyun666
ms_ad_666


