このクイックスタートでは、Microsoft Entra ID (旧称 Azure AD) から Alibaba Cloud へのロールベース シングルサインオン (SSO) を構成する手順について説明します。構成後、Microsoft Entra ID テナントのユーザーは、SAML ベースの SSO を使用して Alibaba Cloud にログインし、一時的に Resource Access Management (RAM) ロールを偽装できます。
開始する前に、アクセスする予定の Alibaba Cloud サービスがセキュリティトークンサービス (STS) をサポートしていることを確認してください。
背景情報
この例では、ある企業が 1 つの Alibaba Cloud アカウントと 1 つの Microsoft Entra ID テナントを所有しています。Microsoft Entra ID テナントには、グローバル管理者権限を持つ管理者と、ユーザープリンシパル名 (UPN) が ssotest01@example.onmicrosoft.com の従業員ユーザーが含まれています。従業員ユーザー (ssotest01@example.onmicrosoft.com) が Microsoft Entra ID にログインした後、Alibaba Cloud にアクセスできるようにロールベース SSO を構成します。
ロールベース SSO の構成は、RAM ユーザーの標準ログインには影響しません。つまり、ユーザーは ID プロバイダー (IdP) の認証情報を使用してロールベース SSO 経由で Alibaba Cloud にログインすることも、パスワード、ユーザーベース SSO、またはその他の方法を使用して RAM ユーザーとして Alibaba Cloud にログインし続けることもできます。ロールベース SSO を使用してログインするには、IdP からログインを開始する必要があります。これは IdP 主導の SSO と呼ばれます。ロールベース SSO は、サービスプロバイダー (SP) である Alibaba Cloud から開始されるログインはサポートしていません。
また、IdP の各ユーザーに対して Alibaba Cloud に一致するユーザーを作成する必要はありません。ユーザーが IdP から SSO を開始すると、Alibaba Cloud は、ユーザーが SAML アサーションで指定された RAM ロールを一時的に偽装してリソースにアクセスすることを許可します。
ユーザーベース SSO とロールベース SSO の詳細な比較については、「SSO の概要」をご参照ください。
前提条件
AliyunRAMFullAccess ポリシーがアタッチされた Resource Access Management (RAM) 管理者。RAM ユーザーの作成と権限の付与については、「RAM ユーザーの作成」および「RAM ユーザーへの権限付与」をご参照ください。
グローバル管理者ロールを持つ Microsoft Entra ID ユーザー。ユーザーの作成と管理者ロールの割り当てについては、Microsoft Entra ID の公式ドキュメントをご参照ください。
操作手順
この例では、Microsoft Entra ID が IdP であり、Alibaba Cloud が SP です。以下の手順では、IdP と SP の間に相互信頼関係を確立し、Microsoft Entra ID のアプリロールを Alibaba Cloud の RAM ロールにマップします。
ステップ 1: Microsoft Entra ID でのエンタープライズ アプリケーションの作成: Microsoft Entra アプリ ギャラリーから、Alibaba Cloud Service (Role-based SSO) テンプレートを使用してエンタープライズ アプリケーションを作成します。
ステップ 2: Microsoft Entra ID での SAML の構成: Microsoft Entra ID で、Alibaba Cloud ロールベース SSO を信頼された SAML SP として構成します。
ステップ 3: Alibaba Cloud での IdP の作成: Alibaba Cloud RAM で、Microsoft Entra ID を信頼された SAML IdP として構成します。
ステップ 4: Alibaba Cloud での RAM ロールの作成: Alibaba Cloud RAM で RAM ロールを作成し、そのプリンシパルタイプを ID プロバイダーに設定します。
ステップ 5: Microsoft Entra ID でのアプリロールの作成とユーザーの割り当て: Microsoft Entra ID で Alibaba Cloud Service (Role-based SSO) アプリケーションのアプリロールを作成および構成し、エンタープライズユーザーをアプリケーションに割り当てます。
SSO の検証: ロールベース SSO が期待どおりに機能することを確認します。
ステップ 1: Microsoft Entra ID でのエンタープライズ アプリケーションの作成
Azure portal に Microsoft Entra ID のグローバル管理者としてログインします。
ホームページの左上隅にある
アイコンをクリックします。 左側のナビゲーションウィンドウで、 を選択します。
新しいアプリケーション をクリックします。
Alibaba Cloud Service (Role-based SSO) を検索して選択します。
アプリケーションの名前を入力し、作成 をクリックします。
この例では、デフォルト名
Alibaba Cloud Service (Role-based SSO)を使用します。カスタム名を指定することもできます。
ステップ 2: Microsoft Entra ID での SAML の構成
Alibaba Cloud Service (Role-based SSO) の詳細ページで、左側のナビゲーションウィンドウから を選択します。
SAML をクリックします。
SSO 設定を構成します。
左上隅にある メタデータファイルのアップロード をクリックし、Alibaba Cloud ロールベース SSO のメタデータファイルを選択して、追加 をクリックします。
説明メタデータファイルを取得するには、ブラウザで
https://signin.alibabacloud.com/saml-role/sp-metadata.xmlを開き、XML ファイルをコンピューターに保存します。基本的な SAML 構成 ページで、以下のパラメーターを構成し、保存 をクリックします。
識別子 (エンティティ ID): システムは、メタデータファイルの
entityID属性からこの値を自動的に読み取ります。応答 URL (Assertion Consumer Service URL): システムは、メタデータファイルの
Location属性からこの値を自動的に読み取ります。Relay State (オプション): ユーザーが SSO 経由で Alibaba Cloud マネジメントコンソールにログインした後、リダイレクトされるページを指定します。
説明セキュリティ上の理由から、Relay State の値として、*.aliyun.com、*.hichina.com、*.yunos.com、*.taobao.com、*.tmall.com、*.alibabacloud.com、または *.alipay.com などの Alibaba 所有のドメイン名の URL のみを入力できます。それ以外の場合、構成は無効です。このパラメーターを設定しない場合、システムはデフォルトでユーザーを Alibaba Cloud マネジメントコンソールのホームページにリダイレクトします。
属性とクレーム セクションで、
アイコンをクリックして、以下の 2 つのクレームが存在することを確認します。 
存在しない場合は、新しいクレームの追加 をクリックし、以下の表の情報を使用して追加します。
名前
名前空間
ソース
ソース属性
Rolehttps://www.aliyun.com/SAML-Role/Attributes属性
user.assignedroles
RoleSessionNamehttps://www.aliyun.com/SAML-Role/Attributes属性
user.userprincipalname
SAML 証明書 セクションで、フェデレーション メタデータ XML の右側にある ダウンロード をクリックして、IdP メタデータファイルをダウンロードします。
ステップ 3: Alibaba Cloud での IdP の作成
ステップ 4: Alibaba Cloud での RAM ロールの作成
RAM コンソールにログインします。左側のナビゲーションウィンドウで、 を選択します。
ロール ページで、ロールの作成 をクリックします。
ロールの作成 ページの右上隅にある ポリシーエディターに切り替える をクリックします。
エディターで SAML IdP を指定します。
エディターは、ビジュアルエディターと JSON スクリプトエディターをサポートしています。どちらかを使用できます。この例では、ビジュアルエディターを使用します。プリンシパル には ID プロバイダー を選択し、編集 をクリックします。次に、IdP として AAD を指定し、ID プロバイダータイプ に SAML を選択します。
ロールの作成 ダイアログボックスで、ロール名 (例: AADrole) を入力し、OK をクリックします。
作成した RAM ロールをクリックします。基本情報 セクションで、後で使用するためにロールの ARN をコピーします。
必要に応じて、RAM ロールに権限を付与できます。詳細については、「RAM ロールの権限管理」をご参照ください。
ステップ 5: Microsoft Entra ID でのアプリロールの作成とユーザーの割り当て
Microsoft Entra ID でアプリロールを作成します。
管理者として Azure portal にログインします。
左側のナビゲーションウィンドウで、 を選択します。
すべてのアプリケーション タブをクリックし、Alibaba Cloud Service (Role-based SSO) をクリックします。
左側のナビゲーションウィンドウで、 を選択します。
表示されるページで、アプリロールの作成 をクリックします。
アプリロールの作成 パネルで、以下のパラメーターを構成し、適用 をクリックします。
表示名: この例では、
Adminと入力します。許可されたメンバーの種類: この例では、両方 (ユーザー/グループ + アプリケーション) を選択します。
値: RAM ロールの ARN と IdP の ARN を入力します。ARN はコンマ (,) で区切ります。この例では、
acs:ram::187125022722****:role/aadrole,acs:ram::187125022722****:saml-provider/AADと入力します。説明値は
RAM ロール ARN,IdP ARNの形式を使用する必要があります。順序が正しくないと、SSO は失敗します。説明: アプリロールの説明を入力します。
このアプリロールを有効にしますか? を選択します。
説明Microsoft Entra ID で複数のアプリロールを作成する必要がある場合は、上記の手順を繰り返し、異なる表示名とアプリケーションロールの値を設定します。
エンタープライズ アプリケーションにユーザーを割り当て、アプリロールを指定します。
左側のナビゲーションウィンドウで、 を選択します。
名前 列で、Alibaba Cloud Service (Role-based SSO) をクリックします。
左側のナビゲーションウィンドウで、 を選択します。
表示されるページで、ユーザー/グループの追加 をクリックします。
割り当ての追加 ページで、ユーザーを選択し、選択 をクリックします。
選択したロールが Admin であることを確認します。そうでない場合は、ロールを Admin に変更します。次に、割り当て をクリックします。
説明Microsoft Entra ID でユーザーをグループに追加し、そのグループをエンタープライズ アプリケーションに割り当てることを推奨します。
複数のアプリロールを構成している場合は、異なるユーザーグループを異なるロールに関連付けることができます (例: ecs-admin グループを ecs-admin ロールに、oss-admin グループを oss-admin ロールに)。これにより、よりきめ細かなアクセスの制御と効率的なユーザー管理が可能になります。
SSO の検証
ロールベース SSO は IdP 主導の SSO のみをサポートしています。したがって、構成を検証するには Microsoft Entra ID からログインする必要があります。
ユーザーアクセス URL を取得します。
管理者として Azure portal にログインします。
左側のナビゲーションウィンドウで、 を選択します。
名前 列で、Alibaba Cloud Service (Role-based SSO) をクリックします。
表示されるページの左側のナビゲーションウィンドウで、 を選択し、ユーザーアクセス URL の値を取得します。

ユーザー (ssotest01@example.onmicrosoft.com) は管理者から ユーザーアクセス URL を取得します。ブラウザで、ユーザーは URL を入力し、自分のアカウントでログインします。ログインが成功すると、デフォルトで Alibaba Cloud マネジメントコンソールにリダイレクトされます。定義した RAM ロール (
aadrole) がアカウント名の前に表示されます。
システムは自動的に SSO を実行し、Relay State に指定されたページにリダイレクトします。Relay State が指定されていないか、その値が Alibaba 所有のドメイン名の URL でない場合、システムはユーザーを Alibaba Cloud マネジメントコンソールのホームページにリダイレクトします。
高度な設定: Microsoft Entra ID と複数の Alibaba Cloud アカウント間のロールベース SSO の構成
2 つの Alibaba Cloud アカウント (Account1 と Account2) があると仮定します。従業員ユーザー (ssotest01@example.onmicrosoft.com) が Microsoft Entra ID にログインし、ロールベース SSO を使用して Account1 と Account2 の両方にアクセスできるように SSO を構成します。
Microsoft Entra アプリ ギャラリーで、
Alibaba Cloud Service (Role-based SSO)アプリケーションを追加します。詳細については、「ステップ 1: Microsoft Entra ID でのエンタープライズ アプリケーションの作成」をご参照ください。
Microsoft Entra ID SSO を構成します。
詳細については、「ステップ 2: Microsoft Entra ID での SAML の構成」をご参照ください。
Alibaba Cloud で IdP を作成します。
2 つの Alibaba Cloud アカウント (Account1 と Account2) のそれぞれに、
AADという名前の IdP を作成する必要があります。詳細については、「ステップ 3: Alibaba Cloud での IdP の作成」をご参照ください。
Alibaba Cloud で RAM ロールを作成します。
2 つの Alibaba Cloud アカウントのそれぞれに RAM ロールを作成する必要があります。この例では、Account1 に 2 つの RAM ロール、Account2 に 1 つの RAM ロールを作成すると仮定します。詳細は以下のとおりです。
Account1 の RAM ロール:
adminaadとreadaad。Account2 の RAM ロール:
financeaad。
詳細については、「ステップ 4: Alibaba Cloud での RAM ロールの作成」をご参照ください。
Alibaba Cloud RAM ロールを Microsoft Entra ID ユーザーに関連付けます。
Microsoft Entra ID で 3 つのアプリロールを作成し、ユーザー (ssotest01@example.onmicrosoft.com) に割り当てます。3 つのロールの値は次のとおりです。
acs:ram::<Account1_ID>:role/adminaad,acs:ram::<Account1_ID>:saml-provider/AADacs:ram::<Account1_ID>:role/readaad,acs:ram::<Account1_ID>:saml-provider/AADacs:ram::<Account2_ID>:role/financeaad,acs:ram::<Account2_ID>:saml-provider/AAD
詳細については、「ステップ 5: Microsoft Entra ID でのアプリロールの作成とユーザーの割り当て」をご参照ください。
Microsoft Entra ID ユーザーとしてロールベース SSO を使用して Alibaba Cloud にアクセスします。
ユーザー (ssotest01@example.onmicrosoft.com) は Azure の My Apps ページにログインし、Alibaba Cloud Service (Role-based SSO) アプリケーションをクリックします。Alibaba Cloud ページで、システムはユーザーに Alibaba Cloud アカウント (Account1 または Account2) と偽装するロールを選択するよう促します。その後、ユーザーはロールベース SSO 経由で Alibaba Cloud マネジメントコンソールにアクセスできます。
トラブルシューティング
「SSO に関するよくある質問」をご参照ください。