背景資訊
授權自助系統管理權限時,您需要為下表所示的阿里雲帳號分別建立RAM角色並授權:
阿里雲帳號 | RAM角色 | 權限原則 | 權限原則說明 |
管理員帳號 | AliyunROSStackGroupAdministrationRole | 自訂策略AssumeRole-AliyunROSStackGroupExecutionRole | 允許RAM角色(AliyunROSStackGroupAdministrationRole)扮演角色身份(AliyunROSStackGroupExecutionRole)。 |
目標帳號 | AliyunROSStackGroupExecutionRole | 系統策略AdministratorAccess | 允許RAM角色(AliyunROSStackGroupExecutionRole)管理目標帳號的所有阿里雲資源。 |
說明 管理員帳號和目標帳號可以為同一阿里雲帳號。關於管理員帳號和目標帳號的更多資訊,請參見概覽。
授權成功後,當您使用管理員帳號登入Resource Orchestration Service控制台建立資源棧組後,即可在該資源棧組中為目標帳號建立資源棧。
方式一:通過RAM控制台設定許可權
設定目標帳號的許可權。
使用目標帳號登入RAM控制台。
為目標帳號建立可信實體為管理員帳號的RAM角色(AliyunROSStackGroupExecutionRole)。
在左側導覽列,選擇。
在角色頁面,單擊建立角色。
在建立角色頁面,選擇可信實體類型為雲帳號。
選擇信任的雲帳號為其他雲帳號,輸入管理員帳號的ID。
單擊確定,在對話方塊中輸入角色名稱為AliyunROSStackGroupExecutionRole。
單擊確定,完成建立。
為RAM角色(AliyunROSStackGroupExecutionRole)授予AdministratorAccess許可權。
在角色頁面,單擊RAM角色(AliyunROSStackGroupExecutionRole)操作列的新增授權。
在新增授權面板,選擇資源範圍為帳號層級,授權主體會自動填入。
選擇許可權為系統策略,然後選擇AdministratorAccess。
單擊確認新增授權。
設定管理員帳號的許可權。
使用管理員帳號登入RAM控制台。
為管理員帳號建立可信實體為Resource Orchestration Service服務的RAM角色(AliyunROSStackGroupAdministrationRole)。
在左側導覽列,選擇。
在角色頁面,單擊建立角色。
在建立角色頁面,選擇可信實體類型為雲端服務。
選擇信任主體名稱為Resource Orchestration Service,單擊確定。
在對話方塊中輸入角色名稱為AliyunROSStackGroupAdministrationRole。
單擊確定,完成建立。
建立自訂權限原則(AssumeRole-AliyunROSStackGroupExecutionRole)。
在左側導覽列,選擇。
在權限原則頁面,單擊建立權限原則。
在建立權限原則頁面,單擊指令碼編輯頁簽,輸入以下策略內容,單擊確定。輸入權限原則名稱為AssumeRole-AliyunROSStackGroupExecutionRole。
該策略允許RAM角色(AliyunROSStackGroupAdministrationRole)扮演角色身份(AliyunROSStackGroupExecutionRole)。
{
"Statement": [
{
"Effect": "Allow",
"Action": "sts:AssumeRole",
"Resource": "acs:ram::*:role/AliyunROSStackGroupExecutionRole"
}
],
"Version": "1"
}
單擊確定,完成建立。
為RAM角色(AliyunROSStackGroupAdministrationRole)授予AssumeRole-AliyunROSStackGroupExecutionRole許可權。
在左側導覽列,選擇。
在角色頁面,單擊RAM角色(AliyunROSStackGroupAdministrationRole)操作列的新增授權。
在新增授權面板,選擇資源範圍為帳號層級,授權主體會自動填入。
選擇許可權為自訂策略,然後選擇AssumeRole-AliyunROSStackGroupExecutionRole。
單擊確認新增授權。
方式二:通過Resource Orchestration Service控制台設定許可權
通過Resource Orchestration Service模板為管理員帳號和目標帳號建立RAM角色,並賦予資源棧組和資源棧的操作許可權。
管理員帳號登入Resource Orchestration Service控制台 ,使用模板AliyunROSStackGroupAdministrationRole建立RAM角色並授權。
樣本模板如下。
ROSTemplateFormatVersion: '2015-09-01'
Description: Configure the AliyunROSStackGroupAdministrationRole to enable use of Alibaba Cloud ROS StackGroup.
Parameters:
AdministrationRoleName:
Type: String
Default: AliyunROSStackGroupAdministrationRole
Description:
en: Role name of administration account
zh-cn: 建立授權給管理員帳號的角色的名稱
ExecutionRoleName:
Type: String
Default: AliyunROSStackGroupExecutionRole
Description:
en: Execution role name of target account
zh-cn: 目標帳號執行角色名稱
Metadata:
ALIYUN::ROS::Interface:
ParameterGroups:
- Parameters:
- AdministrationRoleName
- ExecutionRoleName
Label:
default:
en: RAM
zh-cn: 帳號許可權
TemplateTags:
- acs:example:安全:建立StackGroup管理員帳號許可權
Resources:
AliyunROSStackGroupAdministrationRole:
Type: ALIYUN::RAM::Role
Properties:
RoleName:
Ref: AdministrationRoleName
AssumeRolePolicyDocument:
Version: 1
Statement:
- Action: sts:AssumeRole
Effect: Allow
Principal:
Service:
- ros.aliyuncs.com
Policies:
- PolicyName:
Fn::Sub:
- AssumeRole-${ExecutionRoleName}
- ExecutionRoleName:
Ref: ExecutionRoleName
PolicyDocument:
Statement:
- Effect: Allow
Action:
- sts:AssumeRole
Resource:
- Fn::Sub: acs:ram::*:role/${ExecutionRoleName}
Version: '1'
Outputs:
AdministrationRoleName:
Value:
Fn::GetAtt:
- AliyunROSStackGroupAdministrationRole
- RoleName
目標帳號登入Resource Orchestration Service控制台,使用模板AliyunROSStackGroupExecutionRole建立RAM角色並授權。
樣本模板如下。
ROSTemplateFormatVersion: '2015-09-01'
Description: Configure the AliyunROSStackGroupExecutionRole to enable use of your account as a target account in Alibaba Cloud ROS StackGroup.
Conditions:
CurrentAccount:
Fn::Equals:
- Ref: AdministrationAccountId
- ''
Parameters:
ExecutionRoleName:
Type: String
Default: AliyunROSStackGroupExecutionRole
Description:
en: Execution role name of target account
zh-cn: 為目標帳號建立執行角色的名稱
AdministrationAccountId:
Type: String
Description:
zh-cn: 管理員主帳號ID,不填則授權給當前帳號
en: Administration account ID. If not, authorize the current account
Default: ''
Metadata:
ALIYUN::ROS::Interface:
ParameterGroups:
- Parameters:
- ExecutionRoleName
- AdministrationAccountId
Label:
default: RAM
TemplateTags:
- acs:example:安全:建立StackGroup目標帳號許可權
Resources:
AliyunROSStackGroupExecutionRole:
Type: ALIYUN::RAM::Role
Properties:
RoleName:
Ref: ExecutionRoleName
AssumeRolePolicyDocument:
Version: 1
Statement:
- Action: sts:AssumeRole
Effect: Allow
Principal:
RAM:
- Fn::Join:
- ''
- - 'acs:ram::'
- Fn::If:
- CurrentAccount
- Ref: ALIYUN::TenantId
- Ref: AdministrationAccountId
- ':root'
AttachPolicy:
Type: ALIYUN::RAM::AttachPolicyToRole
Properties:
PolicyName: AdministratorAccess
PolicyType: System
RoleName:
Fn::GetAtt:
- AliyunROSStackGroupExecutionRole
- RoleName
Outputs:
ExecutionRoleName:
Value:
Fn::GetAtt:
- AliyunROSStackGroupExecutionRole
- RoleName