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

Resource Access Management:RAM ロールの信頼ポリシーを編集する

最終更新日:Feb 27, 2025

Resource Access Management (RAM) ロールにアタッチされている信頼ポリシーを編集して、RAM ロールの信頼できるエンティティを変更できます。このトピックでは、RAM ロールの信頼できるエンティティを Alibaba Cloud アカウント、Alibaba Cloud サービス、または ID プロバイダー (IdP) に変更する方法について説明します。

背景情報

RAM ロールを作成するときに、Alibaba Cloud アカウント、Alibaba Cloud サービス、または IdP を RAM ロールの信頼できるエンティティとして指定できます。ほとんどの場合、RAM ロールを作成した後に信頼できるエンティティを変更する必要はありません。信頼できるエンティティを変更する必要がある場合は、このトピックで説明されているいずれかの方法を使用できます。

警告

RAM ロールの信頼ポリシーで信頼できるエンティティを変更すると、ワークロードに影響を与える可能性があります。信頼できるエンティティを変更する前に、テストアカウントを使用してテストを実行することをお勧めします。

手順

  1. 管理者権限を持つ RAM ユーザーとして RAM コンソール にログオンします。

  2. 左側のナビゲーションウィンドウで、[ID] > [ロール] を選択します。

  3. [ロール] ページで、作成した RAM ロールの名前をクリックします。

  4. [信頼ポリシー] タブで、[信頼ポリシーの編集] をクリックします。

    image

  5. コードエディタで、信頼ポリシーの内容を変更し、[OK] をクリックします。

例 1: RAM ロールの信頼できるエンティティを Alibaba Cloud アカウントに変更する

ポリシーの Principal 要素に RAM フィールドが含まれている場合、信頼できるエンティティは Alibaba Cloud アカウント です。ポリシーがアタッチされている RAM ロールは、信頼できる Alibaba Cloud アカウントの承認された RAM ユーザーと RAM ロールによって引き受けることができます。

  • RAM ロールは、信頼できる Alibaba Cloud アカウントのすべての RAM ユーザーと RAM ロールによって引き受けることができます。

    次のポリシーでは、RAM ロールは ID が 123456789012**** の Alibaba Cloud アカウントのすべての RAM ユーザーと RAM ロールによって引き受けることができます。

    {
        "Statement": [
            {
                "Action": "sts:AssumeRole",
                "Effect": "Allow",
                "Principal": {
                    "RAM": [
                        "acs:ram::123456789012****:root"
                    ]
                }
            }
        ],
        "Version": "1"
    }
  • RAM ロールは、信頼できる Alibaba Cloud アカウントの特定の RAM ユーザーのみが引き受けることができます。

    次のコードに基づいて Principal 要素を再構成すると、RAM ロールは ID が 123456789012**** の Alibaba Cloud アカウントの testuser という名前の RAM ユーザーのみが引き受けることができます。

                "Principal": {
                    "RAM": [
                        "acs:ram::123456789012****:user/testuser"
                    ]
                }                   
    説明

    信頼ポリシーを編集する前に、testuser という名前の RAM ユーザーが作成されていることを確認してください。

  • RAM ロールは、信頼できる Alibaba Cloud アカウントの指定された RAM ロールのみが引き受けることができます。

    次のコードに基づいて Principal 要素を再構成すると、RAM ロールは ID が 123456789012**** の Alibaba Cloud アカウントの testrole という名前の RAM ロールのみが引き受けることができます。

                "Principal": {
                    "RAM": [
                        "acs:ram::123456789012****:role/testrole"                
                    ]
                }                                 
    説明

    信頼ポリシーを編集する前に、testrole という名前の RAM ロールが作成されていることを確認してください。

例 2: RAM ロールの信頼できるエンティティを Alibaba Cloud サービスに変更する

ポリシーの Principal 要素に Service フィールドが含まれている場合、信頼できるエンティティは Alibaba Cloud サービス です。ポリシーがアタッチされている RAM ロールは、現在の Alibaba Cloud アカウントの信頼できる Alibaba Cloud サービスによって引き受けることができます。

次のポリシーでは、RAM ロールは現在の Alibaba Cloud アカウントの Elastic Compute Service (ECS) によって引き受けることができます。

{
    "Statement": [
        {
            "Action": "sts:AssumeRole",
            "Effect": "Allow",
            "Principal": {
                "Service": [
                    "ecs.aliyuncs.com"
                ]
            }
        }
    ],
    "Version": "1"
}
説明

サービスロールにアタッチされているポリシーの信頼できるエンティティは変更できません。これは、このポリシーがリンクされたサービスによって定義されているためです。詳細については、「サービスロール」をご参照ください。

例 3: RAM ロールの信頼できるエンティティを IdP に変更する

Principal 要素に Federated フィールドが含まれている場合、信頼できるエンティティは IdP です。RAM ロールは、IdP のすべてのユーザーによって引き受けることができます。

次のポリシーでは、RAM ロールは ID が 123456789012**** の Alibaba Cloud アカウントの testprovider という名前の IdP のすべてのユーザーによって引き受けることができます。

{
    "Statement": [
        {
            "Action": "sts:AssumeRole",
            "Effect": "Allow",
            "Principal": {
                "Federated": [
                    "acs:ram::123456789012****:saml-provider/testprovider"
                ]
            },
            "Condition":{
                "StringEquals":{
                    "saml:recipient":"https://signin.alibabacloud.com/saml-role/sso"
                }
            }
        }
    ],
    "Version": "1"
}