當一個企業希望將部分業務授權給另一個企業時,可以使用RAM角色進行跨阿里雲帳號的資源授權及訪問。
應用情境
企業A購買了多種阿里雲資源來開展業務,例如:ECS執行個體、RDS執行個體、SLB執行個體和OSS儲存空間等。企業A希望:
授權或委派企業B對企業A的資源進行代營運、代管理等。
當企業B的員工加入或離職時,無需做任何許可權變更。企業B可以將企業A的資源存取權限分配給企業B的員工或應用,並可以精細控制其員工或應用對資源的存取權限。
如果雙方合約終止,企業A可以隨時撤銷對企業B的授權。
解決方案
假設企業A擁有一個阿里雲帳號A(A@company-a.onaliyun.com),企業B擁有一個阿里雲帳號B(B@company-b.onaliyun.com),您可以通過RAM角色實現阿里雲帳號B訪問阿里雲帳號A的資源。
在阿里雲帳號A中建立一個RAM角色,可信實體為阿里雲帳號B內所有RAM身份,並為RAM角色授予合適的資源存取權限(例如:管理ECS執行個體的許可權)。在阿里雲帳號B中建立一個RAM使用者,允許該RAM使用者通過角色扮演的方式訪問阿里雲帳號A的資源。阿里雲帳號A只需要定義允許訪問的可信實體和RAM角色的資源存取權限,阿里雲帳號B自主管控允許扮演該角色的RAM使用者。
具體操作,請參見跨阿里雲帳號授權。
如果企業A與企業B的合作終止,阿里雲帳號A只需要撤銷阿里雲帳號B對RAM角色的使用。撤銷後,阿里雲帳號B下的所有RAM使用者將無法扮演該RAM角色訪問阿里雲帳號A的資源。
具體操作,請參見撤銷跨阿里雲帳號授權 。
跨阿里雲帳號授權
使用阿里雲帳號A建立可信實體為阿里雲帳號B的RAM角色。
使用阿里雲帳號A登入RAM控制台。
在角色頁面,建立一個RAM角色。
信任主體類型選擇雲帳號,信任主體名稱選擇其他雲帳號,輸入阿里雲帳號B的ID。更多資訊,請參見建立可信實體為阿里雲帳號的RAM角色、查看阿里雲帳號ID。

使用阿里雲帳號A為RAM角色授予資源存取權限。
在角色頁面或授權頁面,為RAM角色添加系統策略或自訂策略。您需要遵循最小化授權原則,為RAM角色添加剛剛好的許可權。例如:您想讓該RAM角色管理ECS執行個體,就可以添加系統策略AliyunECSFullAccess。具體操作,請參見為RAM角色授權。
使用阿里雲帳號B建立RAM使用者。
使用阿里雲帳號B為RAM使用者授予角色扮演的許可權。
在使用者頁面或授權頁面,為RAM使用者添加系統策略AliyunSTSAssumeRoleAccess。具體操作,請參見為RAM使用者授權。
使用阿里雲帳號B中的RAM使用者,通過角色扮演的方式,訪問阿里雲帳號A中有許可權的資源。
角色扮演有以下兩種方式,您可以任選其一:
RAM使用者使用使用者名稱和密碼登入控制台後,通過切換身份的方式,扮演RAM角色。
RAM使用者使用存取金鑰(AccessKey)調用AssumeRole,擷取RAM角色的臨時安全性權杖(STS Token)。
撤銷跨阿里雲帳號授權
阿里雲帳號A可以撤銷阿里雲帳號B對RAM角色使用許可權。以下兩種方法,您可以任選其一:
修改RAM角色信任策略
使用阿里雲帳號A登入RAM控制台。
在角色頁面,修改角色的信任策略。
修改
Principal欄位,取消對阿里雲帳號B的信任。例如:您可以刪除該欄位中阿里雲帳號B的UID。具體操作,請參見修改RAM角色的信任策略。
刪除RAM角色