本ドキュメントでは、AD FS から Alibaba Cloud への SSO (Single Sign On) を実装する方法の例を示し、エンタープライズ ID プロバイダー(IdP)から Alibaba Cloud へのエンドツーエンドの SSO プロセスについて詳しく説明します。
注
本ドキュメントでは、例として Windows Server 2012 R2 を使用して、AD FS から Alibaba Cloud にユーザーベースの SSO を実装する方法について説明します。
前提条件
- DNS サーバー : ID 認証リクエストを解決して正しいフェデレーションサービスに送信します。
- Active Directory ドメインサービス (AD DS): ドメインユーザーおよびドメインデバイスなどのオブジェクトを作成、照会、および変更します。
- Active Directory フェデレーションサービス (AD FS) : ID フェデレーションの証明書利用者を設定し、設定された証明書利用者に対して SSO 認証 を実行します。
設定例
この例で使用される設定の詳細は以下のとおりです。
- 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.clu
。 RAM ユーザーはドメイン内ログイン用にsecloud\alice
を使用することもできます。
AD FS を RAM 内の信頼できる SAML IDP として構成
- ブラウザに以下の URL を入力します。
https://adfs.secloud.club/FederationMetadata/2007-06/FederationMetadata.xml
- メタデータファイルを XML 形式でダウンロードします。
- RAM コンソールで、SSO 設定にメタデータファイルを使用します。
詳細は、ユーザーベース SSO 用 SAMLの構成 をご参照ください.
AD FS で Alibaba Cloud を信頼できる SAML SP として構成
AD FS では、SAML SP を「証明書利用者」と呼びます。 Alibaba Cloud を信頼できる SP として設定するには、以下のステップを実行します。
- サーバー管理ページで、 を選択します。
- 証明書利用者信頼を追加 を選択します。
- Alibaba Cloud の SAML メタデータを証明書利用者用に設定します。
SAML メタデータ URL を表示するには、RAM コンソールにログインし、左側のナビゲーションペインで SSO をクリックして、ユーザーベース SSO をクリックします。 メタデータ URL は AD FS 証明書利用者の設定時に入力できます。
証明書利用者の設定後、Alibaba Cloud は、デフォルトドメイン名が
secloud.onaliyun.com
である Alibaba Cloud アカウントで RAM ユーザーを認証するリクエストを AD SFadfs.secloud.club
に送信します。 AD FS は Alibaba Cloud からリクエストを受信し、ユーザーを認証し、Alibaba Cloud にレスポンスを送信します。
Alibaba Cloud SP の SAML アサーション属性を設定します。
Alibaba Cloud が SAML レスポンスに従って正しい RAM ユーザーを見つけることができるようにするため、SAML アサーションの NameID
フィールドの値を RAM ユーザーの UPN に設定するよう推奨します。
AD の UPN を SAML アサーションの NameID
に設定する必要があります。 手順は以下のとおりです。
- 証明書利用者の表示名を右クリックして、要求規則の編集を選択します。
- 発行変換規則 をクリックして規則を追加します。
注 発行変換規則は既知のユーザー属性を変換し、それを SAML アサーションの属性として発行する方法を示します。 Microsoft AD のユーザーの UPN を
NameID
として発行する必要があります。 つまり、新しい規則が必要となります。 - クレームルールテンプレートドロップダウンリストから、受信クレームを変換するを選択します。
- 規則の編集を選択します。
注 この例では、アカウントの UPN のドメイン名は
secloud.onaliyun.com
、Microsoft AD の UPN のドメイン名はsecloud.club
です。 Microsoft AD の UPN をNameID
に直接マッピングすると、Alibaba Cloud は正しいユーザーと一致できません。この問題を解決するには、以下のどちらかの方法を使用します。- 方法 1:Microsoft AD のドメイン名を Alibaba Cloud アカウントのドメインエイリアスに設定します。
Microsoft AD のドメイン名
secloud.club
がインターネット上の DNS に登録されている場合は、secloud.club
を RAM のドメインエイリアスに設定できます。 ドメインエイリアスの設定方法については、 ドメインエイリアスの作成をご参照ください。設定が完了したら、規則の編集 ウィンドウで UPN をNameID
にマッピングします。 - 方法 2 : AD FS のドメイン名を変換します。
ドメイン名
secloud.club
が企業のイントラネットドメイン名の場合、Alibaba Cloud は企業のドメイン所有権を検証できません。 RAM が使用できるのはデフォルトのドメイン名secloud.onaliyun.com
だけです。この場合、AD FS によって Alibaba Cloud に発行された SAML アサーションでは、UPN のドメイン名サフィックス
secloud.club
をsecloud.onaliyun.com
に置き換える必要があります。 - 方法 3:Microsoft AD のドメイン名を補助ドメイン名に設定します。
注 ユーザーベース SSO タブで SSO 設定を変更することで補助ドメインを設定できます。
ドメイン名
secloud.club
が企業のイントラネットドメイン名の場合、Alibaba Cloud は企業のドメイン所有権を検証できません。 この場合は、secloud.onaliyun.com
を補助ドメイン名に設定できます。 補助ドメイン名を設定する方法について、補助ドメイン名の設定をご参照ください。
設定が完了したら、規則の編集 ページで UPN を
NameID
にマッピングします。 - 方法 1:Microsoft AD のドメイン名を Alibaba Cloud アカウントのドメインエイリアスに設定します。