全部产品
Search
文档中心

访问控制:修改RAM角色的信任策略

更新时间:Dec 04, 2024

通过修改RAM角色的信任策略内容,可以修改RAM角色的可信实体。本文通过示例为您介绍如何修改RAM角色的可信实体为阿里云账号、阿里云服务或身份提供商。

背景信息

创建RAM角色时,您可以直接选择RAM角色的可信实体为阿里云账号、阿里云服务或身份提供商。一般情况下,创建RAM角色后,您不需要主动修改RAM角色的可信实体。如果某些特殊场景下确有需要,您可以通过本文所述的几种方式修改。

警告

修改RAM角色信任策略中的可信实体,会变更可信对象,可能会影响业务正常运行。请务必在测试账号充分测试,确保功能正常使用后,再应用到正式生产账号。

操作步骤

  1. 使用RAM管理员登录RAM控制台

  2. 在左侧导航栏,选择身份管理 > 角色

  3. 角色页面,单击目标RAM角色名称。

  4. 信任策略页签,单击编辑信任策略

    image

  5. 修改信任策略内容,然后单击保存信任策略

示例一:修改RAM角色的可信实体为阿里云账号

Principal中有RAM字段,表示该RAM角色的可信实体为阿里云账号,即可以被可信阿里云账号下的RAM用户、RAM角色扮演。

  • RAM角色可以被可信阿里云账号下的所有RAM用户、RAM角色扮演

    以下述信任策略为例:该RAM角色可以被阿里云账号(AccountID=123456789012****)下的所有RAM用户、RAM角色扮演。

    {
        "Statement": [
            {
                "Action": "sts:AssumeRole",
                "Effect": "Allow",
                "Principal": {
                    "RAM": [
                        "acs:ram::123456789012****:root"
                    ]
                }
            }
        ],
        "Version": "1"
    }
  • RAM角色只能被可信阿里云账号下的指定RAM用户扮演

    若您将Principal中的内容更改如下,则表示该RAM角色可以被阿里云账号(AccountID=123456789012****)下的RAM用户testuser扮演。

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

    修改此信任策略时,请确保已创建好对应RAM用户testuser

  • RAM角色只能被可信阿里云账号下的指定RAM角色扮演

    若您将Principal中的内容更改如下,则表示该RAM角色可以被阿里云账号(AccountID=123456789012****)下的RAM角色testrole扮演。

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

    修改此信任策略时,请确保已创建好对应RAM角色testrole

示例二:修改RAM角色的可信实体为阿里云服务

Principal中有Service字段,表示该RAM角色的可信实体为阿里云服务,即可以被可信阿里云服务扮演。

以下述信任策略为例:该RAM角色可以被当前阿里云账号下的ECS服务扮演。

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

服务关联角色的信任策略由关联的云服务定义,您不能修改服务关联角色的信任策略。更多信息,请参见服务关联角色

示例三:修改RAM角色的可信实体为身份提供商

Principal中有Federated字段,表示该RAM角色的可信实体为身份提供商,即可以被可信身份提供商下的用户扮演。

以下述信任策略为例:该RAM角色可以被当前阿里云账号(AccountID=123456789012****)中的身份提供商testprovider下的用户扮演。

{
    "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"
}