リソースグループを活用することで、ApsaraDB for SelectDBリソースの一元管理が可能になり、RAM (Resource Access Management) ポリシーを用いたグループ単位でのきめ細かなアクセス制御を実現できます。これにより、Alibaba Cloud アカウントで最小権限の原則 (PoLP) を徹底できます。
リソースグループレベルの権限設定は、サポート対象リソースタイプとアクションに限られます。サポート対象外アクションの場合、リソースグループに対するポリシーを指定しても無視されます。アクセス制御のため、アカウントに対するポリシーを設定する必要があります。
仕組み
リソースグループは、プロジェクトや環境ごとにリソースを整理します。リソースをグループ化したら、そのグループにのみ権限を限定する RAM ポリシーをアイデンティティ (RAM ユーザー、ユーザーグループ、ロールなど) にアタッチできます。詳細については、「リソースのグループ化と権限付与」をご参照ください。
このアプローチには、主に 2 つのメリットがあります。
-
きめ細かなアクセス制御:アカウント全体の権限を付与する代わりに、アイデンティティのアクセスを特定のグループ内のリソースのみに制限できます。これにより、プロジェクト固有のワークロードを分離し、意図しないアクセスのリスクを軽減できます。
-
管理の簡素化:新しいリソースがリソースグループに追加されると、そのグループに限定された権限を持つ RAM アイデンティティは自動的にアクセスできます。新しいリソースが作成されるたびに RAM ポリシーを更新する必要はありません。
RAM ユーザーへのリソースグループレベルの権限付与
このセクションでは、特定のリソースグループ内のApsaraDB for SelectDBリソースにのみアクセス権限を RAM ユーザーに付与する方法について説明します。
1. 前提条件
-
RAM ユーザーが作成されていること。
-
リソースグループを作成し、対象リソースがそのグループ内にあること。詳細については、「リソースグループの作成」、「リソースをリソースグループに自動追加」、および「リソースをリソースグループに手動で追加」をご参照ください。
2. 権限付与
リソースグループレベルの権限は、Resource Management コンソールまたは RAM コンソールのいずれかから付与できます。
Resource Management コンソール
-
Resource Management コンソールにログインします。
-
[Resource Group] ページで、対象のリソースグループを見つけ、[Actions] 列の [Manage Permission] をクリックします。
-
[Permissions] タブで、[Grant Permission] をクリックします。
-
[Grant Permission] パネルで、プリンシパルとアクセスポリシーを設定します。
-
Principal:RAM ユーザーを選択します。
-
Policy:[System Policy] または [Custom Policy] を選択します。詳細については、「カスタム権限ポリシーの作成」をご参照ください。
-
-
[Grant Permissions] をクリックします。
詳細については、「リソースグループに対する RAM アイデンティティへの権限付与」をご参照ください。
RAM コンソール
-
Alibaba Cloud アカウント (root ユーザー)または RAM 管理者アカウントを使用して、RAM コンソールにログインします。
-
左側のメニューで、を選択します。[Users] ページで、対象の RAM ユーザーを見つけ、[Actions] 列の [Add Permissions] をクリックします。
-
[Grant Permission] パネルで、RAM ユーザーに権限を追加します。
-
Resource Scope:[Resource Group] を選択します。
-
Principal:既存の RAM ユーザーまたは前のステップで作成した RAM ユーザーを選択します。
-
Access Policy:[System Policy] または [Custom Policy] を選択します。詳細については、「カスタム権限ポリシーの作成」をご参照ください。
-
-
[OK] をクリックします。
詳細については、「RAM ユーザーへの権限付与」をご参照ください。
サポート対象リソース
以下のApsaraDB for SelectDBリソースは、リソースグループレベルの権限付与をサポートしています。
|
Alibaba Cloud サービス |
サービスコード |
リソースタイプ |
|
ApsaraDB for SelectDB |
selectdb |
dbinstance : インスタンス |
上表に記載されていないリソースタイプのサポートをリクエストするには、Resource Management コンソールでフィードバックを送信してください。

サポート対象外アクション
以下のApsaraDB for SelectDBアクションは、リソースグループレベルの権限付与をサポートしていません。
|
アクション |
説明 |
|
selectdb:ApplyDBInstanceConfigPattern |
- |
|
selectdb:CancelActiveOperationTasks |
- |
|
selectdb:CheckCreateCluster |
- |
|
selectdb:CheckCreateDBInstance |
- |
|
selectdb:CheckModifyCluster |
- |
|
selectdb:CheckServiceLinkedRole |
- |
|
selectdb:CompareDBClusterConfig |
- |
|
selectdb:CopyDBClusterConfig |
- |
|
selectdb:CreateDBInstance |
- |
|
selectdb:CreateOrUpdateBackupPolicy |
- |
|
selectdb:CreateOrder |
- |
|
selectdb:CreateServiceLinkedRoleForSelectDB |
- |
|
selectdb:CreateVirtualCluster |
- |
|
selectdb:DeleteBackupPolicy |
- |
|
selectdb:DeleteUdfPackage |
- |
|
selectdb:DeleteUdfPackages |
- |
|
selectdb:DeleteVirtualCluster |
- |
|
selectdb:DescribeActiveOperationMaintainConf |
- |
|
selectdb:DescribeActiveOperationTasks |
- |
|
selectdb:DescribeAllDBInstanceClass |
- |
|
selectdb:DescribeBackupPolicy |
- |
|
selectdb:DescribeBackupSets |
- |
|
selectdb:DescribeBackupTasks |
- |
|
selectdb:DescribeDBInstanceMetadata |
- |
|
selectdb:DescribeHistoryEvents |
- |
|
selectdb:DescribeHistoryEventsStat |
- |
|
selectdb:DescribePlugins |
- |
|
selectdb:DescribeRegions |
- |
|
selectdb:DescribeUdfPackages |
- |
|
selectdb:DescribeVSwitches |
- |
|
selectdb:DescribeZones |
- |
|
selectdb:GenerateUploadSignature |
- |
|
selectdb:InstallPlugin |
- |
|
selectdb:InstallPlugins |
- |
|
selectdb:ListBackupHistoryTasks |
- |
|
selectdb:ListRestoreHistoryTasks |
- |
|
selectdb:ModifyActiveOperationMaintainConf |
- |
|
selectdb:ModifyActiveOperationTasks |
- |
|
selectdb:ModifyDBInstancePayType |
- |
|
selectdb:ModifyVirtualCluster |
- |
|
selectdb:RestoreFromBackupSet |
- |
|
selectdb:UninstallPlugin |
- |
上記のアクションについては、 [Resource Scope] を [Account] に設定し、カスタムポリシーを作成する必要があります。
以下のポリシー例は、必要に応じてカスタマイズ可能です。
-
読み取り専用アクセスの許可
{ "Version": "1", "Statement": [ { "Effect": "Allow", "Action": [ "selectdb:CheckCreateCluster", "selectdb:CheckCreateDBInstance", "selectdb:CheckModifyCluster", "selectdb:CheckServiceLinkedRole", "selectdb:DescribeActiveOperationMaintainConf", "selectdb:DescribeActiveOperationTasks", "selectdb:DescribeAllDBInstanceClass", "selectdb:DescribeBackupPolicy", "selectdb:DescribeBackupSets", "selectdb:DescribeBackupTasks", "selectdb:DescribeDBInstanceMetadata", "selectdb:DescribeHistoryEvents", "selectdb:DescribeHistoryEventsStat", "selectdb:DescribePlugins", "selectdb:DescribeRegions", "selectdb:DescribeUdfPackages", "selectdb:DescribeVSwitches", "selectdb:DescribeZones", "selectdb:ListBackupHistoryTasks", "selectdb:ListRestoreHistoryTasks" ], "Resource": "*" } ] } -
フルアクセスの許可
{ "Version": "1", "Statement": [ { "Effect": "Allow", "Action": [ "selectdb:ApplyDBInstanceConfigPattern", "selectdb:CancelActiveOperationTasks", "selectdb:CheckCreateCluster", "selectdb:CheckCreateDBInstance", "selectdb:CheckModifyCluster", "selectdb:CheckServiceLinkedRole", "selectdb:CompareDBClusterConfig", "selectdb:CopyDBClusterConfig", "selectdb:CreateDBInstance", "selectdb:CreateOrUpdateBackupPolicy", "selectdb:CreateOrder", "selectdb:CreateServiceLinkedRoleForSelectDB", "selectdb:CreateVirtualCluster", "selectdb:DeleteBackupPolicy", "selectdb:DeleteUdfPackage", "selectdb:DeleteUdfPackages", "selectdb:DeleteVirtualCluster", "selectdb:DescribeActiveOperationMaintainConf", "selectdb:DescribeActiveOperationTasks", "selectdb:DescribeAllDBInstanceClass", "selectdb:DescribeBackupPolicy", "selectdb:DescribeBackupSets", "selectdb:DescribeBackupTasks", "selectdb:DescribeDBInstanceMetadata", "selectdb:DescribeHistoryEvents", "selectdb:DescribeHistoryEventsStat", "selectdb:DescribePlugins", "selectdb:DescribeRegions", "selectdb:DescribeUdfPackages", "selectdb:DescribeVSwitches", "selectdb:DescribeZones", "selectdb:GenerateUploadSignature", "selectdb:InstallPlugin", "selectdb:InstallPlugins", "selectdb:ListBackupHistoryTasks", "selectdb:ListRestoreHistoryTasks", "selectdb:ModifyActiveOperationMaintainConf", "selectdb:ModifyActiveOperationTasks", "selectdb:ModifyDBInstancePayType", "selectdb:ModifyVirtualCluster", "selectdb:RestoreFromBackupSet", "selectdb:UninstallPlugin" ], "Resource": "*" } ] }
アカウントレベルの権限を付与すると、アカウント内のすべての関連リソースへのアクセスが許可されます。常に最小権限の原則に従ってください。
よくある質問
リソースがどのリソースグループに属しているかを確認するにはどうすればよいですか。
-
方法 1:所属サービスのコンソールで確認
-
リソースが所属する Alibaba Cloud サービスのコンソールに移動します。通常、リソースの詳細ページの基本情報セクションにリソースグループが記載されています。
-
-
方法 2:Resource Management コンソールで確認
-
Resource Management コンソールにログインします。
-
を選択します。
-
左側のメニューで、対象リソースを所有するアカウントを選択します (デフォルトは [Current Account]) を選択します。
-
フィルター条件を使用してリソースを検索します。
-
[Resource Group Name] 列に、リソースが属するグループが表示されます。
-
特定のリソースグループ内のすべてのリソースを表示するにはどうすればよいですか。
-
方法 1:
-
Resource Management コンソールにログインします。
-
を選択します。
-
左側のメニューで、リソースを所有するアカウント (デフォルトは [Current Account]) の下にある、対象のリソースグループ名をクリックします。
-
右側の画面で、[Select resource types] ドロップダウンリストからクラウドサービスを選択します。
-
そのグループ内のすべてのリソースが表示されます。
-
-
方法 2:
-
Resource Management コンソールにログインします。
-
を選択します。
-
対象のリソースグループを見つけ、[Actions] 列の [Manage Resource] をクリックします。
-
リソース管理ページで、[Service] ドロップダウンリストからクラウドサービスを選択します。
-
そのグループ内のすべてのリソースが表示されます。
-
複数のリソースを別のリソースグループに一括で移動するにはどうすればよいですか。
-
Resource Management コンソールにログインします。
-
左側のメニューで、 を選択します。
-
対象のリソースグループを見つけ、[Actions] 列の [Manage Resource] をクリックします。
-
リソース管理ページで、フィルター条件を使用して移動したいリソースを検索します。
-
移動したいリソースのチェックボックスを選択します。
-
ページ下部にある [Transfer] をクリックします。
-
ダイアログボックスで、移動先のリソースグループを選択し、 [Confirm] をクリックします。