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