自定義權(quán)限策略
如果Elasticsearch Serverless服務(wù)的系統(tǒng)策略無法滿足您的業(yè)務(wù)需求,可以通過自定義權(quán)限策略實(shí)現(xiàn)精細(xì)化權(quán)限管理。本文提供了ES Serverless服務(wù)權(quán)限策略配置的腳本示例和授權(quán)資源列表。
背景信息
默認(rèn)情況下,阿里云主賬號(hào)和RAM用戶均可以使用ES Serverless控制臺(tái)或ES Serverless API操作本賬號(hào)內(nèi)創(chuàng)建的ES Serverless資源。
以下場景中,會(huì)涉及授權(quán)問題:
剛創(chuàng)建的RAM用戶沒有權(quán)限操作阿里云主賬號(hào)的資源。
具有權(quán)限控制的ES Serverless資源。
從其他阿里云服務(wù)訪問ES Serverless資源或ES Serverless資源訪問其他阿里云服務(wù)。
注意事項(xiàng)
自定義權(quán)限策略僅在賬號(hào)級(jí)別生效,不會(huì)在資源組級(jí)別生效。如果您想對(duì)特定RAM用戶僅顯示控制臺(tái)的特定資源,可以采用資源組授權(quán)的方式,具體操作,請(qǐng)參見通過資源組授權(quán)特定實(shí)例。
ES Serverless權(quán)限腳本
您可以通過RAM訪問控制或者調(diào)用RAM API CreatePolicy創(chuàng)建自定義權(quán)限策略。
創(chuàng)建權(quán)限策略,請(qǐng)參見通過腳本編輯模式創(chuàng)建自定義權(quán)限策略。
權(quán)限策略語言的基本元素和語法結(jié)構(gòu),請(qǐng)參見權(quán)限策略基本元素和權(quán)限策略語法和結(jié)構(gòu)。
ES Serverless權(quán)限策略的腳本示例。
AliyunElasticsearchServerlessReadOnlyAccess:只讀訪問阿里云ES Serverless服務(wù)的權(quán)限,用于只讀用戶。
{
"Version": "1",
"Statement": [
{
"Action": [
"es-serverless:List*",
"es-serverless:Describe*",
"es-serverless:Get*"
],
"Resource": "*",
"Effect": "Allow"
}
]
}
AliyunElasticsearchServerlessFullAccess:管理阿里云ES Serverless服務(wù)的權(quán)限,擁有ES Serverless服務(wù)的所有操作權(quán)限,用于管理員。
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": "es-serverless:*",
"Resource": "*"
}
]
}
管控指定應(yīng)用的權(quán)限。
{ "Statement": [ { "Action": [ "es-serverless:*" ], "Effect": "Allow", "Resource": "acs:es-serverless:*:<yourAccountId>:apps/{appName}" } ], "Version": "1" }
關(guān)于Action和Resource,請(qǐng)參見授權(quán)資源列表。
Effect:是否允許RAM用戶執(zhí)行Action中設(shè)置的操作,取值包括Allow(允許)和Deny(拒絕)。
<yourAccountId>: 阿里云主賬號(hào)ID。
{appName}:指定的應(yīng)用名。
創(chuàng)建自定義權(quán)限策略后,您可以通過RAM訪問控制或者RAM SDK對(duì)RAM用戶授權(quán)。具體操作,請(qǐng)參見為RAM用戶授權(quán)。
授權(quán)資源列表
所有管控權(quán)限
Action
Resource
Action描述
es-serverless:*
acs:es-serverless:<yourRegionId>:<yourAccountId>:apps/{appName}
ES Serverless服務(wù)的所有管控API的權(quán)限。
說明es-serverless:*
不包括控制臺(tái)外部依賴的權(quán)限,外部依賴的權(quán)限需要單獨(dú)設(shè)置。管理應(yīng)用
Action
Resource
Action描述
es-serverless:CreateApp
acs:es-serverless:<yourRegionId>:<yourAccountId>:apps/*
創(chuàng)建應(yīng)用。
es-serverless:ListApps
獲取應(yīng)用列表。
es-serverless:DeleteApp
acs:es-serverless:<yourRegionId>:<yourAccountId>:apps/{appName}
刪除應(yīng)用。
es-serverless:UpdateApp
更新應(yīng)用。
es-serverless:GetApp
查詢指定應(yīng)用的詳細(xì)信息。
es-serverless:GetAppQuota
查詢指定應(yīng)用的配額信息。
監(jiān)控?cái)?shù)據(jù)
Action
Resource
Action描述
es-serverless:GetMonitorData
acs:es-serverless:<yourRegionId>:<yourAccountId>:apps/{appName}
查詢應(yīng)用監(jiān)控?cái)?shù)據(jù)。