全部产品
Search
文档中心

访问控制:RAM用户常见问题

更新时间:Feb 06, 2024

本文介绍了RAM用户常见问题,包括登录、费用和权限等问题。

RAM用户登录地址和登录方式是什么?

RAM用户登录地址: RAM用户登录地址

说明

通过登录RAM控制台,在概览页可以快速查询登录RAM用户登录地址。当您使用此地址登录时,系统会为您自动填写默认域名,您只需补齐RAM用户名称即可。

RAM用户登录方式有以下几种:

  • 方式一:使用默认域名登录。RAM用户的登录格式为<UserName>@<AccountAlias>.onaliyun.com,例如:username@company-alias.onaliyun.com。

    说明

    RAM用户的登录账号为UPN(User Principal Name)格式,即RAM控制台用户列表中所见的用户登录名称。<UserName>为RAM用户名称,<AccountAlias>.onaliyun.com为默认域名。关于默认域名的更多信息,请参见基本概念查看和修改默认域名

  • 方式二:使用账号别名登录。RAM用户的登录格式为<UserName>@<AccountAlias>,例如:username@company-alias。

    说明

    <UserName>为RAM用户名称,<AccountAlias>为账号别名。关于账号别名的更多信息,请参见基本概念查看和修改默认域名

  • 方式三:如果创建了域别名,也可以使用域别名登录。RAM用户的登录格式为<UserName>@<DomainAlias>,例如:username@example.com。

    说明

    <UserName>为RAM用户名称,<DomainAlias>为域别名。关于域别名的更多信息,请参见基本概念创建并验证域别名

什么是默认域名和域别名?

阿里云为每个阿里云账号分配了一个默认域名,格式为:<AccountAlias>.onaliyun.com。默认域名可作为RAM用户登录或单点登录(SSO)等场景下该阿里云账号的唯一标识符。关于如何设置默认域名,请参见查看和修改默认域名

如果您持有公网上可以解析的域名,那么您可以使用该域名替代您的默认域名,该域名称为域别名。域别名就是指默认域名的别名。关于如何设置域别名,请参见创建并验证域别名

说明

域别名必须经过域名归属验证后才能使用。验证通过后,您可以使用域别名替代默认域名,用于所有需要使用默认域名的场景。

RAM用户采购云产品需要什么权限?

  • 如需采购按量付费的云产品,一般只需给RAM用户分配该云产品的创建实例或创建资源的权限即可。

  • 如需采购包年包月的云产品,还需要额外授予支付订单的权限,即授予用户AliyunBSSOrderAccess的权限策略。

  • 某些云产品在购买时需要使用或创建其他多种资源,这种情况下需要RAM用户具备相应资源的读取或创建权限。

    以下以创建ECS实例为例,说明具体需要的权限。

    如下权限策略表示RAM用户可以从实例启动模板创建ECS实例:

    {
        "Version": "1",
        "Statement": [{
                "Action": [
                    "ecs:DescribeLaunchTemplates",
                    "ecs:CreateInstance",
                    "ecs:RunInstances",
                    "ecs:DescribeInstances",
                    "ecs:DescribeImages",
                    "ecs:DescribeSecurityGroups"
                ],
                "Resource": "*",
                "Effect": "Allow"
            },
            {
                "Action": [
                    "vpc:DescribeVpcs",
                    "vpc:DescribeVSwitches"
                ],
                "Resource": "*",
                "Effect": "Allow"
            }
        ]
    }

    如果需要RAM用户在创建ECS实例过程中使用或创建其他资源,根据资源类型不同,还需要授予下表所示的对应权限。

    操作

    权限策略

    使用快照创建ECS实例

    ecs:DescribeSnapshots

    同时创建并使用新的VPC

    • vpc:CreateVpc

    • vpc:CreateVSwitch

    同时创建并使用新的安全组

    • ecs:CreateSecurityGroup

    • ecs:AuthorizeSecurityGroup

    指定实例角色

    • ecs:DescribeInstanceRamRole

    • ram:ListRoles

    • ram:PassRole

    使用Keypair

    • ecs:CreateKeyPair

    • ecs:DescribeKeyPairs

    在专有宿主机上创建ECS实例

    ecs:AllocateDedicatedHosts

    说明

为什么RAM用户被授权后依然无访问权限?

  • 对于支持权限诊断的云服务,您可以直接查看无权限原因及对应的处理策略。具体操作,请参见如何排查无权限的访问错误?

  • 对于不支持权限诊断的云服务,您可以参照下表分析原因并解决无权限问题。

    问题原因

    解决方案

    权限策略错误。

    检查RAM用户的权限策略,保证权限策略正确且符合预期。

    自定义策略中设置了拒绝策略。

    检查RAM用户的权限策略和RAM用户加入的RAM用户组的权限策略中是否对相关资源或操作设置了"Effect": "Deny"。例如:RAM用户拥有只读访问云服务器ECS的权限AliyunECSReadOnlyAccess ,但如果同时也拥有如下权限策略,根据RAM的Deny优先原则,该RAM用户无法查看ECS资源。

    {
        "Statement": [{
            "Action": "ecs:*",
            "Effect": "Deny",
            "Resource": "*"
        }],
        "Version": "1"
    }             

    资源不支持对应的鉴权方式。

    不同云服务对不同鉴权方式的支持情况不同,请检查并使用对应支持的鉴权方式。

    受到资源目录管控策略的影响。

    如果被授权的RAM用户所属的主账号是资源目录的成员,且资源目录启用并设置了拒绝访问某资源的管控策略,则RAM用户无权访问该资源。此时,您需要联系资源目录的管理账号,修改或解绑该管控策略。具体操作如下:

    1. 确定资源目录成员所属的资源目录的管理账号:

      具体操作,请参见查看成员信息

    2. 联系管理账号,修改或解绑管控策略。

      具体操作,请参见修改自定义管控策略解绑自定义管控策略

为什么RAM用户没有权限仍然可以操作?

例如:RAM用户没有ECS的AliyunECSFullAccess或者AliyunECSReadOnlyAccess系统策略,也没有添加任何自定义策略,但可以查看实例列表。

  • 请检查RAM用户所在的用户组权限策略中是否存在允许RAM用户操作的相应权限。

  • 请确认当前已经被授权给RAM用户的其他权限策略中是否包含了相关权限。

    例如:云监控的系统权限策略为AliyunCloudMonitorFullAccess,此权限包括查看ECS实例列表的权限:"ecs:DescribeInstances",查看RDS实例列表的权限:"rds:DescribeDBInstances"和查看SLB实例列表的权限"slb:DescribeLoadBalancer"等。当AliyunCloudMonitorFullAccess被授权给RAM用户后,该RAM用户便有权限查看ECS、RDS和SLB等云产品的实例信息。

怎样授权RAM用户单独管理续费?

目前续费管理没有统一的权限策略,需要根据具体云产品自定义权限策略。一般需要授予RAM用户购买该云产品所需要的权限以及支付订单的权限。

例如:RAM用户管理ECS实例续费的权限,您需要为RAM用户授予以下自定义权限策略,还要授予AliyunBSSOrderAccess系统权限策略。

{
    "Version": "1",
    "Statement": [{
            "Action": [
                "ecs:DescribeLaunchTemplates",
                "ecs:RenewInstance",
                "ecs:DescribeInstances",
                "ecs:DescribeImages",
                "ecs:DescribeSecurityGroups"
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": [
                "vpc:DescribeVpcs",
                "vpc:DescribeVSwitches"
            ],
            "Resource": "*",
            "Effect": "Allow"
        }
    ]
}

RAM用户使用资源所产生的费用怎么计算?

  • RAM用户使用资源所产生的费用由其所属的阿里云账号承担。

  • RAM用户可以自动享有阿里云账号享有的折扣,无需特殊设置。

  • 消费额度、信用额度和独立付款方式等财务相关属性均为阿里云账号内的全局设置,影响所有RAM用户。不支持为某个RAM用户单独设置。

  • RAM用户可以被授权进行充值操作,充值后的金额归属于阿里云账号。

  • RAM用户或RAM用户组不能作为独立的财务单元出账单。

为什么RAM授权后,没有立刻在云产品中生效?

RAM采用多地域(Region)、多可用区(AZ)部署的高可用架构,数据在不同的Region间复制,并遵从最终一致性。当您在RAM中进行授权后,RAM会将授权信息同步分发到全球各个Region以及AZ中,为各个云产品提供鉴权能力。当某个AZ或者Region发生宕机后,RAM高可用容灾机制会切换到其它可用的AZ。

授权信息分发机制需要一定的时间来确保授权生效。当您进行授权变更后,需要等待一定的时间,授权才能在云产品中生效。

RAM会保证授权数据的最终一致性。