Pour les connexions aux bases de données Oracle

Exemples de politiques pour le service d'outils de base de données

Voici cinq personnalités différentes qui peuvent utiliser le service d'outils de base de données. Chaque persona peut avoir un niveau d'accès différent au service Oracle Cloud Infrastructure associé, comme le montre le tableau suivant :

Tableau 7-1 : Exemples de politiques

Persona Famille Réseau virtuel Famille Base de données ou Base de données autonome Chambres fortes Clés Famille Clé secrète Famille Service d'outils de base de données Connexion au service d'outils de base de données
Administrateur du service d'outils de base de données manage manage manage manage manage manage --
Gestionnaire du service d'outils de base de données manage read use use manage manage --
Gestionnaire de connexions du service d'outils de base de données use read use use manage use manage
Connexion au service d'outils de base de données avec utilisateur principal authentifié -- read -- -- read read use
Connexion au service d'outils de base de données avec l'identité d'exécution du principal de ressource -- read -- -- -- read use

Administrateur du service d'outils de base de données

L'administrateur du service d'outils de base de données peut gérer tous les aspects du service. Les politiques suivantes lui accordent les autorisations requises pour gérer le réseau, les chambres fortes, les clés, les clés secrètes, les bases de données et le service d'outils de base de données dans un compartiment spécifique.

Remplacez les paramètres fictifs <group_name> et <compartment_name> par vos propres valeurs.

Tableau 7-2 : Politiques pour les administrateurs du service d'outils de base de données

Politique Niveau d'accès
allow group <group_name> to manage virtual-network-family
 in compartment <compartment_name>
Permet de gérer les réseaux en nuage virtuels, les sous-réseaux, les cartes d'interface de réseau virtuel, les groupes de sécurité de réseau.
allow group <group_name> to manage database-family 
in compartment <compartment_name>
Permet de gérer le service Database Cloud (systèmes de base de données sur machine virtuelle et sans système d'exploitation, ou grappes de machines virtuelles du service Exadata Cloud).
allow group <group_name> to manage autonomous-database-family
 in compartment <compartment_name>
Permet de lire les bases de données autonomes sur une infrastructure Exadata partagée et dédiée.
allow group <group_name> to manage vaults 
in compartment <compartment_name>
Permet de gérer les coffres-forts.
allow group <group_name> to manage keys 
in compartment <compartment_name>
Permet de gérer les clés.
allow group <group_name> to manage secret-family 
in compartment <compartment_name>
Permet de gérer les secrets.
allow group <group_name> to manage database-tools-family 
in compartment <compartment_name>
Permet de gérer le service d'outils de base de données.

Gestionnaire du service d'outils de base de données

Le gestionnaire du service d'outils de base de données peut gérer les connexions réseau (y compris les points d'extrémité privés), les clés secrètes et les connexions au service d'outils de base de données. En revanche, il a un accès limité aux services de chambre forte et de base de données pour Oracle Cloud Infrastructure.

Remplacez <group_name> et <compartment_name> par vos propres valeurs.

Tableau 7-3 : Politiques pour le gestionnaire du service d'outils de base de données

Politique Niveau d'accès
allow group <group_name> to manage virtual-network-family 
in compartment <compartment_name>
Permet d'utiliser des réseaux en nuage virtuels, des sous-réseaux, des cartes d'interface de réseau virtuel et des groupes de sécurité de réseau.
allow group <group_name> to read database-family 
in compartment <compartment_name>
Permet de lire le service Database Cloud (systèmes de base de données sur machine virtuelle et sans système d'exploitation, ou grappes de machines virtuelles du service Exadata Cloud).
allow group <group_name> to read autonomous-database-family 
in compartment <compartment_name>
Permet de lire les bases de données autonomes sur une infrastructure Exadata partagée et dédiée.
allow group <group_name> to use vaults 
in compartment <compartment_name>
Permet d'utiliser une chambre forte (par exemple, pour créer une clé secrète).
allow group <group_name> to use keys 
in compartment <compartment_name>
Permet d'utiliser des clés (par exemple, pour créer une clé secrète).
allow group <group_name> to manage secret-family 
in compartment <compartment_name>
Permet de gérer les secrets.
allow group <group_name> to manage database-tools-family 
in compartment <compartment_name>
Permet de gérer le service d'outils de base de données.

Gestionnaire de connexions du service d'outils de base de données

Le gestionnaire de connexions du service d'outils de base de données gère la création de connexions aux services de base de données et dispose d'un accès en lecture seule sur les autres services.

Remplacez <group_name> et <compartment_name> par vos propres valeurs.

Si vous utilisez une clause WHERE dans la politique pour restreindre l'accès en fonction de l'OCID de la connexion, utilisez les éléments suivants :

where target.resource.id = <connection-ocid>

Pour utiliser SQL Worksheet avec une connexion au service d'outils de base de données, vous devez accorder à un utilisateur l'autorisation inspect pour toutes les connexions au service d'outils de base de données dans un compartiment. Sans cette autorisation, un utilisateur ne peut pas voir de connexion au service d'outils de base de données dans la page Connexions ni sélectionner de connexion dans la liste déroulante SQL Worksheet. Par exemple, l'énoncé de politique suivant restreint un groupe spécifié à use uniquement l'OCID de connexion au service d'outils de base de données spécifié.

allow group <group-name> to use database-tools-connections in compartment <compartment-name> where all { target.resource.id = '<connection-ocid>' }

Même dans de tels scénarios, vous devez toujours fournir l'énoncé de politique inconditionnel suivant pour permettre au groupe spécifié de lister les connexions au service d'outils de base de données.

allow group <group-name> to inspect database-tools-connections in compartment <compartment-name>

Cette autorisation inspect inconditionnelle permet aux utilisateurs de voir toutes les connexions au service d'outils de base de données dans le compartiment, y compris celles pour lesquelles ils n'ont pas d'accès use. Si vous devez accorder à différents groupes l'accès à différents jeux de connexions sans exposer toutes les connexions, Oracle recommande de créer des compartiments distincts pour chaque jeu de connexions au service d'outils de base de données, puis d'accorder les autorisations inspect et use au niveau du compartiment, le cas échéant.

Tableau 7-4 : Politiques pour le gestionnaire de connexions du service d'outils de base de données

Politique Niveau d'accès
allow group <group_name> to use virtual-network-family 
in compartment <compartment_name>
Permet d'utiliser des réseaux en nuage virtuels, des sous-réseaux, des cartes d'interface de réseau virtuel et des groupes de sécurité de réseau.
allow group <group_name> to read database-family 
in compartment <compartment_name>
Permet de lire le service Database Cloud (systèmes de base de données sur machine virtuelle et sans système d'exploitation, ou grappes de machines virtuelles du service Exadata Cloud).
allow group <group_name> to read autonomous-database-family 
in compartment <compartment_name>
Permet de lire les bases de données autonomes sur une infrastructure Exadata partagée et dédiée.
allow group <group_name> to use vaults 
in compartment <compartment_name>
Permet d'utiliser une chambre forte (par exemple, pour créer une clé secrète).
allow group <group_name> to use keys 
in compartment <compartment_name>
Permet d'utiliser des clés (par exemple, pour créer une clé secrète).
allow group <group_name> to manage secret-family 
in compartment <compartment_name>
Permet de gérer les secrets.
allow group <group_name> to use database-tools-family 
in compartment <compartment_name>
Permet d'utiliser les points d'extrémité privés ou les services de point d'extrémité du service d'outils de base de données.
allow group <group_name> to manage database-tools-connections 
in compartment <compartment_name>
Permet de gérer les connexions au service d'outils de base de données.

Connexion aux outils de base de données avec identité d'exécution principale authentifiée

Ces politiques s'appliquent aux connexions au service d'outils de base de données lorsque l'identité d'exécution utilise AUTHENTICATED_PRINCIPAL.

Si vous voulez empêcher les utilisateurs de lire des clés secrètes, utilisez plutôt la connexion au service d'outils de base de données avec le principal de ressource. Voir Connexion au service d'outils de base de données avec l'identité d'exécution du principal de ressource.

Le tableau suivant répertorie les politiques et les niveaux d'accès associés pour la connexion au service d'outils de base de données avec l'identité d'exécution du principal authentifié.

Tableau 7-5 : Politiques pour la connexion au service d'outils de base de données avec une identité d'exécution principale authentifiée

Politique Niveau d'accès
allow group <group_name> to read database-family 
in compartment <compartment_name>
Permet de lire le service Database Cloud (systèmes de base de données sur machine virtuelle et sans système d'exploitation, ou grappes de machines virtuelles du service Exadata Cloud).
allow group <group_name> to read autonomous-database-family 
in compartment <compartment_name>
Permet de lire les bases de données autonomes sur une infrastructure Exadata partagée et dédiée.
allow group <group_name> to read secret-family 
in compartment <compartment_name>
Permet de lire les clés secrètes.
allow group <group_name> to read database-tools-family 
in compartment <compartment_name>
Permet de lire les points d'extrémité privés et les services de point d'extrémité du service d'outils de base de données.
allow group <group_name> to use database-tools-connections 
in compartment <compartment_name>
Permet d'utiliser les connexions au service d'outils de base de données.

Remplacez <group_name> et <compartment_name> par des valeurs basées sur votre environnement.

Connexion au service d'outils de base de données avec l'identité d'exécution du principal de ressource

Ces politiques s'appliquent aux connexions au service d'outils de base de données lorsque l'identité d'exécution utilise RESOURCE_PRINCIPAL.

Pour empêcher les utilisateurs de lire les clés secrètes, utilisez la connexion du service d'outils de base de données avec l'identité d'exécution du principal de ressource. Un utilisateur de la connexion au service d'outils de base de données avec l'identité d'exécution du principal de ressource ne peut utiliser que les connexions de base de données précréées qui sont créées avec le service d'outils de base de données OCI et l'utilisateur ne peut pas voir les valeurs de clé secrète. Voir Principal de ressource.

Le tableau suivant répertorie les groupes dynamiques et inclut les ressources pour la connexion du service d'outils de base de données au principal de ressource.

Tableau 7-6 : Groupe dynamique pour la connexion au service d'outils de base de données avec principal de ressource

Règle de correspondance de groupe dynamique Inclusions
ALL {resource.type='databasetoolsconnection', resource.compartment.id =
    <compartment_name>}
Inclut toutes les connexions à l'outil de base de données trouvées dans le compartiment.
All {resource.id = <connection_ocid>, resource.compartment.id =
    <compartment_name>}
Inclut uniquement la connexion spécifiée au service d'outils de base de données.

Remplacez <group_name>, <compartment_name>, <connection_ocid> et <dynamic_group_name> par des valeurs basées sur votre environnement.

Le tableau suivant répertorie les politiques et les niveaux d'accès associés pour la connexion au service d'outils de base de données avec l'identité d'exécution du principal de ressource.

Tableau 7-7 : Politiques pour la connexion au service d'outils de base de données avec l'identité d'exécution du principal de ressource

Politique Niveau d'accès
allow group <group_name> to read database-family 
in compartment <compartment_name>
Permet de lire le service Database Cloud (systèmes de base de données sur machine virtuelle et sans système d'exploitation, ou grappes de machines virtuelles du service Exadata Cloud).
allow group <group_name> to read autonomous-database-family 
in compartment <compartment_name>
Permet de lire les bases de données autonomes sur une infrastructure Exadata partagée et dédiée.
allow group <group_name> to read database-tools-family in compartment <compartment_name>
Permet de lire les points d'extrémité privés, les connexions et les services de point d'extrémité du service d'outils de base de données.
allow group <group_name> to use database-tools-connections in compartment <compartment_name>
Permet d'utiliser les connexions au service d'outils de base de données.
allow group <group_name> to read secret-family 
in compartment <compartment_name>
Pour donner aux membres du groupe dynamique l'accès aux clés secrètes de lecture

Remplacez <group_name>, <compartment_name>, <connection_ocid> et <dynamic_group_name> par des valeurs basées sur votre environnement.