OCI Database with PostgreSQLポリシー

Use the Oracle Cloud Infrastructure Identity and Access Management (IAM) service to create policies  for OCI Database with PostgreSQL resources.

このトピックでは、PostgreSQLOCI Database with PostgreSQLサービスを使用したOCIデータベースへのアクセスを制御するポリシーの記述の詳細を説明します。詳細は、ポリシーの開始を参照してください。

ポリシー構文の概要

ポリシー・ステートメント全体の構文:

allow <subject> to <verb> <resource-type> in <location> where <condition>

たとえば、次のように指定できます。

  • <subject>として、グループまたは動的グループの名前またはOCID。または、any-userを使用して、テナンシ内のすべてのユーザーを含めることができます。

  • <subject>に1つ以上の権限のアクセス権を付与するため、<verb> として、inspectreaduseおよびmanage

    inspectreadusemanageと進むに連れて、アクセス権のレベルは一般に高くなり、付与される権限は累積されます。たとえば、useには、readに加えて更新する権限が含まれます。

  • resource-typeにはリソースのファミリ(virtual-network-familyなど)。または、vcnssubnetsなど、ファミリ内の個々のリソースを指定できます。

  • <location>として、コンパートメントの名前またはOCID。または、tenancyを使用して、テナンシ全体を含めることができます。

ポリシーの作成の詳細は、ポリシーの開始およびポリシー参照を参照してください。

リソース・タイプ

To give users access to OCI Database with PostgreSQL resources, create IAM policies with OCI Database with PostgreSQL resource types.

PostgreSQLOCI Database with PostgreSQLリソースを含むOCI Databaseにアクセスするには、次の各リソース・タイプを使用します:

  • postgres-dbシステム
  • ポストグレスバックアップ
  • 構成後
  • Postgres-workリクエスト

詳細は、ポリシーの例を参照してください。

サポートされる変数

OCI Database with PostgreSQLサービスは、すべての一般的な変数をサポートしています。

OCIサービスでサポートされる一般的な変数の詳細は、すべてのリクエストの一般的な変数に関する項を参照してください。

動詞+リソース・タイプの組合せの詳細

ポリシーの作成には、様々なOracle Cloud Infrastructure動詞とリソース・タイプを使用できます。

The following tables show the permissions and API operations covered by each verb for OCI Database with PostgreSQL.アクセスのレベルは、inspectからreadusemanageの順に累積します。表のセルのプラス記号(+)は、そのすぐ上のセルと比較して増分アクセスを示しますが、「追加なし」は増分アクセスを示しません。

postgres-db-systems
動詞 権限 完全に対象となるAPI 一部カバーされたAPI
inspect

POSTGRES_DB_SYSTEM_INSPECT

ListDbSystems

なし

読取り

INSPECT +

POSTGRES_DB_SYSTEM_READ

INSPECT +

GetDbSystem

GetConnectionDetails

GetManagementPolicy

GetPrimaryDbInstance

なし

使用

READ +

POSTGRES_DB_SYSTEM_UPDATE

POSTGRES_DB_SYSTEM_RESTART

READ +

UpdateDbSystem

UpdateManagementPolicy

FailoverDbSystem

RestoreDbSystem

ResetMasterUserPassword

UpdateDbSystemDbInstance

RestartDbInstanceInDbSystem

GetConfiguration

GetBackup

管理

USE +

POSTGRES_DB_SYSTEM_CREATE

POSTGRES_DB_SYSTEM_DELETE

POSTGRES_DB_SYSTEM_MOVE

USE +

CreateDbsystem

DeleteDbSystem

ChangeDbSystemCompartment

GetConfiguration

GetBackup

postgres-backups
動詞 権限 完全に対象となるAPI 一部カバーされたAPI
inspect

POSTGRES_BACKUP_INSPECT

ListBackups

なし

読取り

INSPECT +

POSTGRES_BACKUP_READ

INSPECT +

GetBackup

なし

使用

READ +

POSTGRES_BACKUP_UPDATE

READ +

UpdateBackup

なし

管理

USE +

POSTGRES_BACKUP_CREATE

POSTGRES_BACKUP_DELETE

POSTGRES_BACKUP_MOVE

POSTGRES_BACKUP_COPY

USE +

CreateBackup

DeleteBackup

ChangeBackupCompartment

BackupCopy

GetDbSystem

postgres-configurations
動詞 権限 完全に対象となるAPI 一部カバーされたAPI
inspect

POSTGRES_CONFIGURATION_INSPECT

ListConfigurations

なし

読取り

INSPECT +

POSTGRES_CONFIGURATION_READ

INSPECT +

GetConfiguration

なし

使用

READ +

POSTGRES_CONFIGURATION_UPDATE

READ +

UpdateConfiguration

なし

管理

USE +

POSTGRES_CONFIGURATION_CREATE

POSTGRES_CONFIGURATION_DELETE

POSTGRES_CONFIGURATION_MOVE

USE +

CreateConfiguration

DeleteConfiguration

ChangeConfigurationCompartment

なし

postgres-work-requests
動詞 権限 完全に対象となるAPI 一部カバーされたAPI
inspect

POSTGRES_WORK_REQUEST_INSPECT

ListWorkRequests

ListWorkRequestErrors

ListWorkRequestLogs

なし

読取り

INSPECT +

POSTGRES_WORK_REQUEST_READ

INSPECT +

GetWorkRequest

なし

API操作ごとに必要な権限

次の表は、OCI Database with PostgreSQLのAPI操作を論理的な順序で、リソース・タイプ別にグループ化したものです。

リソース・タイプは、postgres-db-systemspostgres-backupspostgres-configurationsおよびpostgres-work-requestsです。

権限の詳細は、権限を参照してください。

必要な権限
API操作 操作の使用に必要な権限
ListDbSystems POSTGRES_DB_SYSTEM_INSPECT
GetDbSystem POSTGRES_DB_SYSTEM_READ
CreateDbsystem POSTGRES_DB_SYSTEM_CREATE
UpdateDbSystem POSTGRES_DB_SYSTEM_UPDATE
DeleteDbSystem POSTGRES_DB_SYSTEM_DELETE
GetConnectionDetails POSTGRES_DB_SYSTEM_READ
GetManagementPolicy POSTGRES_DB_SYSTEM_READ
CreateManagementPolicy POSTGRES_DB_SYSTEM_CREATE
UpdateManagementPolicy POSTGRES_DB_SYSTEM_UPDATE
DeleteManagementPolicy POSTGRES_DB_SYSTEM_DELETE
ChangeDbSystemCompartment POSTGRES_DB_SYSTEM_MOVE
FailoverDbSystem POSTGRES_DB_SYSTEM_UPDATE
RestartDbSystem POSTGRES_DB_SYSTEM_RESTART
ListShapes なし。認証されたユーザーは、シェイプをリストできます。
ListBackups POSTGRES_BACKUP_INSPECT
GetBackup POSTGRES_BACKUP_READ
CreateBackup POSTGRES_BACKUP_CREATE
UpdateBackup POSTGRES_BACKUP_UPDATE
DeleteBackup POSTGRES_BACKUP_DELETE
BackupCopy POSTGRES_BACKUP_COPY
ChangeBackupCompartment POSTGRES_BACKUP_MOVE
ListConfigurations POSTGRES_CONFIGURATION_INSPECT
GetConfiguration POSTGRES_CONFIGURATION_READ
CreateConfiguration POSTGRES_CONFIGURATION_CREATE
UpdateConfiguration POSTGRES_CONFIGURATION_UPDATE
DeleteConfiguration POSTGRES_CONFIGURATION_DELETE
ChangeConfigurationCompartment POSTGRES_CONFIGURATION_MOVE
ListWorkRequests POSTGRES_WORK_REQUEST_INSPECT
GetWorkRequest POSTGRES_WORK_REQUEST_READ
ListWorkRequestErrors POSTGRES_WORK_REQUEST_READ
ListWorkRequestLogs POSTGRES_WORK_REQUEST_READ

ポリシーの例

次のポリシー・ステートメントを使用すると、管理者のグループがPostgreSQLOCI Database with PostgreSQLデータベース・システムでOCI Databaseを管理できます:

Allow group <postgresql-admin-group> to read compartments in tenancy
Allow group <postgresql-admin-group> to manage postgres-db-systems in [ tenancy | compartment <compartment_name> | compartment id <compartment_OCID> ]
Allow group <postgresql-admin-group> to manage postgres-backups in [ tenancy | compartment <compartment_name> | compartment id <compartment_OCID> ]
Allow group <postgresql-admin-group> to read postgres-work-requests in [ tenancy | compartment <compartment_name> | compartment id <compartment_OCID> ]
Allow group <postgresql-admin-group> to manage postgres-configuration in [ tenancy | compartment <compartment_name> | compartment id <compartment_OCID> ]
Allow group <postgresql-admin-group> to manage virtual-network-family in [ tenancy | compartment <compartment_name> | compartment id <compartment_OCID> ]
Allow group <postgresql-admin-group> to read secret-family in [ tenancy | compartment <compartment_name> | compartment id <compartment_OCID> ]
Allow group <postgresql-admin-group> to read vaults in [ tenancy | compartment <compartment_name> | compartment id <compartment_OCID> ]
Allow group <postgresql-admin-group> to read metrics in [ tenancy | compartment <compartment_name> | compartment id <compartment_OCID> ]
Allow group <postgresql-admin-group> to use tag-namespaces in tenancy

The following policy statements allow a group of administrators to manage OCI Database with PostgreSQL database backups:

Allow group <postgresql-admin-group> to read compartments in tenancy
Allow group <postgresql-admin-group> to manage postgres-backups in [ tenancy | compartment <compartment_name> | compartment id <compartment_OCID> ]
Allow group <postgresql-admin-group> to read postgres-db-systems in [ tenancy | compartment <compartment_name> | compartment id <compartment_OCID> ]
Allow group <postgresql-admin-group> to use tag-namespaces in tenancy

次のポリシー・ステートメントを使用すると、管理者のグループがPostgreSQLOCI Database with PostgreSQLデータベース構成でOCI Databaseを管理できます:

Allow group <postgresql-admin-group> to read compartments in tenancy
Allow group <postgresql-admin-group> to manage postgres-configuration in [ tenancy | compartment <compartment_name> | compartment id <compartment_OCID> ]
Allow group <postgresql-admin-group> to use tag-namespaces in tenancy

次のポリシー・ステートメントを使用すると、管理者のグループは、指定されたコンパートメント内のPostgreSQLOCI Database with PostgreSQLリソースを使用してOCI Databaseを管理できます:

Allow group <postgresql-admin-group> to manage postgres-db-systems in compartment <database_compartment>
Allow group <postgresql-admin-group> to manage postgres-backups in compartment <database_compartment>
Allow group <postgresql-admin-group> to manage postgres-configurations in compartment <database_compartment>
Allow group <postgresql-admin-group> to read postgres-work-requests in compartment <database_compartment>

次の文を使用すると、ユーザーのグループがデータベースを使用できます。つまり、既存のデータベースを更新または再起動できますが、データベースを作成または削除することはできません。

Allow group <postgresql-user-group> to use postgres-db-systems in compartment <database_compartment>