RAM (Resource Access Management) コンソールを使用して、RAMユーザーにDatabase Autonomy Service (DAS) に対するさまざまな権限を付与できます。 これにより、きめ細かい権限が付与され、アカウントのセキュリティが向上します。
システムポリシーを使用してRAMユーザーに権限を付与する
RAM ユーザーを作成します。 詳細については、「RAM ユーザーの作成」をご参照ください。
DASのRAMユーザー権限を付与します。 詳細については、「RAMユーザーへの権限付与」をご参照ください。
AliyunHDMFullAccess: RAMユーザーにDASに対する完全な権限を付与します。
AliyunHDMReadOnlyAccess: RAMユーザーにDASの読み取り専用権限を付与します。
AliyunHDMReadOnlyWithSQLLogArchiveAccess: RAMユーザーにDASの読み取り専用権限と、SQLエクスプローラーおよび監査モジュールの検索およびエクスポート機能を使用する権限を付与します。
説明カスタムポリシーを使用して、RAMユーザーにSQL Explorerおよび監査モジュールの検索およびエクスポート機能を使用する権限を付与することもできます。 詳細については、このトピックの「カスタムポリシーを使用してRAMユーザーにSQL Explorerおよび監査モジュールの検索およびエクスポート機能を使用する権限を付与する」をご参照ください。
カスタムポリシーを使用してRAMユーザーに権限を付与する
上記の方法で要件を満たせない場合は、カスタムポリシーを作成して、より詳細なアクセス制御を実装できます。
ポリシーは、ポリシー構造と構文に基づいて記述される一連の権限を定義します。 ポリシーを使用して、権限が付与されたリソースセット、権限が付与された操作セット、および権限付与の条件を記述できます。 ポリシー要素、構造、および構文の詳細については、「ポリシー要素」および「ポリシー構造と構文」をご参照ください。
RAM ユーザーを作成します。 詳細については、「RAM ユーザーの作成」をご参照ください。
カスタムポリシーを作成します。 詳細については、「カスタムポリシーの作成」トピックの「JSONタブでカスタムポリシーを作成する」セクションをご参照ください。
作成したカスタムポリシーをRAMユーザーにアタッチします。 詳細については、「RAMユーザーへの権限付与」をご参照ください。
カスタムポリシーを使用して、SQL Explorerおよび監査モジュールの検索機能とエクスポート機能を使用する権限をRAMユーザーに付与する
エクスポート機能を使用する権限を付与するカスタムポリシーを作成します。 詳細については、「カスタムポリシーの作成」トピックの「JSONタブでカスタムポリシーを作成する」セクションをご参照ください。
ApsaraDB RDSインスタンス
{ "Version": "1", "Statement": [ { "Action": [ "rds:DescribeSQLLogRecordsList", "rds:DescribeSqlLogDetailArchiveStatus", "rds:StartSqlLogDetailArchive" ], "Resource": "*", "Effect": "Allow" } ] }
説明上記のカスタムポリシーは、すべてのApsaraDB RDSインスタンスに関する情報をエクスポートする権限をRAMユーザーに付与します。 特定のApsaraDB RDSインスタンスに関する情報をエクスポートする権限をRAMユーザーに付与する場合は、
"Resource": "*"
を"Resource": "acs:rds:*:*:dbinstance/<ApsaraDB RDSインスタンスID>"
に置き換えます。PolarDB for MySQLクラスター
{ "Version": "1", "Statement": [ { "Action": [ "polardb:DescribeSQLLogRecords", "polardb:DescribeSqlLogDetailArchiveStatus", "polardb:StartSqlLogDetailArchive" ], "Resource": "*", "Effect": "Allow" } ] }
説明上記のカスタムポリシーは、すべてのPolarDB for MySQLクラスターに関する情報をエクスポートする権限をRAMユーザーに付与します。 特定のPolarDB for MySQLクラスターに関する情報をエクスポートする権限をRAMユーザーに付与する場合は、
"Resource": "*"
を"Resource": "acs:polardb:*:*:dbcluster/<PolarDB for MySQLクラスターID>"
に置き換えます。PolarDB-X 2.0インスタンス
{ "Version": "1", "Statement": [ { "Action": [ "hdm:DescribeDasSQLLogRecordsList", "hdm:DescribeDasSqlLogDetailArchiveStatus", "hdm:StartDasSqlLogDetailArchive" ], "Resource": "*", "Effect": "Allow" } ] }
説明上記のカスタムポリシーは、すべてのPolarDB-X 2.0インスタンスに関する情報をエクスポートする権限をRAMユーザーに付与します。 特定のPolarDB-X 2.0インスタンスに関する情報をエクスポートする権限をRAMユーザーに付与する場合は、
"Resource": "*"
を"Resource": "acs:polardbx:*:*:instance/<PolarDB-X 2.0インスタンスID>"
に置き換えます。
作成したカスタムポリシーをRAMユーザーにアタッチします。 詳細については、「RAMユーザーへの権限付与」をご参照ください。
説明データベースサービスのコンソールでデータをエクスポートする場合は、RAMユーザーがデータベースサービスの読み取り専用権限を持っていることを確認してください。
サンプルカスタムポリシー
次のコードは、カスタムポリシーを使用して、RAMユーザーにApsaraDB RDSインスタンスの読み取り専用権限を付与する方法の例を示しています。
{
"Version": "1",
"Statement": [
{
"Action": [
"hdm:Get*",
"hdm:Describe*",
"hdm:Query*"
],
"Resource": "acs:rds:*:*:dbinstance/<ApsaraDB RDS instance ID>",
"Effect": "Allow"
}
]
}
インスタンスIDを実際のものに置き換えます。
RAMユーザーに権限が付与された後、RAMユーザーとしてDASコンソールにログインすると、次のメッセージが表示されます: 権限がありません。 権限付与については、Alibaba Cloudアカウント管理者にお問い合わせください。 この場合、アイコンをクリックしてメッセージを閉じます。 コンソールのURLに
performance/instance/<Instance ID>/detail
を追加し、ページを更新します。 インスタンスの詳細ページが表示されます。DASの関連するアクセス許可をデータベースサービスのカスタムポリシーに追加できます。 これにより、データベースサービスのコンソールで関連するDAS機能を使用できます。
異なるデータベースインスタンスの場合、ビジネス要件に基づいて、サンプルカスタムポリシーのリソース
部分を置き換える必要があります。 例:
ApsaraDB RDSインスタンス
"Resource": "acs:rds:*:*:dbinstance/<ApsaraDB RDS instance ID>"
ApsaraDB for Redisインスタンス
"Resource": "acs:kvstore:*:*:*/<ApsaraDB for Redis instance ID>"
ApsaraDB for MongoDBインスタンス
"Resource": "acs:dds:*:*:dbinstance/<ApsaraDB for MongoDB instance ID>"
PolarDB for MySQL、PolarDB for PostgreSQL、およびPolarDB for PostgreSQL (Oracle互換) クラスター
"Resource": "acs:polardb:*:*:*/<PolarDB cluster ID>"
PolarDB-X 2.0インスタンス
"Resource": "acs:polardbx:*:*:*/<PolarDB-X 2.0 instance ID>"