Stratégies Oracle Cloud Infrastructure GoldenGate
Pour contrôler l'accès à Oracle Cloud Infrastructure GoldenGate et le type d'accès dont dispose chaque groupe d'utilisateurs, vous devez créer des stratégies.
Par exemple, vous pouvez créer un groupe d'administrateurs dont les membres peuvent accéder à toutes les ressources OCI GoldenGate. Vous pouvez ensuite créer un groupe distinct pour toutes les autres personnes impliquées dans OCI GoldenGate, et créer des stratégies qui limitent leur accès aux ressources OCI GoldenGate dans différents compartiments.
Pour obtenir la liste complète des stratégies Oracle Cloud Infrastructure, reportez-vous à Référence de stratégie.
Création de stratégies
Les stratégies définissent les actions que les membres d'un groupe peuvent effectuer, et dans quels compartiments.
Utilisez la console Oracle Cloud pour créer des stratégies. Dans le menu de navigation de la console Oracle Cloud, sélectionnez Identité et sécurité, puis sous Identité et sélectionnez Stratégies. Les stratégies sont rédigées en utilisant la syntaxe suivante :
allow group <identity-domain>/<group-name> to <verb> <resource-type> in <location> where <condition>
Les définitions de paramètre sont les suivantes :
<identity-domain>
: (facultatif) si vous utilisez OCI IAM pour la gestion des identités, incluez le domaine d'identité du groupe d'utilisateurs. Si ce paramètre n'est pas spécifié, OCI utilise le domaine par défaut.<group-name>
: nom du groupe d'utilisateurs auquel vous accordez les droits d'accès.<verb>
: donne au groupe un certain niveau d'accès à un type de ressource. Lorsque les verbes passent deinspect
àread
, puis àuse
, et enfin àmanage
, le niveau d'accès augmente et les droits d'accès accordés sont cumulés.En savoir plus sur la relation entre .autorisations et verbes.
<resource-type>
: type de ressource avec lequel vous autorisez un groupe à travailler. Il existe des ressources individuelles, telles quegoldengate-deployments
,goldengate-pipelines
etgoldengate-connections
, et il existe des familles de ressources, telles quegoldengate-family
, qui inclut les ressources individuelles mentionnées précédemment.Pour plus d'informations, reportez-vous à Types de ressource.
<location>
: attache la stratégie à un compartiment ou à une location. Vous pouvez indiquer un seul compartiment ou chemin de compartiment par nom ou OCID, ou indiquertenancy
pour couvrir l'ensemble de la location.<condition>
: facultatif. Conditions dans lesquelles cette stratégie s'appliquera.
En savoir plus sur la syntaxe de stratégie.
Création d'une stratégie
Pour plus d'informations sur les stratégies, reportez-vous à Fonctionnement des stratégies et à Syntaxe de stratégie et à Référence de stratégie.
Stratégies minimales recommandées
Conseil :
Pour utiliser un modèle de stratégie commun afin d'ajouter toutes les stratégies requises, procédez comme suit :- Pour Cas d'utilisation de stratégie, sélectionnez Service GoldenGate dans la liste déroulante.
- Pour Modèles d'utilisation commune, sélectionnez Stratégies requises pour permettre aux utilisateurs de gérer les ressources GoldenGate dans la liste déroulante.
Au minimum, vous avez besoin de stratégies pour :
- Autoriser les utilisateurs à utiliser ou à gérer des ressources GoldenGate, afin qu'ils puissent travailler avec des déploiements et des connexions. Exemple :
allow group <identity-domain>/<group-name> to manage goldengate-family in <location>
- Autoriser les utilisateurs à gérer des ressources réseau, afin qu'ils puissent visualiser et sélectionner des compartiments et des sous-réseaux, et créer et supprimer des adresses privées lors de la création de ressources GoldenGate. Exemple :
allow group <identity-domain>/<group-name> to manage virtual-network-family in <location>
Vous pouvez sécuriser davantage les ressources réseau à l'aide d'une combinaison de stratégies granulaires. Reportez-vous à Exemples de stratégie pour la sécurisation des ressources réseau.
- Créez un groupe dynamique pour accorder des droits d'accès aux ressources en fonction de règles définies, ce qui permet à vos déploiements GoldenGate et/ou pipelines d'accéder aux ressources de votre location. Remplacez
<dynamic-group-name>
par le nom de votre choix. Vous pouvez créer autant de groupes dynamiques que nécessaire, par exemple pour contrôler les droits d'accès dans les déploiements de différents compartiments ou locations.name: <dynamic-group-name> Matching rule: ALL {resource.type = 'goldengatedeployment', resource.compartment.id = '<location>'}
Conseil :
Les stratégies qui suivent dans cette liste se réfèrent à
<dynamic-group-name>
. Si vous créez plusieurs groupes dynamiques, assurez-vous que vous faites référence au nom de groupe dynamique correct lors de l'ajout de l'une des stratégies suivantes. - Si vous utilisez des connexions avec des clés secrètes de mot de passe, le déploiement que vous affectez à la connexion doit pouvoir accéder aux clés secrètes de mot de passe de la connexion. Veillez à ajouter la stratégie à votre compartiment ou location :
allow dynamic-group <identity-domain>/<dynamic-group-name> to read secret-bundles in <location>
- Autorisez les utilisateurs à lire l'utilisateur et le groupe Identity and Access Management (IAM) pour les validations dans les locations compatibles avec IAM :
allow service goldengate to {idcs_user_viewer, domain_resources_viewer} in <location>
allow dynamic-group <identity-domain>/<dynamic-group-name> to {idcs_user_viewer, domain_resources_viewer} in <location>
- Oracle Vault, pour accéder aux clés et clés secrètes de mot de passe gérées par le client. Exemple :
allow group <identity-domain>/<group-name> to manage secret-family in <location> allow group <identity-domain>/<group-name> to use keys in <location> allow group <identity-domain>/<group-name> to use vaults in <location> allow dynamic-group <identity-domain>/<dynamic-group-name> to use keys in <location> allow dynamic-group <identity-domain>/<dynamic-group-name> to use vaults in <location> allow dynamic-group <identity-domain>/<dynamic-group-name> to read secret-bundles in <location>
Selon que vous prévoyez d'utiliser les services suivants, vous devrez peut-être également ajouter des stratégies pour :
- Oracle Database, pour vos bases de données source et/ou cible. Exemple :
allow group <identity-domain>/<group-name> to read database-family in <location>
allow group <identity-domain>/<group-name> to read autonomous-database-family in <location>
- Oracle Object Storage, pour stocker des sauvegardes OCI GoldenGate manuelles. Exemple :
allow group <identity-domain>/<group-name> to manage objects in <location> allow dynamic-group <identity-domain>/<dynamic-group-name> to manage objects in <location> allow group <identity-domain>/<group-name> to inspect buckets in <location>
- OCI Logging, pour accéder aux groupes de journaux. Exemple :
allow group <identity-domain>/<group-name> to read log-groups in <location> allow group <identity-domain>/<group-name> to read log-content in <location>
- Load Balancer, si vous activez l'accès public à la console de déploiement :
allow group <identity-domain>/<group-name> to manage load-balancers in <location> allow group <identity-domain>/<group-name> to manage public-ips in <location> allow group <identity-domain>/<group-name> to manage network-security-groups in <location> allow group <identity-domain>/<group-name> to manage vcns in <location> where ANY {request.operation = 'CreateNetworkSecurityGroup', request.operation = 'DeleteNetworkSecurityGroup'}
- Demandes de travail:
allow group <identity-domain>/<group-name> to inspect work-requests in <location>
L'instruction suivante autorise un groupe à gérer les espaces de noms de balise et les balises pour les espaces de travail :
allow group <identity-domain>/<group-name> to manage tag-namespaces in <location>
Pour ajouter une balise définie, vous devez être autorisé à utiliser l'espace de noms de balise. Pour en savoir plus sur le balisage, reportez-vous à Balises de ressource.
Pour plus d'informations et des exemples de stratégie supplémentaires, reportez-vous à Stratégies OCI GoldenGate.
Exemples de stratégie pour la sécurisation des ressources réseau
Vous pouvez facilement autoriser des utilisateurs à accéder aux ressources réseau d'un compartiment avec la stratégie suivante :
allow group <group-name> to use virtual-network-family in compartment <compartment-name>
Vous pouvez également utiliser les stratégies suivantes pour sécuriser les ressources réseau à un niveau plus granulaire :
Opération | Accès requis sur les ressources sous-jacentes |
---|---|
Créer une adresse privée | Pour le compartiment d'adresse privée :
Pour le compartiment du sous-réseau :
|
Mettre à jour une adresse privée | Pour le compartiment d'adresse privée :
|
Supprimer une adresse privée | Pour le compartiment d'adresse privée :
Pour le compartiment du sous-réseau :
|
Modifier un compartiment d'adresse privée | Si vous passez d'un compartiment à un autre, tous les droits d'accès du compartiment d'origine doivent également être présents dans le nouveau compartiment. |
Types de ressource
Oracle Cloud Infrastructure GoldenGate offre des types de ressource individuels et agrégés pour l'écriture de stratégies.
Type agrégé de ressource | Types de ressource individuels |
---|---|
goldengate-family |
|
Les API couvertes pour le type agrégé de ressource goldengate-family
le sont également pour chacun des types individuels de ressource. Exemple :
allow group gg-admins to manage goldengate-family in compartment <compartment-name>
revient à écrire les stratégies suivantes :
allow group gg-admins to manage goldengate-deployments in compartment <compartment-name>
allow group gg-admins to manage goldengate-connections in compartment <compartment-name>
allow group gg-admins to manage goldengate-connection-assignments in compartment <compartment-name>
allow group gg-admins to manage goldengate-deployment-upgrades in compartment <compartment-name>
allow group gg-admins to manage goldengate-deployment-backups in compartment <compartment-name>
allow group gg-admins to manage goldengate-pipeline in compartment <compartment-name>
Variables prises en charge
Lorsque vous ajoutez des conditions aux stratégies, vous pouvez utiliser les variables Oracle Cloud Infrastructure générales ou propres au service.
Oracle Cloud Infrastructure GoldenGate prend en charge toutes les variables générales. Pour plus d'informations, reportez-vous à Variables générales pour toutes les demandes.
Détails des combinaisons de verbe et de type de ressource
Vous pouvez utiliser différents verbes et types de ressource Oracle Cloud Infrastructure lorsque vous créez une stratégie.
Les tableaux suivants indiquent les droits d'accès et les opérations d'API couverts par chaque verbe pour Oracle Cloud Infrastructure GoldenGate. Le niveau d'accès est cumulatif à mesure que vous passez d'un verbe à l'autre, dans l'ordre suivant : inspect
, read
, use
, manage
.
goldengate-deployments
Droit | API entièrement couvertes |
---|---|
INSPECT | |
GOLDENGATE_DEPLOYMENT_INSPECT | ListDeployments |
READ | |
INSPECT + | INSPECT+ |
GOLDENGATE_DEPLOYMENT_READ | GetDeployment |
USE | |
READ + | READ + |
GOLDENGATE_DEPLOYMENT_UPDATE | UpdateDeployment |
StartDeployment | |
StopDeployment | |
RestoreDeployment | |
MANAGE | |
USE + | USE + |
GOLDENGATE_DEPLOYMENT_CREATE | CreateDeployment |
GetWorkRequest | |
ListWorkRequests | |
ListWorkRequestErrors | |
ListWorkRequestLogs | |
GOLDENGATE_DEPLOYMENT_DELETE | DeleteDeployment |
GOLDENGATE_DEPLOYMENT_MOVE | ChangeDeploymentCompartment |
goldengate-connections
Droit | API entièrement couvertes |
---|---|
INSPECT | |
GOLDENGATE_CONNECTION_INSPECT | ListConnections |
READ | |
INSPECT + | INSPECT+ |
GOLDENGATE_CONNECTION_READ | GetConnection |
USE | |
READ + | READ + |
GOLDENGATE_CONNECTION_UPDATE | UpdateConnection |
MANAGE | |
USE + | USE + |
GOLDENGATE_CONNECTION_CREATE | CreateConnection |
GOLDENGATE_CONNECTION_DELETE | DeleteConnection |
GOLDENGATE_CONNECTION_MOVE | ChangeConnectionCompartment |
goldengate-connexion-affectations
Droit | API entièrement couvertes |
---|---|
INSPECT | |
GOLDENGATE_CONNECTION_ASSIGNMENT_INSPECT | ListConnectionAssignments |
READ | |
INSPECT + | INSPECT+ |
GOLDENGATE_CONNECTION_ASSIGNMENT_READ | GetConnectionAssignment |
USE | |
READ + | READ + |
N/A | N/A |
MANAGE | |
USE + | USE + |
GOLDENGATE_CONNECTION_ASSIGNMENT_CREATE | CreateConnectionAssignment |
GOLDENGATE_CONNECTION_ASSIGNMENT_DELETE | DeleteConnectionAssignment |
goldengate-deployment-backups
Droit | API entièrement couvertes |
---|---|
INSPECT | |
GOLDENGATE_DEPLOYMENT_BACKUP_INSPECT | ListDeploymentBackups |
READ | |
INSPECT + | INSPECT+ |
GOLDENGATE_DEPLOYMENT_BACKUP_READ | GetDeploymentBackup |
RestoreDeployment | |
USE | |
READ + | READ + |
GOLDENGATE_DEPLOYMENT_BACKUP_UPDATE | UpdateDeploymentBackup |
MANAGE | |
USE + | USE + |
GOLDENGATE_DEPLOYMENT_BACKUP_CREATE | CreateDeploymentBackup |
GOLDENGATE_DEPLOYMENT_BACKUP_DELETE | DeleteDeploymentBackup |
GOLDENGATE_DEPLOYMENT_BACKUP_MOVE | ChangeDeploymentBackupCompartment |
Droits d'accès requis pour chaque opération d'API
Voici la liste des opérations d'API pour Oracle Cloud Infrastructure GoldenGate dans l'ordre logique, regroupées par type de ressource.
Les types de ressource sont goldengate-deployments
, goldengate-connections
et goldengate-deployment-backups
.
Opération d'API | Droit |
---|---|
ListDeployments |
GOLDENGATE_DEPLOYMENT_INSPECT |
CreateDeployment |
GOLDENGATE_DEPLOYMENT_CREATE |
GetDeployment |
GOLDENGATE_DEPLOYMENT_READ |
UpdateDeployment |
GOLDENGATE_DEPLOYMENT_UPDATE |
DeleteDeployment |
GOLDENGATE_DEPLOYMENT_DELETE |
StartDeployment |
GOLDENGATE_DEPLOYMENT_UPDATE |
StopDeployment |
GOLDENGATE_DEPLOYMENT_UPDATE |
RestoreDeployment |
GOLDENGATE_DEPLOYMENT_BACKUP_READ et GOLDENGATE_DEPLOYMENT_UPDATE |
ChangeDeploymentCompartment |
GOLDENGATE_DEPLOYMENT_MOVE |
UpgradeDeployment |
GOLDENGATE_DEPLOYMENT_UPDATE |
ListConnections |
GOLDENGATE_CONNECTION_INSPECT |
CreateConnection |
GOLDENGATE_CONNECTION_CREATE |
GetConnection |
GOLDENGATE_CONNECTION_READ |
UpdateConnection |
GOLDENGATE_CONNECTION_UPDATE |
DeleteConnection |
GOLDENGATE_CONNECTION_DELETE |
ChangeConnectionCompartment |
GOLDENGATE_CONNECTION_MOVE |
ListConnectionAssignments |
GOLDENGATE_CONNECTION_ASSIGNMENT_INSPECT |
CreateConnectionAssignment |
GOLDENGATE_CONNECTION_ASSIGNMENT_CREATE, GOLDENGATE_DEPLOYMENT_UPDATE, GOLDENGATE_CONNECTION_UPDATE |
GetConnectionAssignment |
GOLDENGATE_CONNECTION_ASSIGNMENT_READ |
DeleteConnectionAssignment |
GOLDENGATE_CONNECTION_ASSIGNMENT_DELETE, GOLDENGATE_DEPLOYMENT_UPDATE, GOLDENGATE_CONNECTION_UPDATE |
ListDeploymentBackups |
GOLDENGATE_DEPLOYMENT_BACKUP_INSPECT |
GetDeploymentBackup |
GOLDENGATE_DEPLOYMENT_BACKUP_READ |
CreateDeploymentBackup |
GOLDENGATE_DEPLOYMENT_BACKUP_CREATE, GOLDENGATE_DEPLOYMENT_READ |
UpdateDeploymentBackup |
GOLDENGATE_DEPLOYMENT_BACKUP_UPDATE |
CancelDeploymentBackup |
GOLDENGATE_DEPLOYMENT_BACKUP_UPDATE |
DeleteDeploymentBackup |
GOLDENGATE_DEPLOYMENT_BACKUP_DELETE |
ChangeDeploymentBackupCompartment |
GOLDENGATE_DEPLOYMENT_BACKUP_MOVE |
GetDeploymentUpgrade |
GOLDENGATE_DEPLOYMENT_UPGRADE_READ |
ListDeploymentUpgrades |
GOLDENGATE_DEPLOYMENT_UPGRADE_INSPECT |
GetWorkRequest |
GOLDENGATE_DEPLOYMENT_CREATE |
ListWorkRequests |
GOLDENGATE_DEPLOYMENT_CREATE |
ListWorkRequestErrors |
GOLDENGATE_DEPLOYMENT_CREATE |
ListWorkRequestLogs |
GOLDENGATE_DEPLOYMENT_CREATE |