本文介绍了RAM用户常见问题,包括登录、费用和权限等问题。
RAM用户登录地址和登录方式是什么?
RAM用户登录方式有以下几种:
方式一:使用默认域名登录。RAM用户的登录格式为
<UserName>@<AccountAlias>.onaliyun.com
,例如:username@company-alias.onaliyun.com。方式二:使用账号别名登录。RAM用户的登录格式为
<UserName>@<AccountAlias>
,例如:username@company-alias。方式三:如果创建了域别名,也可以使用域别名登录。RAM用户的登录格式为
<UserName>@<DomainAlias>
,例如:username@example.com。
什么是默认域名和域别名?
阿里云为每个阿里云账号分配了一个默认域名,格式为:<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用户无权访问该资源。此时,您需要联系资源目录的管理账号,修改或解绑该管控策略。具体操作如下:
为什么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采用多地域(Region)、多可用区(AZ)部署的高可用架构,数据在不同的Region间复制,并遵从最终一致性。当您在RAM中进行授权后,RAM会将授权信息同步分发到全球各个Region以及AZ中,为各个云产品提供鉴权能力。当某个AZ或者Region发生宕机后,RAM高可用容灾机制会切换到其它可用的AZ。
授权信息分发机制需要一定的时间来确保授权生效。当您进行授权变更后,需要等待一定的时间,授权才能在云产品中生效。
RAM会保证授权数据的最终一致性。