すべてのプロダクト
Search
ドキュメントセンター

Resource Access Management:Azure ADからのロールベースSSOの実装

最終更新日:Oct 31, 2024

このトピックでは、Azure Active Directory (Azure AD) からAlibaba Cloudへのロールベースのシングルサインオン (SSO) の実装方法の例を示します。 この例では、クラウドIDプロバイダー (IdP) からAlibaba cloudへのエンドツーエンドSSOプロセスについて説明します。

背景情報

開始する前に、Alibaba Cloudアカウント (アカウント1) とAzure ADテナントを作成する必要があります。 管理者と組織ユーザー (u2) がAzure ADテナントに追加されます。 管理者にはグローバル管理権限が割り当てられます。 ユーザーu2がロールベースSSOを使用してアカウント1のリソースにアクセスできるようにするために必要な設定を構成します。

グローバル管理者権限が付与された管理者としてAzure portalにログインし、この例では次の手順を実行する必要があります。 Azure ADでユーザーを作成し、ユーザーに権限を付与する方法の詳細については、 「Azure ADのドキュメント」をご参照ください。

ステップ1: Azure ADでアプリケーションを作成する

  1. 管理者としてAzure portalにログインします。

  2. ホームページの左上隅で、SSO_AAD_iconアイコンが表示されます。

  3. 左側のナビゲーションウィンドウで、Azure Active Directory > エンタープライズアプリケーション > すべてのアプリケーションを選択します。

  4. 表示されるページで、新しいアプリケーションをクリックします。

  5. 検索ボックスでAlibaba Cloudサービス (ロールベースSSO)を入力して、検索結果のAlibaba Cloud Service (ロールベースSSO) をクリックします。

  6. 表示されるパネルで、アプリケーションの名前を入力し、作成をクリックします。

    この例では、デフォルトのアプリケーション名Alibaba Cloud Service (ロールベースSSO) を使用します。 アプリケーションのカスタム名を入力することもできます。

  7. Alibaba Cloudサービス (ロールベースSSO) ページの左側のナビゲーションウィンドウで、[プロパティ] をクリックします。 次に、オブジェクトIDの値をコピーして保存し、後で使用します。

ステップ2: Azure ADでのSSOの構成

  1. Alibaba Cloudサービス (ロールベースSSO)ページの左側のナビゲーションウィンドウで、シングルサインオンをクリックします。

  2. シングルサインオン方式の選択セクションで、SAMLをクリックします。

  3. [SAMLによるシングルサインオンの設定] セクションで、SSO情報を設定します。

    1. 左上隅で、メタデータファイルのアップロードをクリックし、メタデータファイルを選択し、追加をクリックします。

      説明

      メタデータファイルは、次のURLから取得できます。 https://signin.alibabacloud.com/saml-role/sp-metadata.xml .

    2. 基本的なSAML設定パネルで、次のパラメータを設定し、保存をクリックします。

      • Identifier (Entity ID): このパラメーターを、上記のメタデータファイルから読み取られたentityIDの値に設定します。

      • 返信URL (Assertion Consumer Service URL): このパラメーターを、上記のメタデータファイルから読み取られたLocationの値に設定します。

      • リレー状態: このパラメーターは、ユーザーがロールベースSSOを使用してAlibaba Cloud管理コンソールにログインした後に表示されるページのURLに設定します。

        説明

        セキュリティ上の理由から、Alibaba WebサイトのRelay Stateを指すURLを入力する必要があります。 たとえば、URLのドメイン名は、*.aliyun.com、*.hichina.com、*.yunos.com、*.taobao.com、*.tmall.com、*.alibabacloud.com、または *.alipay.comです。 Alibaba Webサイトを指していないURLを入力した場合、設定は無効です。 このパラメーターを空のままにすると、デフォルトでAlibaba Cloud管理コンソールのホームページにリダイレクトされます。

    3. 属性とクレームセクションで、Editアイコンをクリックします。

    4. [新しいクレームの追加] をクリックし、次のパラメーターを設定し、[保存] をクリックします。

      • 名前: ロールを入力します。

      • 名前空間: https://www.aliyun.com/SAML-Role/Attributes を入力します。

      • ソース: [属性] を選択します。

      • ソース属性: ドロップダウンリストからuser.assignedrolesを選択します。

    5. 前の手順を繰り返して、別のクレームを追加します。

      • 名前: RoleSessionNameを入力します。

      • 名前空間: https://www.aliyun.com/SAML-Role/Attributes を入力します。

      • ソース: [属性] を選択します。

      • ソース属性: ドロップダウンリストからuser.us erprincipalnameを選択します。

    6. SAML証明書セクションで、フェデレーションメタデータXMLの右側にあるダウンロードをクリックしてIdPメタデータファイルをダウンロードします。

ステップ3: Alibaba CloudでのIdPの作成

  1. アカウント1を使用して、RAMコンソールにログインします。

  2. 左側のナビゲーションウィンドウで、統合 > SSOを選択します。

  3. ロールベースSSOタブで、SAMLsubtabをクリックしてIdPの追加をクリックします。

  4. IdPの作成ページで、IdP名AADに設定して構備考を設定します。

  5. [メタデータファイル] セクションで、[ファイルのアップロード] をクリックします。

    説明

    手順2: Azure ADでSSOを構成するでダウンロードされるフェデレーションメタデータXMLファイルをアップロードする必要があります。

  6. OKをクリックします。

  7. 閉じるをクリックします。

ステップ4: Alibaba CloudでRAMロールを作成する

  1. RAMコンソールの左側のナビゲーションウィンドウで、アイデンティティ > ロールを選択します。

  2. ロールページで、ロールの作成をクリックします。

  3. ロールの作成パネルで、[信頼できるエンティティ]に IdPを選択し、次へをクリックします。

  4. RAMロール名AADroleに設定してを設定します。

  5. IdP TypeパラメーターにSAMLを選択します。

  6. [IdPを選択] ドロップダウンリストからAADを選択して、OKをクリックします。

    説明
    • ビジネス要件に基づいて、RAMロールに権限を付与できます。 詳細については、「RAMロールへの権限の付与」をご参照ください。

    • IdPとRAMロールを作成したら、後で使用するためにIdPとRAMロールのAlibaba Cloudリソース名 (ARN) を保存します。 RAMロールのARNを取得する方法の詳細については、「RAMロールに関する情報の表示」をご参照ください。

  7. 閉じるをクリックします。

手順5: RAMロールをAzure ADユーザーに関連付ける

  1. Azure ADでロールを作成します。

    1. 管理者としてAzure portal Azure portalにログインします。

    2. 左側のナビゲーションウィンドウで、Azure Active Directory > アプリ登録を選択します。

    3. すべてのアプリケーションタブをクリックし、Alibaba Cloudサービス (ロールベースSSO)をクリックします。

    4. 左側のナビゲーションウィンドウで、アプリの役割をクリックします。

    5. 表示されるページで、アプリの役割を作成するをクリックします。

    6. アプリの役割を作成するパネルで、次のパラメータを設定し、適用をクリックします。

      • 表示名: この例では、Adminと入力します。

      • 許可されたメンバータイプ: この例では、両方 (ユーザー /グループ + アプリケーション) を選択します。

      • : RAMロールのARNとIdPのARNを入力します。 ARNはコンマ (,) で区切ります。 この例では、acs:ram::187125022722****:role/aadrole,acs:ram::187125022722 ****:saml-provider/AADと入力します。

      • 説明: 説明を入力します。

      • このアプリの役割を有効にしますか? を選択します。

    説明

    Azure ADで複数のロールを作成する場合は、上記の手順を繰り返します。

  2. ユーザu2にロールを割り当てる。

    1. 左側のナビゲーションウィンドウで、Azure Active Directory > エンタープライズアプリケーション > すべてのアプリケーションを選択します。

    2. 名前列で、Alibaba Cloudサービス (ロールベースSSO)をクリックします。

    3. 左側のナビゲーションウィンドウで、ユーザーとグループをクリックします。

    4. 表示されるページで、ユーザー /グループの追加をクリックします。

    5. 表示されるページで、[ユーザー] をクリックします。 ユーザーパネルで、u2を選択し、[選択] をクリックします。

    6. 割り当てをクリックします。

    7. ユーザーu2に割り当てられているロールを表示します。

      View the assigned roles

      説明

      u2を選択すると、作成したロールがユーザーu2に割り当てられます。 複数のロールが作成されている場合は、ビジネス要件に基づいてAzure ADユーザーにロールを割り当てる必要があります。

設定結果の確認

  1. ユーザーアクセスURLを取得します。

    1. 管理者としてAzure portal Azure portalにログインします。

    2. 左側のナビゲーションウィンドウで、Azure Active Directory > エンタープライズアプリケーション > すべてのアプリケーションを選択します。

    3. 名前列で、Alibaba Cloudサービス (ロールベースSSO)をクリックします。

    4. 表示されるページの左側のナビゲーションウィンドウで、プロパティをクリックしてユーザーアクセスURLの値を取得します。

      User access URL

  2. 管理者からユーザーアクセスURLを取得した後、ブラウザにURLを入力し、ログインに必要なユーザー名とパスワードを使用します。

    ログインが成功すると、Relay Stateパラメーターで指定されたページにリダイレクトされます。 Relay Stateが無効または指定されていない場合、Alibaba Cloud管理コンソールのホームページにリダイレクトされます。

    Successful role-based SSO

(オプション) Azure ADと複数のAlibaba Cloudアカウント間のロールベースSSOの設定

たとえば、アカウント1とアカウント2の2つのAlibaba Cloudアカウントがあるとします。 ユーザーu2がAzure ADにログオンした後、ロールベースSSOを使用してユーザーu2がアカウント1とアカウント2の両方のリソースにアクセスするようにする場合は、次の操作を実行します。

  1. Azure ADでAlibaba Cloud Service (ロールベースSSO) という名前のアプリケーションを作成します。

    詳細については、「手順1: Azure ADでアプリケーションを作成する」をご参照ください。

  2. Azure ADでSSOを構成します。

    詳細については、「手順2: Azure ADでSSOを構成する」をご参照ください。

  3. Alibaba CloudでIdPを作成します。

    アカウント1とアカウント2の両方にAAD IdPを作成する必要があります。

    詳細については、「手順3: Alibaba CloudでのIdPの作成」をご参照ください。

  4. Alibaba CloudでRAMロールを作成します。

    アカウント1とアカウント2の両方にRAMロールを作成する必要があります。 この例では、アカウント1に2つのRAMロールを作成し、アカウント2に1つのRAMロールを作成します。

    • アカウント1のadminaadおよびreadaad RAMロールを作成します。

    • アカウント2のfinanceaad RAMロールを作成します。

    詳細については、「手順4: Alibaba CloudでRAMロールを作成する」をご参照ください。

  5. RAMロールをユーザーu2に関連付けます。

    Azure ADで3つのロールを作成し、そのロールをユーザーu2に割り当てます。 役割の値:

    • acs:ram ::< Account1_ID>:role/adminaad,acs:ram ::< Account1_ID>:saml-provider/AAD

    • acs:ram ::< Account1_ID>:role/readaad,acs:ram ::< Account1_ID>:saml-provider/AAD

    • acs:ram ::< Account2_ID>:role/financeaad,acs:ram ::< Account2_ID>:saml-provider/AAD

    詳細については、「手順5: RAMロールをAzure ADユーザーに関連付ける」をご参照ください。

  6. ユーザーu2を使用して、ロールベースSSOを使用してAlibaba Cloudにアクセスします。

    Azure portalにユーザーu2としてログインし、[My apps] ページで [Alibaba Cloud Service (ロールベースSSO)] をクリックします。 次に、Alibaba Cloud管理コンソールのプロンプトに従って、リソースにアクセスするAlibaba Cloudアカウントとそのロールを選択する必要があります。