使用企业A的阿里云账号(主账号)创建RAM角色并为该角色授权,并将该角色赋予企业B,即可实现使用企业B的主账号或其RAM用户(子账号)访问企业A的阿里云资源的目的。
背景信息
企业A购买了事件总线EventBridge 服务来开展业务,并希望将部分业务授权给企业B。
需求说明:
A希望能专注于业务系统,仅作为资源Owner,而事件发布等任务委托或授权给企业B。
企业A希望当企业B的员工加入或离职时,无需做任何权限变更。企业B可以进一步将A的资源访问权限分配给B的RAM用户(员工或应用),并可以精细控制其员工或应用对资源的访问和操作权限。
企业A希望如果双方合同终止,企业A随时可以撤销对企业B的授权。
操作步骤
首先需要使用企业A的阿里云账号(主账号)登录RAM控制台并为企业B的云账号创建RAM角色。
具体步骤参见创建可信实体为阿里云账号的RAM角色。
可选:企业A为刚创建的RAM角色创建自定义策略。
新创建的角色没有任何权限,因此企业A必须为该角色添加权限。可添加系统权限策略或自定义权限策略。
具体步骤参见管理RAM角色的权限。
使用企业B的阿里云账号(主账号)登录RAM控制台并创建RAM用户。
具体步骤参见为企业B创建RAM用户。
企业B为RAM用户添加AliyunSTSAssumeRoleAccess权限。
具体步骤参见管理RAM用户的权限。
企业B必须为其主账号下的RAM用户添加AliyunSTSAssumeRoleAccess权限,RAM用户才能扮演企业A创建的RAM角色。
企业B的RAM用户通过控制台或API访问企业A的资源。
具体步骤参见本文的后续步骤。
更多信息
后续步骤
完成上述操作后,企业B的RAM用户即可按照以下步骤登录控制台访问企业A的云资源或调用API。
登录控制台访问企业A的云资源
在浏览器中打开RAM用户登录入口。
在RAM用户登录页面上,输入RAM用户登录名称,单击下一步,并输入RAM用户密码,然后单击登录。
说明RAM用户登录名称的格式为
<$username>@<$AccountAlias>或<$username>@<$AccountAlias>.onaliyun.com。<$AccountAlias>为账号别名,如果没有设置账号别名,则默认值为阿里云账号(主账号)的ID。在阿里云控制台页面上,将鼠标指针移到右上角头像,并在浮层中单击切换身份。
在阿里云-角色切换页面,输入企业A的企业别名或默认域名,以及角色名,然后单击切换。
对企业A的阿里云资源执行操作。
使用企业B的RAM用户通过API访问企业A的云资源
要使用企业B的RAM用户通过API访问企业A的云资源,必须在代码中提供RAM用户的AccessKeyId、AccessKeySecret和SecurityToken(临时安全令牌)。使用STS获取临时安全令牌的方法参见AssumeRole。