您可以通過訪問控制RAM(Resource Access Management)將DAS的管理權限授權給RAM用戶,細分賬號權限,提升賬號安全性。
通過系統權限策略授權RAM用戶
創建RAM用戶,詳情請參見創建RAM用戶。
將數據庫自治服務的權限授予新建的RAM用戶,詳情請參見為RAM用戶授權。
AliyunHDMFullAccess:為RAM用戶授予DAS的完全管理權限。
AliyunHDMReadOnlyAccess:為RAM用戶授予DAS的只讀訪問權限。
AliyunHDMReadOnlyWithSQLLogArchiveAccess:為RAM用戶授予DAS的只讀訪問權限,以及使用SQL洞察和審計的搜索(包含導出)功能的權限。
說明您也可以通過自定義權限策略授予RAM用戶使用SQL洞察和審計的搜索(包含導出)功能的權限,詳情請參見通過自定義權限策略授權RAM用戶使用SQL洞察和審計的搜索(包含導出)功能。
通過自定義權限策略授權RAM用戶
如果系統權限策略不能滿足您的需求,您可以通過創建自定義權限策略實現精細化權限管理。
權限策略是用語法結構描述的一組權限的集合,可以精確地描述被授權的資源集、操作集以及授權條件。RAM支持的權限策略基本元素和語言規范,請參見權限策略基本元素和權限策略語法和結構。
創建RAM用戶,詳情請參見創建RAM用戶。
創建自定義權限策略,詳情請參見通過腳本編輯模式創建自定義權限策略。
將自定義的權限策略授予新建的RAM用戶,詳情請參見為RAM用戶授權。
通過自定義權限策略授權RAM用戶使用SQL洞察和審計的搜索(包含導出)功能
創建具有導出功能權限的自定義權限策略,詳情請參見通過腳本編輯模式創建自定義權限策略。
RDS實例:
{ "Version": "1", "Statement": [ { "Action": [ "rds:DescribeSQLLogRecordsList", "rds:DescribeSqlLogDetailArchiveStatus", "rds:StartSqlLogDetailArchive" ], "Resource": "*", "Effect": "Allow" } ] }
說明上述自定義權限策略,賦予RAM用戶所有RDS實例的導出權限,如果您只需要賦予RAM用戶單個RDS實例的導出權限,請將
"Resource": "*"
替換為"Resource": "acs:rds:*:*:dbinstance/RDS實例ID"
。PolarDB MySQL版實例:
{ "Version": "1", "Statement": [ { "Action": [ "polardb:DescribeSQLLogRecords", "polardb:DescribeSqlLogDetailArchiveStatus", "polardb:StartSqlLogDetailArchive" ], "Resource": "*", "Effect": "Allow" } ] }
說明上述自定義權限策略,賦予RAM用戶所有PolarDB MySQL版實例的導出權限,如果您只需要賦予RAM用戶單個PolarDB MySQL實例的導出權限,請將
"Resource": "*"
替換為"Resource": "acs:polardb:*:*:dbcluster/PolarDB MySQL版實例ID"
。PolarDB-X 2.0實例:
{ "Version": "1", "Statement": [ { "Action": [ "hdm:DescribeDasSQLLogRecordsList", "hdm:DescribeDasSqlLogDetailArchiveStatus", "hdm:StartDasSqlLogDetailArchive" ], "Resource": "*", "Effect": "Allow" } ] }
說明上述自定義權限策略,賦予RAM用戶所有PolarDB-X 2.0實例的導出權限,如果您只需要賦予RAM用戶單個PolarDB-X 2.0實例的導出權限,請將
"Resource": "*"
替換為"Resource": "acs:polardbx:*:*:instance/PolarDB-X 2.0實例ID"
。
將創建好的自定義權限策略授權給目標RAM用戶,詳情請參見為RAM用戶授權。
說明在數據庫產品的控制臺進行導出操作時,需要確保目標RAM用戶具有數據庫產品控制臺的只讀訪問權限。
常見的自定義權限策略
以RDS實例為例,設置單個實例的只讀權限:
{
"Version": "1",
"Statement": [
{
"Action": [
"hdm:Get*",
"hdm:Describe*",
"hdm:Query*"
],
"Resource": "acs:rds:*:*:dbinstance/RDS實例ID",
"Effect": "Allow"
}
]
}
實例ID請根據實際替換。
授權后,使用RAM用戶登錄DAS控制臺時,系統會提示沒有權限,請聯系主賬號管理員進行授權,此時請單擊關閉彈出的對話框,將
performance/instance/實例ID/detail
拼接到控制臺URL之后,刷新頁面后即可查看目標實例的詳情頁面。您可以將DAS的權限策略添加到數據庫產品的自定義權限策略中,實現對數據庫產品控制臺中DAS相關功能的控制。
對于不同的數據庫實例,自定義權限策略中的Resource
如下所示,請根據實際情況進行替換:
RDS實例
"Resource": "acs:rds:*:*:dbinstance/RDS實例ID"
Redis實例
"Resource": "acs:kvstore:*:*:*/Redis實例ID"
MongoDB實例
"Resource": "acs:dds:*:*:dbinstance/MongoDB實例ID"
PolarDB MySQL版、PolarDB PostgreSQL版和PolarDB PostgreSQL版(兼容Oracle)實例
"Resource": "acs:polardb:*:*:*/PolarDB集群ID"
PolarDB-X 2.0實例
"Resource": "acs:polardbx:*:*:*/PolarDB-X 2.0實例ID"