Autonomous DatabaseのIAMポリシー
Autonomous DatabaseのAPI操作に必要なIAMポリシーに関する情報を提供します。
Oracle Autonomous Databaseは、IAM (Identity and Access Management)サービスに依存して、Oracle Cloud Infrastructureインタフェース(コンソール、REST API、CLIまたはSDK)を使用する操作を実行するクラウド・ユーザーを認証および認可します。
IAMサービスでは、グループ、コンパートメント,およびポリシーを使用して、どのクラウド・ユーザーがどのリソースにアクセスできるかを制御します。
Autonomous Databaseのポリシー詳細
このトピックでは、Autonomous Databaseリソースへのアクセスを制御するポリシーの記述の詳細を説明します。
ポリシーは、ユーザーのグループが個々のコンパートメント内の特定のリソースに対してどの種類のアクセス権を持つかを定義します。 詳細は、「ポリシーのスタート・ガイド」を参照してください。
Resource-Types
集約リソース・タイプは、直接たどる個々のリソース・タイプのリストを対象とします。 たとえば、グループがautonomous-database-familyにアクセスできるようにするポリシーを1つ記述することは、autonomous-databases、autonomous-backupsリソース・タイプへのアクセス権を付与するグループに対して4つの個別のポリシーを記述することと同じです。 詳細は、Resource-Typesを参照してください。
集約リソース・タイプ:
autonomous-database-family
個々のリソース・タイプ:
autonomous-databases
autonomous-backups
動詞とリソース・タイプの組合せの詳細
アクセス・レベルは、inspect > read > use > manageからの実行に伴い累積されます。 表のセル内のプラス記号(+)は、その上のセルと比較して増分アクセスを示しますが、「追加なし」は増分アクセスを示しません。
たとえば、autonomous-databasesリソース・タイプに対するread動詞は、inspect動詞と同じ権限およびAPI操作に加えて、AUTONOMOUS_DATABASE_CONTENT_READ権限もカバーします。 read動詞は、CreateAutonomousDatabaseBackup操作を部分的にカバーし、autonomous-backupsの管理権限も必要です。
次の表に、各動詞でカバーされる権限およびAPI操作を示します。 権限の詳細は、「権限」を参照してください。
ノート:
autonomous-database-familyでカバーされるリソース・ファミリを使用して、すべてのAutonomous Databaseワークロード・タイプに関連付けられたデータベース・リソースへのアクセス権を付与できます。| 動詞 | 権限 | 完全に対象となっているAPI | 一部対象API |
|---|---|---|---|
|
inspect |
|
|
なし |
|
read |
|
|
|
|
use |
|
|
|
|
manage |
|
|
なし |
Autonomous Databaseインスタンスを管理するために必要な操作およびIAMポリシーのリスト
| 操作 | 必要なIAMポリシー |
|---|---|
|
ピア・データベースの追加 |
|
|
セキュリティ属性の追加 |
|
|
コンピュート・モデルの変更 |
|
|
データベース・モードの変更 |
|
|
ネットワークの変更 |
|
|
ワークロード・タイプの変更 |
|
|
Autonomous Databaseのクローニング |
Autonomous Databaseに対する追加のクローニング権限については、「Autonomous DatabaseのIAM権限およびAPI操作」を参照してください。 |
|
Autonomous Databaseを作成 |
|
|
データベース・ツール構成の編集 |
|
|
開始/停止スケジュールの編集 |
|
| エラスティック・プールの有効化 |
|
|
Autonomous Databaseの自動スケーリングの有効化または無効化 |
|
| エラスティック・プールの結合 |
|
|
顧客連絡先の管理 |
|
|
暗号化キーの管理 |
|
|
Autonomous Databaseを別のコンパートメントに移動 |
databaseの現在のコンパートメントおよび移動先のコンパートメント内の
|
|
Autonomous Databaseの名前を変更 |
|
|
Autonomous Databaseの再起動 |
|
|
Autonomous Databaseのリストア |
|
|
Autonomous DatabaseのECPU数またはストレージのスケーリング |
|
|
ADMINユーザー・パスワードの設定 |
|
|
Autonomous Databaseの停止または起動 |
|
|
スイッチオーバー |
|
|
Autonomous Databaseの終了 |
|
|
ディザスタ・リカバリの更新 |
|
|
表示名の更新 |
|
|
ライセンスとOracle Databaseエディションの更新 |
|
|
ACLのネットワーク・アクセスの更新 |
|
|
プライベート・エンドポイントのネットワーク・アクセスの更新 |
|
|
Autonomous Databaseのリストの表示 |
|
|
Autonomous Databaseの詳細の表示 |
|
autonomous-backups
| 動詞 | 権限 | 完全に対象となっているAPI | 一部対象API |
|---|---|---|---|
|
inspect |
|
|
なし |
|
manage |
|
|
|
|
read |
|
余分なし |
|
|
use |
READ + 余分なし |
余分なし |
なし |
サポートされる変数
すべての一般的なOCI Identity and Access Management変数がサポートされています。 詳細については、「すべてのリクエストの一般的な変数」を参照してください。
また、次の表に示すように、データベースの作成後にtarget.id変数をデータベースのOCIDとともに使用し、target.workloadType変数を値とともに使用できます:
| target.workloadType値 | 説明 |
|---|---|
OLTP |
オンライン・トランザクション処理。トランザクション処理ワークロードでAutonomous Databaseに使用されます。 |
DW |
データ・ウェアハウス。データ・ウェアハウス・ワークロードでAutonomous Databaseに使用されます。 |
AJD |
JSONワークロードでAutonomous Databaseに使用されるAutonomous JSON Database。 |
APEX |
Autonomous Database APEXサービスに使用される「APEXサービス」。 |
target.id変数を使用したポリシーの例:
Allow group ADB-Admins to manage autonomous-databases in tenancy where target.id = 'OCID'
target.workloadType変数を使用したポリシーの例:
Allow group ADB-Admins to manage autonomous-databases in tenancy where target.workloadType = 'AJD'Autonomous DatabaseのIAM権限およびAPI操作
このトピックでは、Autonomous Databaseに対する操作に使用可能なIAM権限について説明します。
Autonomous DatabaseのIAM権限は次のとおりです:
-
AUTONOMOUS_DATABASE_CONTENT_READ -
AUTONOMOUS_DATABASE_CONTENT_WRITE -
AUTONOMOUS_DATABASE_CREATEクローニングの制限事項については、「クローニング権限」を参照してください。
-
AUTONOMOUS_DATABASE_DELETE -
AUTONOMOUS_DATABASE_INSPECT -
AUTONOMOUS_DATABASE_UPDATE -
AUTONOMOUS_DB_BACKUP_CONTENT_READ -
AUTONOMOUS_DB_BACKUP_CREATE -
AUTONOMOUS_DB_BACKUP_INSPECT -
NETWORK_SECURITY_GROUP_UPDATE_MEMBERS -
VNIC_ASSOCIATE_NETWORK_SECURITY_GROUP
コンパートメントにAutonomous Databaseを作成する権限を持つグループのポリシーの例:
Allow group group-name to manage autonomous-database in compartment id compartment-ocid
where all{request.permission = 'AUTONOMOUS_DATABASE_UPDATE'}
| 操作の使用に必要な権限 | API操作 |
|---|---|
AUTONOMOUS_DATABASE_CONTENT_READ |
|
AUTONOMOUS_DATABASE_CREATE |
|
AUTONOMOUS_DATABASE_DELETE |
|
AUTONOMOUS_DATABASE_INSPECT |
|
AUTONOMOUS_DATABASE_UPDATE |
|
AUTONOMOUS_DB_BACKUP_INSPECT |
|
AUTONOMOUS_DB_BACKUP_UPDATE |
|
AUTONOMOUS_DB_BACKUP_CREATE
|
|
AUTONOMOUS_DB_BACKUP_INSPECT
|
|
|
|
|
|
ソースおよびターゲット・コンパートメントで必要です:
プライベート・エンドポイントが有効な場合、ソース・コンパートメントとターゲット・コンパートメントの両方で必要です:
|
|
|
考えられる3つのケース:
|
|
changeAutonomousDatabaseSubscriptionが必要です |
|
|
|
|
updateSaasAdminUserが必要です |
|
クローニング権限
一般的なIAM権限は、Autonomous Databaseでサポートされています。 また、次の表に示すように、target.autonomous-database.cloneTypeをサポートされている権限値とともに使用して、アクセスのレベルを制御できます。
| target.autonomous-database.cloneType値 | 説明 |
|---|---|
CLONE-FULL |
フル・クローンのみを許可します。 |
CLONE-METADATA |
メタデータ・クローンのみを許可します。 |
CLONE-REFRESHABLE |
リフレッシュ可能クローンのみを許可します。 |
/CLONE*/ |
任意の種類のクローンを許可します。 |
サポートされているtarget.autonomous-database.cloneType権限値を持つポリシーの例:
Allow group group-name to manage autonomous-databases in compartment id compartment-ocid
where all {request.permission = 'AUTONOMOUS_DATABASE_CREATE', target.autonomous-database.cloneType = 'CLONE-FULL'}
Allow group group-name to manage autonomous-databases in compartment id compartment-ocid
where all {request.permission = 'AUTONOMOUS_DATABASE_CREATE', target.autonomous-database.cloneType = 'CLONE-METADATA'}
Allow group group-name to manage autonomous-databases in compartment id compartment-ocid
where all {request.permission = 'AUTONOMOUS_DATABASE_CREATE', target.autonomous-database.cloneType = 'CLONE-REFRESHABLE'}
Allow group group-name to manage autonomous-databases in compartment id compartment-ocid
where all {request.permission = 'AUTONOMOUS_DATABASE_CREATE', target.autonomous-database.cloneType = /CLONE*/}
詳細については、「権限」を参照してください。
Autonomous Databaseを管理するためのIAMポリシーでの特定の権限の提供
許可動詞で使用できるIAMポリシーと、より詳細な操作をグループに付与する条件をリストします。
たとえば、グループMyGroupがStartAutonomousDatabase APIを使用してAutonomous Databaseを起動できるようにするには:
Allow MyGroup to manage autonomous-databases where request.operation = 'StartAutonomousDatabase'
| 承認動詞リスト |
|---|
autonomousDatabaseManualRefresh |
changeAutonomousDatabaseCompartment |
changeAutonomousDatabaseSubscription |
changeDisasterRecoveryConfiguration |
configureAutonomousDatabaseVaultKey |
configureSaasAdminUser |
createAutonomousDatabase |
createAutonomousDatabaseBackup |
deleteAutonomousDatabase |
deleteAutonomousDatabaseBackup |
deregisterAutonomousDatabaseDataSafe |
disableAutonomousDatabaseManagement |
disableAutonomousDatabaseOperationsInsights |
enableAutonomousDatabaseManagement |
enableAutonomousDatabaseOperationsInsights |
failOverAutonomousDatabase |
generateAutonomousDatabaseWallet |
getAutonomousDatabase |
getAutonomousDatabaseBackup |
getAutonomousDatabaseRegionalWallet |
getAutonomousDatabaseWallet |
listAutonomousDatabaseBackups |
listAutonomousDatabaseCharacterSets |
listAutonomousDatabaseClones |
listAutonomousDatabaseMaintenanceWindows |
listAutonomousDatabasePeers |
listAutonomousDatabaseRefreshableClones |
listAutonomousDatabases |
registerAutonomousDatabaseDataSafe |
resourcePoolShapes |
restartAutonomousDatabase |
restoreAutonomousDatabase |
rotateAutonomousDatabaseEncryptionKey |
SaasAdminUserStatus |
shrinkAutonomousDatabase |
startAutonomousDatabase |
stopAutonomousDatabase |
switchoverAutonomousDatabase |
updateAutonomousDatabase |
updateAutonomousDatabaseBackup |
updateAutonomousDatabaseRegionalWallet |
updateAutonomousDatabaseWallet |
認可動詞updateAutonomousDatabaseは、複数のAPI操作を使用するための権限をグループ化します。
| 操作 |
|---|
DeregisterAutonomousDatabaseDataSafe |
DisableAutonomousDatabaseOperationsInsights |
DisableDatabaseManagement |
EnableAutonomousDatabaseOperationsInsights |
RegisterAutonomousDatabaseDataSafe |
たとえば:
Allow MyGroup to manage autonomous-databases where request.operation = 'updateAutonomousDatabase'