阿里云OSS的資源默認都是私有的,如果您希望您的合作伙伴可以訪問您的OSS資源,可以通過RAM角色實現跨賬號訪問。
背景信息
某公司A希望其合作公司B可以訪問自己名下OSS內的數據,但又不方便開放RAM賬號給公司B。此時,公司A可創建一個RAM角色,并授權RAM角色OSS的訪問權限。公司B可用RAM用戶扮演這個RAM角色,實現跨賬號訪問的目的。
步驟1:公司A創建RAM角色并授予OSS訪問權限
公司A需要先創建一個擁有OSS訪問權限的RAM角色,提供給公司B的RAM用戶扮演。
創建RAM角色。
使用公司A賬號登錄RAM控制臺。
在左側導航欄,選擇 。
在角色頁面,單擊創建角色。
在創建角色面板,選擇可信實體類型為阿里云賬號,然后單擊下一步。
設置角色信息。
設置角色名稱,本示例角色名稱設置為
admin-oss
。可選:輸入備注。
信任的云賬號選擇其他云賬號,然后輸入公司B的阿里云賬號UID(
17464958576******
)。
單擊完成。
說明以上RAM角色創建后,該RAM角色默認可以被可信阿里云賬號(公司B賬號UID)下的所有RAM用戶、RAM角色扮演。如果您希望創建的RAM角色只能被可信阿里云賬號下的指定RAM用戶或者RAM角色扮演,則需要對已創建RAM角色的信任策略進行手動修改。更多信息,請參見修改RAM角色的可信實體為阿里云賬號。
為RAM角色授權。
在角色頁面,單擊目標角色
admin-oss
右側的新增授權。在新增授權面板,選擇AliyunOSSReadOnlyAccess權限策略。
重要AliyunOSSReadOnlyAccess為只讀訪問OSS所有資源的權限。如果您僅希望授權其他用戶訪問部分Bucket或者Bucket的部分目錄,您可以通過創建自定義策略。關于自定義策略的更多信息,請參見RAM Policy。
單擊確認新增授權。
步驟2:公司B創建RAM用戶并授予允許扮演RAM角色的權限
公司B需要創建一個可以扮演角色的RAM用戶,用于扮演公司A創建的RAM角色。
創建RAM用戶。
使用公司B賬號登錄RAM控制臺。
在左側導航欄,選擇 。
在用戶頁面,單擊創建用戶。
在創建用戶頁面的用戶賬號信息區域,輸入登錄名稱和顯示名稱。
在訪問方式區域,選擇控制臺訪問,并根據需要設置控制臺登錄密碼、重置密碼策略和多因素認證策略。
說明自定義登錄密碼時,密碼必須滿足密碼復雜度規則。關于設置密碼復雜度規則的更多信息,請參見設置RAM用戶密碼強度。
單擊確定。
為RAM用戶授權。
在用戶頁面,找到目標RAM用戶右側的添加權限。
在添加權限頁面,選擇策略為系統策略,然后單擊AliyunSTSAssumeRoleAccess策略。
單擊確認新增授權。
步驟3:公司B的RAM用戶登錄控制臺并扮演公司A的RAM角色
公司B需使用剛創建的RAM用戶登錄阿里云控制臺,并切換身份為公司A創建的RAM角色。
公司B使用RAM用戶登錄阿里云控制臺。具體操作,請參見RAM用戶登錄阿里云控制臺。
鼠標移至右上角的頭像上,單擊切換身份。
在角色切換頁面,輸入RAM角色信息,然后單擊提交。
RAM角色信息如下:
企業別名/默認域名/主賬號UID:填寫公司A的企業別名、默認域名或者主賬號UID。更多信息,請參見基本概念。
本示例以默認域名為例,輸入默認域名為
1178810717******.onaliyun.com
,1178810717******
為公司A阿里云賬號的UID。角色名:輸入公司A創建的RAM角色
admin-oss
。
打開OSS管理控制臺即可管理公司A的OSS資源。
更多參考
您也可以通過Bucket Policy實現以上需求。具體操作,請參見教程示例:基于Bucket Policy實現跨賬號訪問OSS。