消息服务MNS支持阿里云账号(主账号)给RAM用户(子账号)授予资源级别的权限,避免因暴露阿里云账号(主账号)密钥造成的安全风险。仅限有权限的RAM用户在消息服务MNS的控制台上管理资源,以及SDK/API发布与订阅消息。
应用场景
企业A购买了消息服务MNS服务,企业A的员工需要操作这些服务所涉及的资源,例如队列、主题等资源。由于每个员工的工作职责不一样,需要的权限也不一样。
具体场景说明如下:
- 出于安全或信任的考虑,企业A不希望将云账号密钥直接透露给员工,而希望能给员工创建相应的用户账号。
- 用户账号只能在授权的前提下操作资源,不需要对用户账号单独计量计费,所有开销都计入企业A云账号名下。
- 企业A随时可以撤销用户账号的权限,也可以随时删除其创建的用户账号。
此种场景下,A的云账号可以将需要员工进行操作的资源进行细粒度的权限分隔。
方式一:在用户页面为RAM用户授权
- 使用阿里云账号登录RAM控制台。
- 在左侧导航栏,选择 。
- 在用户页面,单击目标RAM用户操作列的添加权限。
- 在添加权限面板,为RAM用户添加权限。
- 单击确定。
- 单击完成。
方式二:在授权页面为RAM用户授权
- 使用阿里云账号登录RAM控制台。
- 在左侧导航栏,选择 。
- 在授权页面,单击新增授权。
- 在新增授权页面,为RAM用户添加权限。
- 单击确定。
- 单击完成。
后续步骤
- 登录控制台。
- 在浏览器中打开RAM用户登录入口。
- 在RAM用户登录页面上,输入RAM用户登录名称,单击下一步,并输入RAM用户密码,然后单击登录。
说明 RAM用户登录名称的格式为
<$username>@<$AccountAlias>
或<$username>@<$AccountAlias>.onaliyun.com
。<$AccountAlias>
为账号别名,如果没有设置账号别名,则默认值为阿里云账号(主账号)的ID。 - 在阿里云控制台页面上单击有权限的产品,即可访问控制台。
- 使用RAM用户的AccessKey调用API。
在代码中使用RAM用户的AccessKey ID和AccessKey Secret即可。