Resource Access Management (RAM) ロールにアタッチされている信頼ポリシーを編集して、RAM ロールの信頼できるエンティティを変更できます。このトピックでは、RAM ロールの信頼できるエンティティを Alibaba Cloud アカウント、Alibaba Cloud サービス、または ID プロバイダー (IdP) に変更する方法について説明します。
背景情報
RAM ロールを作成するときに、Alibaba Cloud アカウント、Alibaba Cloud サービス、または IdP を RAM ロールの信頼できるエンティティとして指定できます。ほとんどの場合、RAM ロールを作成した後に信頼できるエンティティを変更する必要はありません。信頼できるエンティティを変更する必要がある場合は、このトピックで説明されているいずれかの方法を使用できます。
RAM ロールの信頼ポリシーで信頼できるエンティティを変更すると、ワークロードに影響を与える可能性があります。信頼できるエンティティを変更する前に、テストアカウントを使用してテストを実行することをお勧めします。
手順
管理者権限を持つ RAM ユーザーとして RAM コンソール にログオンします。
左側のナビゲーションウィンドウで、 を選択します。
[ロール] ページで、作成した RAM ロールの名前をクリックします。
[信頼ポリシー] タブで、[信頼ポリシーの編集] をクリックします。
コードエディタで、信頼ポリシーの内容を変更し、[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"
}