當您需要精細化地系統管理使用者許可權時,可通過建立自訂權限原則實現。建立時,需要配置Action(操作)和Resource(資源)。本文提供了Elasticsearch通過存取控制實現團隊或者部門成員鑒權、RAM使用者授權、RAM角色授權以及跨雲端服務授權的Action和Resource列表。
背景資訊
預設情況下,阿里雲主帳號或者RAM使用者均能使用Elasticsearch控制台或Elasticsearch API操作自己建立的Elasticsearch資源。在以下情境中,會涉及到操作授權問題:
剛建立的RAM使用者沒有許可權操作阿里雲主帳號的資源時。
從其他阿里雲服務訪問Elasticsearch資源,或者Elasticsearch訪問其他阿里雲服務時。
操作具有許可權控制的Elasticsearch資源前,需要資源擁有者授權目標資源和目標API行為許可權。
自訂策略
您可以通過RAM控制台或者調用RAM API CreatePolicy建立一個自訂權限原則。在自訂策略中,根據JSON模板檔案填寫策略內容。其中的Action和Resource參數取值為本文授權資源清單中對應的參數值。詳細資料,請參見建立自訂權限原則和權限原則基本元素。
{
"Statement": [
{
"Effect": "Allow",
"Action": [
"elasticsearch:[Elasticsearch RAM Action]",
"elasticsearch:ListInstance"
],
"Resource": [
"[Elasticsearch RAM Action Resource]",
"acs:elasticsearch:cn-hangzhou:133071096032****:instances/es-cn-2r42b7uyg003k****"
]
}
],
"Version": "1"
}
授權資源清單
Elasticsearch
執行個體管理
Action
Resource
Action描述
elasticsearch:CreateInstance
acs:elasticsearch:<yourRegionId>:<yourAccountId>:instances/*
建立執行個體。
elasticsearch:ListInstance
查看所有執行個體的詳細資料。
elasticsearch:DescribeInstance
acs:elasticsearch:<yourRegionId>:<yourAccountId>:instances/<yourInstanceId>
查詢指定執行個體的詳細資料。
elasticsearch:EstimatedRestartTime
擷取重啟執行個體的預估時間。
elasticsearch:RestartInstance
重啟指定執行個體。
elasticsearch:UpdateInstanceChargeType
將隨用隨付執行個體轉換為訂用帳戶執行個體。
elasticsearch:UpdateDescription
更新指定執行個體的名稱。
elasticsearch:DeleteInstance
釋放指定隨用隨付類型的Elasticsearch執行個體。
elasticsearch:CancelDeletion
恢複釋放後被凍結的Elasticsearch執行個體。
elasticsearch:RenewInstance
為訂用帳戶執行個體續約。
elasticsearch:ActivateZones
恢複已下線的可用性區域。
elasticsearch:DeactivateZones
在有多個可用性區域的情況下,下線部分可用性區域。並將下線的可用性區域中的節點遷移到其他可用性區域。
elasticsearch:InterruptElasticsearchTask
中斷變更中的執行個體。
elasticsearch:ResumeElasticsearchTask
恢複中斷變更的執行個體。
elasticsearch:DescribeElasticsearchHealth
擷取指定執行個體的健康情況。
elasticsearch:ListInstanceIndices
擷取執行個體的索引列表。
elasticsearch:MigrateToOtherZone
遷移對應可用性區域下的節點到目標可用性區域。
elasticsearch:MoveResourceGroup
遷移執行個體到指定資源群組。
elasticsearch:ModifyInstanceMaintainTime
更改並開啟執行個體的可維護時間。
elasticsearch:ListShardRecoveries
查看進行中和已完成的分區恢複的資料進度列表。
標籤管理
Action
Resource
Action描述
elasticsearch:ListTags
acs:elasticsearch:<yourRegionId>:<yourAccountId>:tags/<yourInstanceId>
查詢所有可見的使用者標籤。
elasticsearch:CreateTags
建立或更新標籤。
elasticsearch:RemoveTags
刪除標籤。
elasticsearch:ListTagResources
acs:elasticsearch:<yourRegionId>:<yourAccountId>:tags/*
acs:elasticsearch:<yourRegionId>:<yourAccountId>:tags/<yourInstanceId>
查詢可見資源標籤關係。
資料移轉
Action
Resource
Action描述
elasticsearch:ListDataTasks
acs:elasticsearch:<yourRegionId>:<yourAccountId>:instances/<yourInstanceId>
查看資料移轉任務資訊。
elasticsearch:CancelTask
取消資料移轉任務。
elasticsearch:CreateDataTasks
建立索引遷移任務,將所選執行個體中的資料移轉到當前執行個體。
elasticsearch:DeleteDataTask
刪除索引遷移任務。
elasticsearch:GetClusterDataInformation
acs:elasticsearch:<yourRegionId>:<yourAccountId>:instances/*
acs:elasticsearch:<yourRegionId>:<yourAccountId>:instances/<yourInstanceId>
擷取執行個體的資料資訊。
執行個體升降配
Action
Resource
Action描述
elasticsearch:UpgradeEngineVersion
acs:elasticsearch:<yourRegionId>:<yourAccountId>:instances/<yourInstanceId>
升級執行個體版本或核心補丁版本。
elasticsearch:UpdateInstance
變更執行個體配置。
elasticsearch:DowngradeInstance
縮容前,校正是否可以遷移指定執行個體中某些節點上的資料。
縮容前,執行資料移轉任務。
校正指定執行個體中的某些節點是否可以縮容。
執行執行個體節點縮容操作。
叢集配置
Action
Resource
Action描述
elasticsearch:UpdateInstanceSettings
acs:elasticsearch:<yourRegionId>:<yourAccountId>:instances/<yourInstanceId>
更新指定執行個體的YML參數配置。
elasticsearch:UpdateHotIkDicts
熱更新執行個體的IK分詞外掛程式,包括IK主分詞詞庫和IK停用詞詞庫。
elasticsearch:UpdateSynonymsDicts
更新執行個體的同義字詞典。
elasticsearch:UpdateDict
冷更新執行個體的IK分詞外掛程式,包括IK主分詞詞庫和IK停用詞詞庫。
elasticsearch:UpdateAliwsDict
更新AliNLP分詞外掛程式(analysis-aliws)的詞典檔案。
elasticsearch:ListDictInformation
在添加使用者OSS儲存的詞典檔案時,擷取和校正使用者OSS詞典檔案的詳情。
elasticsearch:UpdateAdvancedSetting
更改指定執行個體的記憶體回收行程配置。
elasticsearch:DescribeTemplates
擷取執行個體的情境化配置模板。
elasticsearch:ListDicts
查看指定類型的詞典詳情以及簽名產生的公網可下載連結。
外掛程式管理
Action
Resource
Action描述
elasticsearch:ListPlugins
acs:elasticsearch:<yourRegionId>:<yourAccountId>:instances/<yourInstanceId>
查看指定執行個體的外掛程式列表。
elasticsearch:InstallSystemPlugin
安裝系統預置外掛程式。
elasticsearch:UninstallPlugin
卸載已安裝的預置外掛程式。
elasticsearch:InstallUserPlugins
安裝使用者自訂的已經上傳至Elasticsearch控制台的外掛程式。
日誌查詢
Action
Resource
Action描述
elasticsearch:ListSearchLogs
acs:elasticsearch:<yourRegionId>:<yourAccountId>:instances/<yourInstanceId>
查看執行個體日誌。
安全配置
Action
Resource
Action描述
elasticsearch:TriggerNetwork
acs:elasticsearch:<yourRegionId>:<yourAccountId>:instances/<yourInstanceId>
開啟或關閉Elasticsearch或Kibana執行個體的公網或私網訪問。
elasticsearch:UpdatePrivateNetworkWhiteIps
更新指定執行個體的VPC私網訪問白名單。
elasticsearch:UpdatePublicWhiteIps
更新指定執行個體的公網地址訪問白名單。
elasticsearch:UpdatePublicNetwork
開啟或關閉指定執行個體的公網地址。
elasticsearch:UpdateWhiteIps
更新執行個體的VPC私網訪問白名單。
elasticsearch:ModifyWhiteIps
更新指定執行個體的訪問白名單。
elasticsearch:UpdateAdminPassword
更新指定執行個體的elastic帳號的密碼。
elasticsearch:OpenHttps
開啟HTTPS協議。
elasticsearch:CloseHttps
關閉HTTPS協議。
elasticsearch:AddConnectableCluster
配置執行個體網路互連。
elasticsearch:DeleteConnectedCluster
移除互連執行個體。
elasticsearch:DescribeConnectableClusters
擷取能夠與當前執行個體進行網路互連的執行個體列表。不包括已經打通的執行個體。
elasticsearch:ListConnectedClusters
擷取已經與當前執行個體進行了網路互連的執行個體列表。
elasticsearch:DeleteVpcEndpoint
刪除服務VPC下的終端節點。
elasticsearch:ListVpcEndpoints
查看服務VPC下的終端節點狀態。
資料備份
Action
Resource
Action描述
elasticsearch:CreateSnapshot
acs:elasticsearch:<yourRegionId>:<yourAccountId>:instances/<yourInstanceId>
手動對執行個體進行快照備份。
elasticsearch:AddSnapshotRepo
acs:elasticsearch:<yourRegionId>:<yourAccountId>:instances/*
在設定跨叢集OSS倉庫時,建立引用倉庫。
elasticsearch:DeleteSnapshotRepo
刪除一個跨叢集OSS引用倉庫。
elasticsearch:ListSnapshotReposByInstanceId
擷取當前執行個體的跨叢集OSS倉庫設定列表。
elasticsearch:ListAlternativeSnapshotRepos
acs:elasticsearch:<yourRegionId>:<yourAccountId>:snapshotrepository/*
擷取當前執行個體可添加的OSS引用倉庫。
elasticsearch:DescribeSnapshotSetting
acs:elasticsearch:<yourRegionId>:<yourAccountId>:instances/<yourInstanceId>
擷取指定執行個體的資料備份配置。
elasticsearch:UpdateSnapshotSetting
更新指定執行個體的資料備份配置。
智能營運
Action
Resource
Action描述
elasticsearch:OpenDiagnosis
acs:elasticsearch:<yourRegionId>:<yourAccountId>:instances/*
acs:elasticsearch:<yourRegionId>:<yourAccountId>:instances/<yourInstanceId>
開啟智能營運。
elasticsearch:CloseDiagnosis
關閉智能營運。
elasticsearch:UpdateDiagnosisSettings
更新智能營運情境設定。
elasticsearch:DiagnoseInstance
即刻診斷執行個體。
elasticsearch:ListDiagnoseReport
查看智能營運的歷史報告。
elasticsearch:ListDiagnoseReportIds
查看智能營運歷史報告的ID。
elasticsearch:ListDiagnoseIndices
查看指定執行個體智能營運模組中,健康診斷的診斷索引。
elasticsearch:DescribeDiagnoseReport
擷取智能營運的歷史報告。
elasticsearch:DescribeDiagnosisSettings
擷取智能營運的情境設定。
Kibana
Action | Resource | Action描述 |
elasticsearch:DescribeKibanaSettings | acs:elasticsearch:<yourRegionId>:<yourAccountId>:instances/<yourInstanceId> | 查看Kibana配置。 |
elasticsearch:UpdateKibanaSettings | 更新Kibana配置。 | |
elasticsearch:ListKibanaPlugins | 查看Kibana外掛程式。 | |
elasticsearch:InstallKibanaSystemPlugin | 安裝Kibana外掛程式。 | |
elasticsearch:UninstallKibanaPlugin | 卸載Kibana外掛程式。 | |
elasticsearch:UpdateKibanaWhiteIps | 修改Kibana白名單。 |
Logstash
執行個體管理
Action
Resource
Action描述
elasticsearch:CreateLogstash
acs:elasticsearch:<yourRegionId>:<yourAccountId>:logstashes/*
acs:elasticsearch:<yourRegionId>:<yourAccountId>:logstashes/<yourInstanceId>
建立一個Logstash執行個體。
elasticsearch:ListLogstash
查看所有或指定Logstash執行個體的詳細資料。
elasticsearch:DescribeLogstash
acs:elasticsearch:<yourRegionId>:<yourAccountId>:logstashes/<yourInstanceId>
查詢指定Logstash執行個體的詳細資料。
elasticsearch:UpdateLogstash
修改指定Logstash執行個體的部分資訊,例如節點數、配額、名稱、硬碟大小等。
elasticsearch:RenewLogstash
為Logstash執行個體續約。
elasticsearch:RestartLogstash
重啟指定的Logstash執行個體。
elasticsearch:EstimatedLogstashRestartTime
擷取Logstash執行個體重啟的預估時間。
elasticsearch:UpdateLogstashDescription
修改指定Logstash執行個體的名稱。
elasticsearch:UpdateLogstashChargeType
將隨用隨付的Logstash執行個體轉換為訂用帳戶執行個體。
elasticsearch:DeleteLogstash
釋放指定隨用隨付的Logstash執行個體。
elasticsearch:CancelLogstashDeletion
恢複釋放後被凍結的Logstash執行個體。
叢集配置
Action
Resource
Action描述
elasticsearch:UpdateLogstashSettings
acs:elasticsearch:<yourRegionId>:<yourAccountId>:logstashes/<yourInstanceId>
更新指定Logstash執行個體的配置。
elasticsearch:ListExtendfiles
查看指定Logstash執行個體的擴充檔案配置。
elasticsearch:UpdateExtendfiles
更新指定Logstash執行個體的擴充檔案配置。
外掛程式管理
Action
Resource
Action描述
elasticsearch:ListPlugin
acs:elasticsearch:<yourRegionId>:<yourAccountId>:logstashes/<yourInstanceId>
查看外掛程式列表。
elasticsearch:InstallSystemPlugin
安裝系統預置外掛程式。
elasticsearch:UninstallSystemPlugin
卸載系統預置外掛程式。
叢集監控和日誌查詢
Action
Resource
Action描述
elasticsearch:ListAvailableEsInstanceIds
acs:elasticsearch:<yourRegionId>:<yourAccountId>:logstashes/<yourInstanceId>
在設定Logstash執行個體的X-Pack監控時,查看可用的Elasticsearch執行個體列表(具備X-Pack監控能力)。
elasticsearch:ValidateConnection
在Logstash執行個體的監控警示配置中,驗證提供X-Pack監控的Elasticsearch執行個體的聯通性。
elasticsearch:UpdateXpackMonitorConfig
更新Logstash執行個體的X-Pack監控警示配置。
elasticsearch:DescribeXpackMonitorConfig
擷取Logstash執行個體的X-Pack監控配置。
elasticsearch:ListLogstashLog
查看Logstash執行個體的日誌。
變更任務管理
Action
Resource
Action描述
elasticsearch:InterruptLogstashTask
acs:elasticsearch:<yourRegionId>:<yourAccountId>:logstashes/<yourInstanceId>
中斷執行個體變更任務。
elasticsearch:ResumeLogstashTask
恢複執行個體的變更中斷任務。
管道管理
Action
Resource
Action描述
elasticsearch:CreatePipelines
acs:elasticsearch:<yourRegionId>:<yourAccountId>:logstashes/<yourInstanceId>
建立管道。
elasticsearch:ListPipeline
查看管道列表。
elasticsearch:DescribePipeline
查看管道配置。
elasticsearch:UpdatePipelines
更新管道配置。
elasticsearch:RunPipelines
立即部署管道。
elasticsearch:StopPipelines
停止運行管道。
elasticsearch:UpdatePipelineManagementConfig
更新管道管理方式。
elasticsearch:DescribePipelineManagementConfig
擷取管道管理配置。
elasticsearch:ListPipelineIds
設定Kibana管道管理時,測試Logstash與Kibana連通性,並擷取目標Kibana上建立的管道ID列表。
elasticsearch:DeletePipelines
刪除管道。
Beats
Action | Resource | Action描述 |
elasticsearch:CreateCollector | acs:elasticsearch:<yourRegionId>:<yourAccountId>:collectors/<yourCollectorId> | 建立採集器。 |
elasticsearch:DescribeCollector | 擷取採集器的詳細資料。 | |
elasticsearch:ReinstallCollector | 重試安裝在建立時沒有安裝成功的採集器。 | |
elasticsearch:ListCollectors | acs:elasticsearch:<yourRegionId>:<yourAccountId>:collectors/* | 擷取採集器列表資訊。 |
elasticsearch:ListDefaultCollectorConfigurations | 擷取採集器的預設設定檔。 | |
elasticsearch:UpdateCollectorName | acs:elasticsearch:<yourRegionId>:<yourAccountId>:collectors/<yourCollectorId> | 修改採集器名稱。 |
elasticsearch:UpdateCollector | 更新採集器資訊。 | |
elasticsearch:StartCollector | 啟動採集器。 | |
elasticsearch:RestartCollector | 重啟採集器。 | |
elasticsearch:StopCollector | 停止運行中的採集器。 | |
elasticsearch:DeleteCollector | 刪除採集器。 | |
elasticsearch:ListEcsInstances | 擷取ECS機器列表。 | |
elasticsearch:ModifyDeployMachine | 更新採集器安裝的ECS機器。 | |
elasticsearch:ListNodes | 查看安裝採集器的ECS機器的狀態。 | |
elasticsearch:ListAckClusters | acs:elasticsearch:<yourRegionId>:<yourAccountId>:ackClusters/* | 查看Container ServiceKubernetes版ACK叢集列表。 |
elasticsearch:ListAckNamespaces | acs:elasticsearch:<yourRegionId>:<yourAccountId>:ackClusters/<yourClusterId> | 查看指定Container ServiceKubernetes版ACK叢集的所有命名空間。 |
elasticsearch:DescribeAckOperator | 查看指定Container ServiceKubernetes版ACK叢集上安裝的Elasticsearch Operator資訊。 | |
elasticsearch:InstallAckOperator | 在指定Container ServiceKubernetes版ACK叢集上安裝Elasticsearch Operator。 |
存取控制
Action | Resource | Action描述 |
elasticsearch:InitializeOperationRole | acs:elasticsearch:<yourRegionId>:<yourAccountId>:instances/* | 建立服務關聯角色。 |
底層CloudMonitor
Action | Resource | Action描述 |
cms:ListProductOfActiveAlert | * | 擷取使用者已開通CloudMonitor服務的產品。 |
cms:ListAlarm | 查詢指定或全部警示規則設定。 | |
cms:QueryMetricList | 查詢一段時間內指定執行個體的監控資料。 |
購買頁專用網路和虛擬交換器
Action | Resource | Action描述 |
elasticsearch:DescribeVpcs | acs:elasticsearch:<yourRegionId>:<yourAccountId>:vpc/* | 擷取VPC列表。 |
elasticsearch:DescribeVswitches | acs:elasticsearch:<yourRegionId>:<yourAccountId>:vswitch/* | 擷取vSwitch列表。 |
參數說明
本文Resource中包含的參數說明如下,請在使用時替換為實際值:
<yourRegionId>:執行個體所在地區的ID,*表示所有地區下的資源。各地區對應的地區ID如下。
地區
地區ID
中國
華東 2(上海)
cn-shanghai
華南 1(深圳)
cn-shenzhen
華北1(青島)
cn-qingdao
華北3(張家口)
cn-zhangjiakou
華北2(北京)
cn-beijing
華東 1(杭州)
cn-hangzhou
中國(香港)
cn-hongkong
亞太地區
新加坡
ap-southeast-1
馬來西亞(吉隆坡)
ap-southeast-3
日本(東京)
ap-northeast-1
印尼(雅加達)
ap-southeast-5
歐美地區
美國(維吉尼亞)
us-east-1
美國(矽谷)
us-west-1
德國(法蘭克福)
eu-central-1
英國(倫敦)
eu-west-1
<yourAccountId>:阿里雲帳號ID,*表示所有帳號下的資源。
<yourInstanceId>:執行個體ID,*表示所有執行個體資源。
<yourCollectorId>:Beats採集器ID。
<yourClusterId>:安裝Beats採集器的Container ServiceKubernetes版ACK叢集ID。