如果系統權限策略不能滿足您的要求,您可以創建自定義權限策略實現最小授權。使用自定義權限策略有助于實現權限的精細化管控,是提升資源訪問安全的有效手段。本文介紹云消息隊列 Kafka 版使用自定義權限策略的場景和策略示例。
什么是自定義權限策略
在基于RAM的訪問控制體系中,自定義權限策略是指在系統權限策略之外,您可以自主創建、更新和刪除的權限策略。自定義權限策略的版本更新需由您來維護。
創建自定義權限策略后,需為RAM用戶、用戶組或RAM角色綁定權限策略,這些RAM身份才能獲得權限策略中指定的訪問權限。
已創建的權限策略支持刪除,但刪除前需確保該策略未被引用。如果該權限策略已被引用,您需要在該權限策略的引用記錄中移除授權。
自定義權限策略支持版本控制,您可以按照RAM規定的版本管理機制來管理您創建的自定義權限策略版本。
操作文檔
自定義權限策略
云消息隊列 Kafka 版支持以下自定義權限策略。
Action名稱 | 權限說明 | 是否為只讀類權限 |
ReadOnly | 只讀所有資源 | 是 |
ListInstance | 查看實例 | 是 |
StartInstance | 部署實例 | 否 |
UpdateInstance | 更新實例配置 | 否 |
ReleaseInstance | 釋放實例 | 否 |
ListTopic | 查看Topic | 是 |
CreateTopic | 創建Topic | 否 |
UpdateTopic | 更新Topic配置 | 否 |
DeleteTopic | 刪除Topic | 否 |
ListGroup | 查看Group | 是 |
CreateGroup | 創建Group | 否 |
UpdateGroup | 更新Group配置 | 否 |
DeleteGroup | 刪除Group | 否 |
QueryMessage | 查詢消息 | 是 |
SendMessage | 發送消息 | 否 |
DownloadMessage | 下載消息 | 是 |
CreateMessageSearch | 開通消息檢索 | 否 |
OperateMessageSearch | 啟停消息檢索 | 否 |
ListMessageSearch | 查看消息檢索 | 是 |
DeleteMessageSearch | 刪除消息檢索任務 | 否 |
CreateDeployment |
| 否 |
DeleteDeployment |
| 否 |
ListDeployments | 查看Connector任務 | 是 |
UpdateDeploymentRemark | 修改Connector任務說明 | 否 |
GetDeploymentLog | 獲取Connector任務運行日志 | 是 |
OperateDeployment | 啟停Connector任務 | 否 |
CreateOtsSinkDeployment | 創建Tablestore Sink Connector任務 | 否 |
OperateOtsSinkDeployment | 啟停Tablestore Sink Connector任務 | 否 |
DeleteOtsSinkDeployment | 刪除Tablestore Sink Connector任務 | 否 |
CreateAdbSinkDeployment | 創建AnalyticDB Sink Connector任務 | 否 |
OperateAdbSinkDeployment | 啟停AnalyticDB Sink Connector任務 | 否 |
DeleteAdbSinkDeployment | 刪除AnalyticDB Sink Connector任務 | 否 |
EnableAcl | 開啟ACL | 否 |
CreateAcl | 創建ACL | 否 |
DeleteAcl | 刪除ACL | 否 |
ListAcl | 查詢ACL | 是 |
CreateSaslUser | 創建SASL用戶 | 否 |
DeleteSaslUser | 刪除SASL用戶 | 否 |
ListSaslUser | 查詢SASL用戶 | 是 |
CreateETLTask | 創建數據處理任務 | 否 |
ListETLTask | 查詢數據處理任務 | 是 |
DeleteETLTask | 刪除數據處理任務 | 否 |
自定義權限策略示例
以自己創建的自定義權限策略AliyunKafkaCustomAccess為例,被授予該權限策略的RAM用戶只具有實例alikafka_post-cn-xxx的查看實例、查看Topic、查看Group、查詢消息和下載消息的控制臺和API的權限。策略內容如下:
{
"Version": "1",
"Statement": [
{
"Action": [
"alikafka:ListInstance",
"alikafka:ListTopic",
"alikafka:ListGroup",
"alikafka:QueryMessage",
"alikafka:DownloadMessage"
],
"Resource": "acs:alikafka:*:*:alikafka_post-cn-xxx",
"Effect": "Allow"
}
]
}