OCI Database with PostgreSQL Policies

Utilisez le service Oracle Cloud Infrastructure Identity and Access Management (IAM) pour créer des politiques pour la base de données OCI Database with PostgreSQL.

Cette rubrique présente des détails sur l'écriture de politiques permettant de contrôler l'accès au service OCI Database with PostgreSQL. Pour plus d'informations, voir Introduction aux politiques.

Aperçu de la syntaxe d'une politique

La syntaxe globale d'un énoncé de politique est la suivante :

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

Par exemple, vous pouvez spécifier :

  • Un groupe ou un groupe dynamique par nom ou OCID comme <subject>. Vous pouvez également utiliser any-user pour couvrir tous les utilisateurs de la location.

  • inspect, read, use et manage comme <verb> pour accorder à <subject> l'accès à une ou plusieurs autorisations.

    inspect > read > use > manage représentent des niveaux d'accès croissants et les autorisations octroyées sont cumulatives. Par exemple, use inclut read et la possibilité de mettre à jour.

  • Une famille de ressources comme virtual-network-family pour resource-type. Vous pouvez également spécifier une ressource individuelle d'une famille telle que vcns et subnets.

  • Un compartiment par nom ou OCID comme <location>. Vous pouvez également utiliser tenancy pour couvrir l'ensemble de la location.

Pour plus d'informations sur la création de politiques, voir Introduction aux politiques et Informations de référence sur les politiques.

Types de ressource

Pour donner aux utilisateurs l'accès aux ressources OCI Database with PostgreSQL, créez des politiques IAM avec les types de ressource OCI Database with PostgreSQL.

Pour accéder aux ressources OCI Database with PostgreSQL, utilisez chacun des types de ressource suivants :

  • postgres-db-systèmes
  • post-sauvegardes
  • postgres-configurations
  • postgres-demandes de travail

Pour plus d'informations, voir Exemples de politiques.

Variables prises en charge

Le service OCI Database with PostgreSQL prend en charge toutes les variables générales.

Pour plus d'informations sur les variables générales prises en charge par les services OCI, voir Variables générales pour toutes les demandes.

Détails pour les combinaisons Verbes + Type de ressource

Vous pouvez utiliser divers verbes et types de ressource Oracle Cloud Infrastructure pour créer une politique.

Les tableaux suivants présentent les autorisations et les opérations d'API couvertes par chaque verbe pour OCI Database with PostgreSQL. Le niveau d'accès est cumulatif au fur et à mesure que vous progressez depuis inspect à read, use et manage. Un signe plus (+) dans une cellule de tableau indique un accès supplémentaire par rapport à la cellule qui la précède directement, alors que "aucun accès supplémentaire" indique qu'il n'y a aucun accès supplémentaire.

postgres-db-systems
Verbes Permissions API entièrement couvertes API partiellement couvertes
inspect

POSTGRES_DB_SYSTEM_INSPECT

ListDbSystems

aucune

lire

INSPECT +

POSTGRES_DB_SYSTEM_READ

INSPECT +

GetDbSystem

GetConnectionDetails

GetManagementPolicy

GetPrimaryDbInstance

aucune

use

READ +

POSTGRES_DB_SYSTEM_UPDATE

POSTGRES_DB_SYSTEM_RESTART

READ +

UpdateDbSystem

UpdateManagementPolicy

FailoverDbSystem

RestoreDbSystem

ResetMasterUserPassword

UpdateDbSystemDbInstance

RestartDbInstanceInDbSystem

GetConfiguration

GetBackup

manage

USE +

POSTGRES_DB_SYSTEM_CREATE

POSTGRES_DB_SYSTEM_DELETE

POSTGRES_DB_SYSTEM_MOVE

USE +

CreateDbsystem

DeleteDbSystem

ChangeDbSystemCompartment

GetConfiguration

GetBackup

postgres-backups
Verbes Permissions API entièrement couvertes API partiellement couvertes
inspect

POSTGRES_BACKUP_INSPECT

ListBackups

aucune

lire

INSPECT +

POSTGRES_BACKUP_READ

INSPECT +

GetBackup

aucune

use

READ +

POSTGRES_BACKUP_UPDATE

READ +

UpdateBackup

aucune

manage

USE +

POSTGRES_BACKUP_CREATE

POSTGRES_BACKUP_DELETE

POSTGRES_BACKUP_MOVE

POSTGRES_BACKUP_COPY

USE +

CreateBackup

DeleteBackup

ChangeBackupCompartment

BackupCopy

GetDbSystem

postgres-configurations
Verbes Permissions API entièrement couvertes API partiellement couvertes
inspect

POSTGRES_CONFIGURATION_INSPECT

ListConfigurations

aucune

lire

INSPECT +

POSTGRES_CONFIGURATION_READ

INSPECT +

GetConfiguration

aucune

use

READ +

POSTGRES_CONFIGURATION_UPDATE

READ +

UpdateConfiguration

aucune

manage

USE +

POSTGRES_CONFIGURATION_CREATE

POSTGRES_CONFIGURATION_DELETE

POSTGRES_CONFIGURATION_MOVE

USE +

CreateConfiguration

DeleteConfiguration

ChangeConfigurationCompartment

aucune

postgres-work-requests
Verbes Permissions API entièrement couvertes API partiellement couvertes
inspect

POSTGRES_WORK_REQUEST_INSPECT

ListWorkRequests

ListWorkRequestErrors

ListWorkRequestLogs

aucune

lire

INSPECT +

POSTGRES_WORK_REQUEST_READ

INSPECT +

GetWorkRequest

aucune

Autorisations requises pour chaque opération d'API

Le tableau suivant liste les opérations d'API pour OCI Database with PostgreSQL dans un ordre logique, regroupées par type de ressource.

Les types de ressource sont postgres-db-systems, postgres-backups, postgres-configurations et postgres-work-requests.

Pour plus d'informations sur les autorisations, voir Autorisations.

Autorisations requises
Opération d'API Autorisations requises pour utiliser l'opération
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 Aucun. Tout utilisateur authentifié peut lister les formes.
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

Exemples de politique

Les énoncés de politique suivants permettent à un groupe d'administrateurs de gérer la base de données OCI Database with PostgreSQL :

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

Les énoncés de politique suivants permettent à un groupe d'administrateurs de gérer les sauvegardes de base de données OCI Database with PostgreSQL :

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

Les énoncés de politique suivants permettent à un groupe d'administrateurs de gérer les configurations de base de données OCI Database with PostgreSQL :

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

Les énoncés de politique suivants permettent à un groupe d'administrateurs de gérer la base de données OCI Database with PostgreSQL dans le compartiment spécifié :

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>

L'instruction suivante permet à un groupe d'utilisateurs d'utiliser des bases de données, ce qui signifie qu'ils peuvent mettre à jour ou redémarrer une base de données existante, mais pas en créer ou en supprimer une :

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