本文為您介紹RAM使用者如何通過控制台和API扮演可信實體為阿里雲帳號的RAM角色。
前提條件
扮演RAM角色前,您需要建立RAM使用者並授權。
建立RAM使用者。
具體操作,請參見建立RAM使用者。
為RAM使用者授予角色扮演的許可權。
允許該RAM使用者扮演所有RAM角色:為RAM使用者添加系統策略
AliyunSTSAssumeRoleAccess
。允許該RAM使用者扮演指定RAM角色:為RAM使用者添加自訂策略。更多資訊,請參見能否指定RAM使用者具體可以扮演哪個RAM角色?。
具體操作,請參見為RAM使用者授權。
通過控制台扮演RAM角色
RAM使用者或角色SSO登入後,可以通過切換身份的方式扮演RAM角色。
使用RAM使用者登入RAM控制台。
將滑鼠移至上方在右上方頭像的位置,單擊切換身份。
在角色切換頁面,輸入RAM角色資訊。
輸入RAM角色對應的企業別名(帳號別名)、預設網域名稱或歸屬的阿里雲帳號(主帳號)ID,三者取其一即可。更多資訊,請參見查看和修改預設網域名稱。
輸入RAM角色名稱。更多資訊,請參見查看RAM角色。
單擊提交。
切換成功後,RAM使用者將以RAM角色身份登入控制台,此時RAM使用者只能執行該RAM角色身份被授權的所有操作。
在控制台右上方頭像位置將會顯示使用者的登入身份(即登入時使用的身份,可能是RAM使用者,也可能是RAM角色)和當前身份(即切換角色後的身份)。
在不同情況下,使用者登入身份和當前身份的取值如下表所示:
登入方式
登入身份
當前身份
RAM使用者
顯示格式為<當前登入的RAM使用者名稱稱>。
顯示格式為<RoleName>/<RoleSessionName>。
RoleName:當前切換的角色名稱。
RoleSessionName:當前登入的RAM使用者名稱稱,同登入身份。
角色SSO
RAM角色第一次登入(指通過角色SSO直接登入)後,只顯示當前身份,不顯示登入身份。
RAM角色登入(指通過角色SSO直接登入)後再次切換身份後,登入身份顯示角色SSO的身份資訊,顯示格式為<RoleName>/<RoleSessionName>。
RoleName:角色SSO登入時的角色名稱。
RoleSessionName:角色SSO登入時的RoleSessionName。
例如:外部IdP中的使用者tom@example.local通過RAM角色test-saml-role1登入到控制台,然後再次使用角色alice-testrole切換身份,切換後顯示登入身份為test-saml-role1/tom@example.local。
顯示格式為<RoleName>/<RoleSessionName>。
RoleName:當前切換的角色名稱。
RoleSessionName:角色SSO登入時的RoleSessionName。
例如:外部IdP中的使用者tom@example.local通過RAM角色test-saml-role1登入到控制台,這時當前身份為test-saml-role1/tom@example.local,然後再次使用角色alice-testrole切換身份,此次當前身份為alice-testrole/tom@example.local,其中RoleSessionName保持不變。
角色登入工作階段有效期間將以角色最大會話時間與登入工作階段的到期時間中設定的較小值為準。更多資訊,請參見設定RAM角色最大會話時間、管理RAM使用者安全設定。
通過調用API扮演RAM角色
有許可權的RAM使用者可以使用其存取金鑰(AccessKey)調用AssumeRole - 擷取扮演角色的臨時身份憑證介面,以擷取某個RAM角色的臨時安全性權杖(STS Token),從而使用STS Token訪問阿里雲。
如果您通過扮演角色擷取的STS Token發生泄露,您可以回收所有已經頒發的STS Token。具體操作,請參見STS Token發生泄露時如何處理?。