このトピックでは、Active Directoryフェデレーションサービス (AD FS) からAlibaba Cloudへのユーザーベースのシングルサインオン (SSO) を実装する方法の例を示します。 この例では、クラウドIDプロバイダー (IdP) からAlibaba cloudへのエンドツーエンドSSOプロセスについて説明します。 次の例では、AD FSは、Windows Server 2012 R2を実行するElastic Compute Service (ECS) インスタンスにデプロイされています。
前提条件
SSOを設定する前に、次の操作を実行します。
Windows Server 2012 R2を実行するECSインスタンスに次のサービスをデプロイします。
DNS サーバー : ID 認証リクエストを解決して正しいフェデレーションサービスに送信します。
Active Directoryドメインサービス (AD DS): ドメインユーザーやドメインデバイスなどのオブジェクトを作成、クエリ、および変更できます。
AD FS: SSO依存関係者を設定し、設定された依存関係者に対してSSO認証を実行できます。
重要このトピックで説明するMicrosoft ADの設定は参考用であり、Alibaba CloudへのSSOログインの設定手順を理解するのに役立ちます。 Alibaba Cloudは、Microsoft ADの設定に関するコンサルティングサービスを提供していません。 AD FSのデプロイ方法の詳細については、「WindowsインスタンスでのADドメインの構築」をご参照ください。
次のデータを準備します。
Alibaba Cloudアカウントのデフォルトドメイン名:
secloud.onaliyun.com
。Alibaba Cloudアカウントに属するRAMユーザーのユーザー名:
alice
RAMユーザーのユーザープリンシパル名 (UPN) がalice@secloud.onaliyun.com
です。Microsoft ADに登録されているAD FSサービスの名前:
adfs.secloud.club
Microsoft ADのドメイン名:
secloud.club
。 NetBIOS名はsecloud
です。Microsoft ADのRAMユーザー
alice
のUPN:alice@secloud.club
。 RAMユーザーは、secloud\alice
を使用してMicrosoft ADドメインからログオンすることもできます。
手順1: AD FSをRAMで信頼できるSAML IdPとして設定する
ブラウザのアドレスバーに次のURLを入力します。
https:// adfs.secloud.club/FederationMetadata/2007-06/FederationMetadata.xml
.XML形式のメタデータファイルをコンピュータにダウンロードします。
RAMコンソールにログインし、SSO設定用のメタデータファイルを使用します。
詳細については、「ユーザーベースSSO用のAlibaba CloudのSAML設定の設定」をご参照ください。
説明メタデータファイルのサイズが上限を超える場合、
<fed:ClaimTypesRequested>
および<fed:ClaimTypesOffered>
のすべてのコンテンツを削除できます。
ステップ2: AD FSでAlibaba Cloudを信頼できるSAML SPとして設定する
AD FSでは、セキュリティアサーションマークアップ言語 (SAML) サービスプロバイダ (SP) は、依拠当事者と呼ばれます。 Alibaba Cloudを信頼できるSPとして設定するには、次の手順を実行します。
サーバーマネージャーの上部のナビゲーションバーで、ツール>AD FS管理を選択します。
依存当事者を右クリックして、Relying Party Trustを追加するを選択します。
依存関係者向けにAlibaba CloudのSAMLメタデータを設定します。
SAMLメタデータのURLを表示するには、RAMコンソールにログインします。 左側のナビゲーションウィンドウで、[SSO] をクリックします。 表示されるページで、[ユーザーベースSSO] をクリックします。 [セットアップSSO] セクションでURLを確認できます。 AD FSで依存関係者を設定するときに、メタデータURLを直接入力できます。
依拠当事者が設定された後、Alibaba Cloudは、名前がadfs.secloud.club
であるAD FSサービスにリクエストを送信します。 リクエストは、デフォルトドメイン名がsecloud.onaliyun.com
であるAlibaba Cloudアカウントに属するRAMユーザーを認証するために送信されます。 AD FSがリクエストを受信すると、RAMユーザーを認証し、Alibaba Cloudに応答を送信します。
ステップ3: Alibaba Cloud SPのSAMLアサーション属性の設定
SAMLアサーションのNameID
フィールドの値をRAMユーザーのUPNに設定することを推奨します。 これにより、Alibaba CloudはSAMLレスポンスに基づいて正しいRAMユーザーを見つけることができます。
Microsoft ADのUPNをSAMLアサーションのNameID
の値に設定する必要があります。
依存関係者の表示名を右クリックし、クレームルールの編集を選択します。
発行変換ルールをクリックしてルールを追加します。
説明発行変換ルールは、既知のユーザー属性を変換し、SAMLアサーションの属性として発行する方法を示します。 Microsoft ADでユーザーのUPNを
NameID
として発行する必要があります。 この場合、新しいルールが必要です。要求ルールテンプレートを着信クレームの変換に設定します。
ルールの編集を選択します。
説明この例では、Alibaba CloudアカウントのUPNのドメイン名は
secloud.onaliyun.com
で、Microsoft ADのUPNのドメイン名はsecloud.club
です。 Microsoft ADのUPNをNameID
にマップすると、Alibaba Cloudではユーザーを識別できません。この問題を解決するには、以下のどちらかの方法を使用します。
方法1: Microsoft ADのドメイン名を、RAMで構成されているドメインエイリアスに設定します。
Microsoft ADのドメイン名
secloud.club
がインターネット上のDNSに登録されている場合、secloud.club
をRAMに設定されたドメインエイリアスに変更できます。ドメインエイリアスの設定方法の詳細については、「ドメインエイリアスの作成と検証」をご参照ください。設定が完了したら、[ルールの編集] ダイアログボックスでUPNを
NameID
にマップします。方法2: AD FSでドメイン名を変換します。
ドメイン名
secloud.club
が企業の内部ドメイン名である場合、企業のドメイン所有権はAlibaba Cloudによって検証できません。 RAMはデフォルトのドメイン名secloud.onaliyun.com
のみ使用できます。この場合、UPNのドメイン名サフィックス
secloud.club
を変更して、AD FSがAlibaba Cloudに発行するSAMLアサーションにsecloud.onaliyun.com
する必要があります。方法3: Microsoft ADのドメイン名をユーザーベースSSOの補助ドメイン名として指定します。
ドメイン名
secloud.club
が企業の内部ドメイン名である場合、企業のドメイン所有権はAlibaba Cloudによって検証できません。 この場合、ドメイン名を変換する必要なしに、secloud.club
を補助ドメイン名として指定できます。 補助ドメイン名の指定方法については、「ユーザーベースSSO用のAlibaba CloudのSAML設定の設定」をご参照ください。設定が完了したら、[ルールの編集] ダイアログボックスでUPNを
NameID
にマップします。