創建MRS自定義策略
更新時間 2023-12-27 12:18:11
最近更新時間: 2023-12-27 12:18:11
分享文章
本章節主要介紹如何創建MRS自定義策略。
如果系統預置的MRS權限,不滿足您的授權要求,可以創建自定義策略。
目前支持以下兩種方式創建自定義策略:
- 可視化視圖創建自定義策略:無需了解策略語法,按可視化視圖導航欄選擇云服務、操作、資源、條件等策略內容,可自動生成策略。
- JSON視圖創建自定義策略:可以在選擇策略模板后,根據具體需求編輯策略內容;也可以直接在編輯框內編寫JSON格式的策略內容。
本章為您介紹常用的MRS自定義策略樣例。
MRS自定義策略樣例
- 示例1:授權用戶僅有創建MRS集群的權限。
{
"Version": "1.1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"mrs:cluster:create",
"ecs:*:*",
"bms:*:*",
"evs:*:*",
"vpc:*:*",
"smn:*:*"
]
}
]
}
示例2:授權用戶調整MRS集群。
{
"Version": "1.1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"mrs:cluster:resize"
]
}
]
}
示例3:授權用戶創建集群、創建并執行作業、刪除單個作業,但不允許用戶刪除集群的權限。
{
"Version": "1.1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"mrs:cluster:create",
"mrs:job:submit",
"mrs:job:delete"
]
},
{
"Effect": "Deny",
"Action": [
"mrs:cluster:delete"
]
}
]
}
示例4:授權用戶最小權限,創建ECS規格的集群。
說明
創建集群時如果使用秘鑰對,增加權限:ecs:serverKeypairs:get和ecs:serverKeypairs:list
創集群時使用數據盤加密,增加權限:kms:cmk:list
創建集群時開啟告警功能,增加權限:mrs:alarm:subscribe
創建集群時使用外置數據源,增加權限:rds:instance:list
{
"Version": "1.1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"mrs:cluster:create"
]
},
{
"Effect": "Allow",
"Action": [
"ecs:cloudServers:updateMetadata",
"ecs:cloudServerFlavors:get",
"ecs:cloudServerQuotas:get",
"ecs:servers:list",
"ecs:servers:get",
"ecs:cloudServers:delete",
"ecs:cloudServers:list",
"ecs:serverInterfaces:get",
"ecs:serverGroups:manage",
"ecs:servers:setMetadata",
"ecs:cloudServers:get",
"ecs:cloudServers:create"
]
},
{
"Effect": "Allow",
"Action": [
"vpc:securityGroups:create",
"vpc:securityGroupRules:delete",
"vpc:vpcs:create",
"vpc:ports:create",
"vpc:securityGroups:get",
"vpc:subnets:create",
"vpc:privateIps:delete",
"vpc:quotas:list",
"vpc:networks:get",
"vpc:publicIps:list",
"vpc:securityGroups:delete",
"vpc:securityGroupRules:create",
"vpc:privateIps:create",
"vpc:ports:get",
"vpc:ports:delete",
"vpc:publicIps:update",
"vpc:subnets:get",
"vpc:publicIps:get",
"vpc:ports:update",
"vpc:vpcs:list"
]
},
{
"Effect": "Allow",
"Action": [
"evs:quotas:get",
"evs:types:get"
]
},
{
"Effect": "Allow",
"Action": [
"bms:serverFlavors:get"
]
}
]
}
示例5:授權用戶最小權限,創建BMS規格的集群。

說明
創建集群時如果使用秘鑰對,增加權限:ecs:serverKeypairs:get和ecs:serverKeypairs:list
創集群時使用數據盤加密,增加權限:kms:cmk:list
創建集群時開啟告警功能,增加權限:mrs:alarm:subscribe
創建集群時使用外置數據源,增加權限:rds:instance:list
{
"Version": "1.1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"mrs:cluster:create"
]
},
{
"Effect": "Allow",
"Action": [
"ecs:servers:list",
"ecs:servers:get",
"ecs:cloudServers:delete",
"ecs:serverInterfaces:get",
"ecs:serverGroups:manage",
"ecs:servers:setMetadata",
"ecs:cloudServers:create",
"ecs:cloudServerFlavors:get",
"ecs:cloudServerQuotas:get"
]
},
{
"Effect": "Allow",
"Action": [
"vpc:securityGroups:create",
"vpc:securityGroupRules:delete",
"vpc:vpcs:create",
"vpc:ports:create",
"vpc:securityGroups:get",
"vpc:subnets:create",
"vpc:privateIps:delete",
"vpc:quotas:list",
"vpc:networks:get",
"vpc:publicIps:list",
"vpc:securityGroups:delete",
"vpc:securityGroupRules:create",
"vpc:privateIps:create",
"vpc:ports:get",
"vpc:ports:delete",
"vpc:publicIps:update",
"vpc:subnets:get",
"vpc:publicIps:get",
"vpc:ports:update",
"vpc:vpcs:list"
]
},
{
"Effect": "Allow",
"Action": [
"evs:quotas:get",
"evs:types:get"
]
},
{
"Effect": "Allow",
"Action": [
"bms:servers:get",
"bms:servers:list",
"bms:serverQuotas:get",
"bms:servers:updateMetadata",
"bms:serverFlavors:get"
]
}
]
}
示例6:授權用戶最小權限,創建ECS和BMS混合集群。
說明
創建集群時如果使用秘鑰對,增加權限:ecs:serverKeypairs:get和ecs:serverKeypairs:list
創集群時使用數據盤加密,增加權限:kms:cmk:list
創建集群時開啟告警功能,增加權限:mrs:alarm:subscribe
創建集群時使用外置數據源,增加權限:rds:instance:list
{
"Version": "1.1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"mrs:cluster:create"
]
},
{
"Effect": "Allow",
"Action": [
"ecs:cloudServers:updateMetadata",
"ecs:cloudServerFlavors:get",
"ecs:cloudServerQuotas:get",
"ecs:servers:list",
"ecs:servers:get",
"ecs:cloudServers:delete",
"ecs:cloudServers:list",
"ecs:serverInterfaces:get",
"ecs:serverGroups:manage",
"ecs:servers:setMetadata",
"ecs:cloudServers:get",
"ecs:cloudServers:create"
]
},
{
"Effect": "Allow",
"Action": [
"vpc:securityGroups:create",
"vpc:securityGroupRules:delete",
"vpc:vpcs:create",
"vpc:ports:create",
"vpc:securityGroups:get",
"vpc:subnets:create",
"vpc:privateIps:delete",
"vpc:quotas:list",
"vpc:networks:get",
"vpc:publicIps:list",
"vpc:securityGroups:delete",
"vpc:securityGroupRules:create",
"vpc:privateIps:create",
"vpc:ports:get",
"vpc:ports:delete",
"vpc:publicIps:update",
"vpc:subnets:get",
"vpc:publicIps:get",
"vpc:ports:update",
"vpc:vpcs:list"
]
},
{
"Effect": "Allow",
"Action": [
"evs:quotas:get",
"evs:types:get"
]
},
{
"Effect": "Allow",
"Action": [
"bms:servers:get",
"bms:servers:list",
"bms:serverQuotas:get",
"bms:servers:updateMetadata",
"bms:serverFlavors:get"
]
}
]
}