借助RAM角色實現(xiàn)跨云賬號訪問資源
使用企業(yè)A的阿里云賬號創(chuàng)建RAM角色并為該角色授權(quán),并將該角色賦予企業(yè)B,即可實現(xiàn)使用企業(yè)B的阿里云賬號或其RAM用戶訪問企業(yè)A的阿里云資源的目的。
背景信息
假設(shè)企業(yè)A購買了多種云資源來開展業(yè)務(wù),并需要授權(quán)企業(yè)B代為開展部分業(yè)務(wù),則可以利用RAM角色來實現(xiàn)此目的。RAM角色是一種虛擬用戶,沒有確定的身份認(rèn)證密鑰,需要被一個受信的實體用戶扮演才能正常使用。為了滿足企業(yè)A的需求,可以按照以下流程操作:
- 企業(yè)A創(chuàng)建RAM角色
- 企業(yè)A為該RAM角色添加權(quán)限
- 企業(yè)B創(chuàng)建RAM用戶
- 企業(yè)B為RAM用戶添加AliyunSTSAssumeRoleAccess權(quán)限
- 企業(yè)B的RAM用戶通過控制臺或API訪問企業(yè)A的資源
ARMS提供的系統(tǒng)權(quán)限策略包括完整權(quán)限和只讀權(quán)限,您可以根據(jù)需求選擇為RAM用戶添加對應(yīng)的權(quán)限:
AliyunARMSFullAccess:ARMS的完整權(quán)限,添加該權(quán)限后,RAM用戶擁有對各子產(chǎn)品實例的查看、編輯、刪除等所有操作權(quán)限。
說明添加AliyunARMSFullAccess權(quán)限后無需再添加AliyunARMSReadOnlyAccess權(quán)限。
AliyunARMSReadOnlyAccess:ARMS的只讀權(quán)限,添加該權(quán)限后,RAM用戶只支持查看各子產(chǎn)品的實例信息,不支持修改、刪除等操作。
重要為了實現(xiàn)對ARMS所有功能的只讀權(quán)限,除了添加AliyunARMSReadOnlyAccess權(quán)限策略外,還需要為特定的資源組配置ReadTraceApp權(quán)限,否則ARMS將無法展示資源組鑒權(quán)下的應(yīng)用列表。
步驟一:企業(yè)A創(chuàng)建RAM角色
首先需要使用企業(yè)A的阿里云賬號登錄RAM控制臺并創(chuàng)建RAM角色。
操作步驟
使用RAM管理員登錄RAM控制臺。
在左側(cè)導(dǎo)航欄,選擇 。
在角色頁面,單擊創(chuàng)建角色。
在創(chuàng)建角色頁面,選擇可信實體類型為阿里云賬號,然后單擊下一步。
設(shè)置角色信息。
輸入角色名稱。
輸入備注。
選擇信任的云賬號。
當(dāng)前云賬號:當(dāng)您允許當(dāng)前阿里云賬號下的所有RAM用戶扮演該RAM角色時,您可以選擇當(dāng)前云賬號。
其他云賬號:當(dāng)您允許其他阿里云賬號下的所有RAM用戶扮演該RAM角色時,您可以選擇其他云賬號,然后輸入其他阿里云賬號(主賬號)ID。該項主要針對跨阿里云賬號的資源授權(quán)訪問場景,相關(guān)教程,請參見跨阿里云賬號的資源授權(quán)。
您可以在安全設(shè)置頁面查看阿里云賬號(主賬號)ID。
重要如果您僅允許指定的RAM用戶扮演該RAM角色,而不是阿里云賬號(主賬號)下的所有RAM用戶,您可以采取以下兩種方式:
修改RAM角色的信任策略。具體操作,請參見示例一:修改RAM角色的可信實體為阿里云賬號。
修改RAM用戶的角色扮演權(quán)限策略。具體操作,請參見能否指定RAM用戶具體可以扮演哪個RAM角色?。
單擊完成。
單擊關(guān)閉。
步驟二:企業(yè)A為該RAM角色添加權(quán)限
新創(chuàng)建的角色沒有任何權(quán)限,因此企業(yè)A必須為該角色添加權(quán)限。
使用RAM管理員登錄RAM控制臺。
在左側(cè)導(dǎo)航欄,選擇 。
在角色頁面,單擊目標(biāo)RAM角色操作列的新增授權(quán)。
您也可以選中多個RAM角色,單擊角色列表下方的新增授權(quán),為RAM角色批量授權(quán)。
在新增授權(quán)面板,為RAM角色授權(quán)。
選擇資源范圍。
賬號級別:權(quán)限在當(dāng)前阿里云賬號內(nèi)生效。
資源組級別:權(quán)限在指定的資源組內(nèi)生效。
說明指定資源組授權(quán)生效的前提是該云服務(wù)及資源類型已支持資源組,詳情請參見支持資源組的云服務(wù)。
選擇授權(quán)主體。
授權(quán)主體即需要添加權(quán)限的RAM角色。系統(tǒng)會自動選擇當(dāng)前的RAM角色。
選擇權(quán)限策略。
權(quán)限策略是一組訪問權(quán)限的集合。支持批量選中多條權(quán)限策略。
系統(tǒng)策略:由阿里云創(chuàng)建,策略的版本更新由阿里云維護,用戶只能使用不能修改。更多信息,請參見支持RAM的云服務(wù)。
說明系統(tǒng)會自動標(biāo)識出高風(fēng)險系統(tǒng)策略(例如:AdministratorAccess、AliyunRAMFullAccess等),授權(quán)時,盡量避免授予不必要的高風(fēng)險權(quán)限策略。
自定義策略:由用戶管理,策略的版本更新由用戶維護。用戶可以自主創(chuàng)建、更新和刪除自定義策略。更多信息,請參見創(chuàng)建自定義權(quán)限策略。
單擊確認(rèn)新增授權(quán)。
單擊關(guān)閉。
步驟三:企業(yè)B創(chuàng)建RAM用戶
接下來要使用企業(yè)B的阿里云賬號登錄RAM控制臺并創(chuàng)建RAM用戶。
操作步驟
使用阿里云賬號(主賬號)或RAM管理員登錄RAM控制臺。
在左側(cè)導(dǎo)航欄,選擇 。
在用戶頁面,單擊創(chuàng)建用戶。
在創(chuàng)建用戶頁面的用戶賬號信息區(qū)域,設(shè)置用戶基本信息。
登錄名稱:可包含英文字母、數(shù)字、半角句號(.)、短劃線(-)和下劃線(_),最多64個字符。
顯示名稱:最多包含128個字符或漢字。
標(biāo)簽:單擊,然后輸入標(biāo)簽鍵和標(biāo)簽值。為RAM用戶綁定標(biāo)簽,便于后續(xù)基于標(biāo)簽的用戶管理。
說明單擊添加用戶,可以批量創(chuàng)建多個RAM用戶。
在訪問方式區(qū)域,選擇訪問方式,然后設(shè)置對應(yīng)參數(shù)。
為了賬號安全,建議您只選擇以下訪問方式中的一種,將人員用戶和應(yīng)用程序用戶分離,避免混用。
控制臺訪問
如果RAM用戶代表人員,建議啟用控制臺訪問,使用用戶名和登錄密碼訪問阿里云。您需要設(shè)置以下參數(shù):
控制臺登錄密碼:選擇自動生成密碼或者自定義密碼。自定義登錄密碼時,密碼必須滿足密碼復(fù)雜度規(guī)則。更多信息,請參見設(shè)置RAM用戶密碼強度。
密碼重置策略:選擇RAM用戶在下次登錄時是否需要重置密碼。
多因素認(rèn)證(MFA)策略:選擇是否為當(dāng)前RAM用戶啟用MFA。啟用MFA后,還需要綁定MFA設(shè)備。更多信息,請參見為RAM用戶綁定MFA設(shè)備。
使用永久AccessKey訪問
如果RAM用戶代表應(yīng)用程序,您可以使用永久訪問密鑰(AccessKey)訪問阿里云。啟用后,系統(tǒng)會自動為RAM用戶生成一個AccessKey ID和AccessKey Secret。更多信息,請參見創(chuàng)建AccessKey。
重要RAM用戶的AccessKey Secret只在創(chuàng)建時顯示,不支持查看,請妥善保管。
訪問密鑰(AccessKey)是一種長期有效的程序訪問憑證。AccessKey泄露會威脅該賬號下所有資源的安全。建議優(yōu)先采用STS Token臨時憑證方案,降低憑證泄露的風(fēng)險。更多信息,請參見使用訪問憑據(jù)訪問阿里云OpenAPI最佳實踐。
單擊確定。
根據(jù)界面提示,完成安全驗證。
步驟四:企業(yè)B為RAM用戶添加權(quán)限
企業(yè)B必須為其阿里云賬號下的RAM用戶添加AliyunSTSAssumeRoleAccess權(quán)限,RAM用戶才能扮演企業(yè)A創(chuàng)建的RAM角色。
使用RAM管理員登錄RAM控制臺。
在左側(cè)導(dǎo)航欄,選擇 。
在用戶頁面,單擊目標(biāo)RAM用戶操作列的添加權(quán)限。
您也可以選中多個RAM用戶,單擊用戶列表下方的添加權(quán)限,為RAM用戶批量授權(quán)。
在新增授權(quán)面板,為RAM用戶添加權(quán)限。
選擇資源范圍。
賬號級別:權(quán)限在當(dāng)前阿里云賬號內(nèi)生效。
資源組級別:權(quán)限在指定的資源組內(nèi)生效。
重要指定資源組授權(quán)生效的前提是該云服務(wù)及資源類型已支持資源組,詳情請參見支持資源組的云服務(wù)。資源組授權(quán)示例,請參見使用資源組限制RAM用戶管理指定的ECS實例。
選擇授權(quán)主體。
授權(quán)主體即需要添加權(quán)限的RAM用戶。系統(tǒng)會自動選擇當(dāng)前的RAM用戶。
選擇權(quán)限策略。
權(quán)限策略是一組訪問權(quán)限的集合,分為以下兩種。支持批量選中多條權(quán)限策略。
系統(tǒng)策略:由阿里云創(chuàng)建,策略的版本更新由阿里云維護,用戶只能使用不能修改。更多信息,請參見支持RAM的云服務(wù)。
說明系統(tǒng)會自動標(biāo)識出高風(fēng)險系統(tǒng)策略(例如:AdministratorAccess、AliyunRAMFullAccess等),授權(quán)時,盡量避免授予不必要的高風(fēng)險權(quán)限策略。
自定義策略:由用戶管理,策略的版本更新由用戶維護。用戶可以自主創(chuàng)建、更新和刪除自定義策略。更多信息,請參見創(chuàng)建自定義權(quán)限策略。
單擊確認(rèn)新增授權(quán)。
單擊關(guān)閉。
后續(xù)步驟
完成上述操作后,企業(yè)B的RAM用戶即可按照以下步驟登錄控制臺訪問企業(yè)A的云資源或調(diào)用API。
登錄控制臺訪問企業(yè)A的云資源
RAM用戶訪問阿里云控制臺。
在RAM用戶名密碼登錄頁簽,輸入RAM用戶名,單擊下一步。
方式一:使用默認(rèn)域名登錄。RAM用戶的登錄格式為
<UserName>@<AccountAlias>.onaliyun.com
,例如:username@company-alias.onaliyun.com。說明<UserName>
為RAM用戶名稱,<AccountAlias>.onaliyun.com
為默認(rèn)域名。關(guān)于默認(rèn)域名的更多信息,請參見基本概念和查看和修改默認(rèn)域名。方式二:使用賬號別名登錄。RAM用戶的登錄格式為
<UserName>@<AccountAlias>
,例如:username@company-alias。說明<UserName>
為RAM用戶名稱,<AccountAlias>
為賬號別名。關(guān)于賬號別名的更多信息,請參見基本概念和查看和修改默認(rèn)域名。方式三:如果創(chuàng)建了域別名,也可以使用域別名登錄。RAM用戶的登錄格式為
<UserName>@<DomainAlias>
,例如:username@example.com。說明<UserName>
為RAM用戶名稱,<DomainAlias>
為域別名。關(guān)于域別名的更多信息,請參見基本概念和創(chuàng)建并驗證域別名。
輸入RAM用戶的登錄密碼,然后單擊登錄。
(可選)如果您開啟了多因素認(rèn)證(MFA),還需要進行MFA驗證。
更多信息,請參見多因素認(rèn)證(MFA)和為RAM用戶綁定MFA設(shè)備。
使用企業(yè)B的RAM用戶通過API訪問企業(yè)A的云資源
要使用企業(yè)B的RAM用戶通過API訪問企業(yè)A的云資源,必須在代碼中提供RAM用戶的AccessKeyId、AccessKeySecret和SecurityToken(臨時安全令牌)。使用STS獲取臨時安全令牌的方法,請參見AssumeRole - 獲取扮演角色的臨時身份憑證。