Politiques GIA pour DevOps

Créez des politiques GIA pour contrôler les utilisateurs ayant accès aux ressources DevOps, ainsi que le type d'accès de chaque groupe d'utilisateurs.

Pour pouvoir contrôler l'accès aux ressources DevOps telles que les référentiels de code, les pipelines de compilation et les pipelines de déploiement, vous devez créer des utilisateurs et les placer dans les groupes appropriés (voir Gestion des utilisateurs et Gestion des groupes). Vous pouvez ensuite créer des politiques et des énoncés pour contrôler l'accès (voir Gestion des politiques).

Par défaut, les utilisateurs du groupe Administrateurs ont accès à toutes les ressources DevOps. Pour en savoir plus sur les politiques GIA, voir Introduction aux politiques.

Pour obtenir la liste complète de toutes les politiques d'Oracle Cloud Infrastructure, voir Informations de référence sur les politiques et Politiques communes.

Types de ressource et autorisations

Liste des types de ressource DevOps et des autorisations associées.

Pour affecter des autorisations à toutes les ressources DevOps, utilisez le type d'agrégation devops-family. Pour plus d'informations, voir Autorisations.

Une politique qui utilise <verb> devops-family est égale à une politique avec un énoncé <verb> <resource-type> distinct pour chaque type de ressource individuel.

Type de ressource Autorisations
famille devops Les verbes inspect, read, use, manage s'appliquent à toutes les autorisations de type de ressource DevOps.

Les verbes inspect et read sont applicables pour l'autorisation DEVOPS_WORK_REQUEST.

devops-project
  • DEVOPS_PROJECT_INSPECT
  • DEVOPS_PROJECT_READ
  • DEVOPS_PROJECT_UPDATE
  • DEVOPS_PROJECT_CREATE
  • DEVOPS_PROJECT_DELETE
  • DEVOPS_PROJECT_MOVE
  • DEVOPS_PROJECT_CASCADE_DELETE
  • DEVOPS_PROJECT_SETTINGS_READ
  • DEVOPS_PROJECT_SETTINGS_UPDATE
  • DEVOPS_PROJECT_SETTINGS_DELETE
devops-deploy-famille

Les verbes inspect, read, use, manage s'appliquent aux autorisations suivantes :

  • DEVOPS_DEPLOY_ARTIFACT
  • DEVOPS_DEPLOY_ENVIRONMENT
  • DEVOPS_DEPLOY_PIPELINE
  • DEVOPS_DEPLOY_STAGE
  • DEVOPS_DEPLOY_DEPLOYMENT
devops-deploy-artifact
  • DEVOPS_DEPLOY_ARTIFACT_INSPECT
  • DEVOPS_DEPLOY_ARTIFACT_READ
  • DEVOPS_DEPLOY_ARTIFACT_UPDATE
  • DEVOPS_DEPLOY_ARTIFACT_CREATE
  • DEVOPS_DEPLOY_ARTIFACT_DELETE
devops-deploy-environnement
  • DEVOPS_DEPLOY_ENVIRONMENT_INSPECT
  • DEVOPS_DEPLOY_ENVIRONMENT_READ
  • DEVOPS_DEPLOY_ENVIRONMENT_UPDATE
  • DEVOPS_DEPLOY_ENVIRONMENT_CREATE
  • DEVOPS_DEPLOY_ENVIRONMENT_DELETE
devops-deploy-pipeline
  • DEVOPS_DEPLOY_PIPELINE_INSPECT
  • DEVOPS_DEPLOY_PIPELINE_READ
  • DEVOPS_DEPLOY_PIPELINE_UPDATE
  • DEVOPS_DEPLOY_PIPELINE_CREATE
  • DEVOPS_DEPLOY_PIPELINE_DELETE
devops-deploy-stage
  • DEVOPS_DEPLOY_STAGE_INSPECT
  • DEVOPS_DEPLOY_STAGE_READ
  • DEVOPS_DEPLOY_STAGE_UPDATE
  • DEVOPS_DEPLOY_STAGE_CREATE
  • DEVOPS_DEPLOY_STAGE_DELETE
devops-deployment
  • DEVOPS_DEPLOY_DEPLOYMENT_INSPECT
  • DEVOPS_DEPLOY_DEPLOYMENT_READ
  • DEVOPS_DEPLOY_DEPLOYMENT_UPDATE
  • DEVOPS_DEPLOY_DEPLOYMENT_CREATE
  • DEVOPS_DEPLOY_DEPLOYMENT_DELETE
  • DEVOPS_DEPLOY_DEPLOYMENT_CANCEL
  • DEVOPS_DEPLOY_DEPLOYMENT_APPROVE
devops-work-requests
  • DEVOPS_WORK_REQUEST_INSPECT
  • DEVOPS_WORK_REQUEST_READ
devops-repository-famille

Les verbes inspect, read, use, manage s'appliquent aux autorisations suivantes :

  • DEVOPS_REPOSITORY
  • DEVOPS_PULL_REQUEST
  • DEVOPS_PULL_REQUEST_COMMENT
  • DEVOPS_PROTECTED_BRANCH

Le verbe manage s'applique à l'autorisation DEVOPS_REPOSITORY_SETTINGS.

devops-repository
  • DEVOPS_REPOSITORY_INSPECT
  • DEVOPS_REPOSITORY_READ
  • DEVOPS_REPOSITORY_UPDATE
  • DEVOPS_REPOSITORY_CREATE
  • DEVOPS_REPOSITORY_DELETE
  • DEVOPS_REPOSITORY_SETTINGS_READ
  • DEVOPS_REPOSITORY_SETTINGS_UPDATE
  • DEVOPS_REPOSITORY_SETTINGS_DELETE
devops-pull-request
  • DEVOPS_PULL_REQUEST_INSPECT
  • DEVOPS_PULL_REQUEST_READ
  • DEVOPS_PULL_REQUEST_UPDATE
  • DEVOPS_PULL_REQUEST_CREATE
  • DEVOPS_PULL_REQUEST_DELETE
  • DEVOPS_PULL_REQUEST_REVIEW
devops-pull-request-commentaire
  • DEVOPS_PULL_REQUEST_COMMENT_INSPECT
  • DEVOPS_PULL_REQUEST_COMMENT_READ
  • DEVOPS_PULL_REQUEST_COMMENT_UPDATE
  • DEVOPS_PULL_REQUEST_COMMENT_CREATE
  • DEVOPS_PULL_REQUEST_COMMENT_DELETE
Branche protégée par devops
  • DEVOPS_PROTECTED_BRANCH_INSPECT
  • DEVOPS_PROTECTED_BRANCH_READ
  • DEVOPS_PROTECTED_BRANCH_PUSH
  • DEVOPS_PROTECTED_BRANCH_CREATE
  • DEVOPS_PROTECTED_BRANCH_UPDATE
  • DEVOPS_PROTECTED_BRANCH_DELETE
devops-build-famille

Dans les verbes indiqués, inspect, read, use, manage s'applique aux autorisations suivantes :

  • DEVOPS_BUILD_PIPELINE
  • DEVOPS_BUILD_PIPELINE_STAGE
  • DEVOPS_BUILD_RUN
devops-build-pipeline
  • DEVOPS_BUILD_PIPELINE_INSPECT
  • DEVOPS_BUILD_PIPELINE_READ
  • DEVOPS_BUILD_PIPELINE_UPDATE
  • DEVOPS_BUILD_PIPELINE_CREATE
  • DEVOPS_BUILD_PIPELINE_DELETE
devops-build-pipeline-stage
  • DEVOPS_BUILD_PIPELINE_STAGE_INSPECT
  • DEVOPS_BUILD_PIPELINE_STAGE_READ
  • DEVOPS_BUILD_PIPELINE_STAGE_UPDATE
  • DEVOPS_BUILD_PIPELINE_STAGE_CREATE
  • DEVOPS_BUILD_PIPELINE_STAGE_DELETE
devops-build-run
  • DEVOPS_BUILD_RUN_INSPECT
  • DEVOPS_BUILD_RUN_READ
  • DEVOPS_BUILD_RUN_UPDATE
  • DEVOPS_BUILD_RUN_CREATE
  • DEVOPS_BUILD_RUN_DELETE
  • DEVOPS_BUILD_RUN_CANCEL
devops-connection
  • DEVOPS_CONNECTION_INSPECT
  • DEVOPS_CONNECTION_READ
  • DEVOPS_CONNECTION_UPDATE
  • DEVOPS_CONNECTION_CREATE
  • DEVOPS_CONNECTION_DELETE
devops-trigger
  • DEVOPS_TRIGGER_INSPECT
  • DEVOPS_TRIGGER_READ
  • DEVOPS_TRIGGER_UPDATE
  • DEVOPS_TRIGGER_CREATE
  • DEVOPS_TRIGGER_DELETE

Variables prises en charge

Les variables sont utilisées lors de l'ajout de conditions à une politique.

DevOps prend en charge les variables suivantes :

  • Entité : Identificateur Oracle Cloud (OCID)
  • Chaîne : Texte à structure libre.
  • Nombre : Valeur numérique (précision arbitraire)
  • Liste : Liste d'entités, de chaînes ou de nombres
  • Boolean : True ou False

Voir Variables générales pour toutes les demandes.

Les variables sont en minuscules et séparées par des tirets. Par exemple, target.tag-namespace.name, target.display-name. Ici, name doit être unique et display-name est la description.

Les variables requises sont fournies par le service DevOps pour chaque demande. Les variables automatiques sont fournies par le moteur d'autorisation (intégré au service avec la trousse SDK pour un client lourd ou dans le plan de données d'identité pour un client léger).

Variables requises Type Description
target.compartment.id Entité (OCID) OCID de la ressource principale de la demande.
request.operation Chaîne ID opération (par exemple, GetUser) de la demande.
target.resource.kind Chaîne Nom du type de ressource de la ressource principale de la demande.
Variables automatiques Type Description
request.user.id Entité (OCID) OCID de l'utilisateur à l'origine de la demande.
request.groups.id Liste d'entités (OCID) OCID des groupes auxquels appartient l'utilisateur à l'origine de la demande.
target.compartment.name Chaîne Nom du compartiment indiqué dans target.compartment.id.
target.tenant.id Entité (OCID) OCID de l'ID locataire cible.

Les sources disponibles pour les variables sont les suivantes :

  • Demande : Provient de l'entrée de la demande.
  • Dérivé : Provient de la demande.
  • Stocké : Provient du service, entrée conservée.
  • Calculé : Calculé à partir des données du service.

Mappage des variables aux types de ressource

Type de ressource Variable Type Source Description

devops-project

devops-deploy-artifact

devops-deploy-environment

devops-deploy-pipeline

devops-deploy-stage

devops-deployment

devops-repository

devops-pull-request

devops-connection

devops-trigger

devops-build-pipeline

devops-build-pipeline-stage

devops-build-run

devops-pull-request-comment

devops-protected-branch

target.project.id Entrée Stockée Disponible pour les opérations Get, Update, Delete et Move sur la ressource Project.

devops-project

devops-deploy-artifact

devops-deploy-environment

devops-deploy-pipeline

devops-deploy-stage

devops-deployment

devops-repository

devops-pull-request

devops-connection

devops-trigger

devops-build-pipeline

devops-build-pipeline-stage

devops-build-run

devops-pull-request-comment

devops-protected-branch

target.project.name Chaîne Stockée Disponible pour les opérations Get, Update, Delete et Move sur la ressource Project.
devops-deploy-artifact target.artifact.id Entité Stockée Disponible pour les opérations Get, Update et Delete sur la ressource Artifact.
devops-deploy-environment target.environment.id Entité Stockée Disponible pour les opérations Get, Update et Delete sur la ressource Environment.

devops-deploy-pipeline

devops-deploy-stage

devops-deployment

target.pipeline.id Entité Stockée Disponible pour les opérations Get, Update et Delete sur la ressource Pipeline.
devops-deploy-stage target.stage.id Entité Stockée Disponible pour les opérations Get, Update et Delete sur la ressource Stage.
devops-deployment target.deployment.id Entité Stockée Disponible pour les opérations Get, Update et Delete sur les types de ressource Deployment.
devops-repository

devops-pull-request

devops-pull-request-comment

devops-protected-branch

target.repository.id Entité Stockée Disponible pour les opérations Get, Update, Delete et Move sur la ressource Repository.
devops-pull-request-comment target.pull-request.id Entité Stockée Disponible pour les opérations Get, Update et Delete sur la ressource Pull-Request.
devops-repository

devops-pull-request

devops-pull-request-comment

devops-protected-branch

target.repository.name Entité Stockée Disponible pour les opérations Get, Update, Delete et Move sur la ressource Repository.
devops-pull-request-comment target.pull-request.display-name Chaîne Stockée Disponible pour les opérations Get, Update et Delete sur la ressource Pull-Request.
devops-repository target.branch.name Entité Stockée Disponible pour les opérations Git telles que upload-pack et receive-pack dans la branche Repository.
devops-protected-branch target.branch.name Chaîne Stockée Disponible pour les opérations Obtenir, Mettre à jour, Supprimer et Déplacer sur la ressource Branche protégée.
devops-repository target.tag.name Entité Stockée Disponible pour les opérations Git telles que upload-pack et receive-pack dans la branche Repository.
devops-pull-request target.pull-request.id Entité Stockée Disponible pour les opérations Get, Update et Delete sur la ressource Pull-Request.
devops-pull-request target.pull-request.display-name Chaîne Stockée Disponible pour les opérations Get, Update et Delete sur la ressource Pull-Request.
devops-connection target.connection.id Entité Stockée Disponible pour les opérations Get, Update et Delete sur la ressource Connection.
devops-trigger target.trigger.id Entité Stockée Disponible pour les opérations Get, Update et Delete sur la ressource Trigger.

devops-build-pipeline

devops-build-pipeline-stage

devops-build-run

target.build-pipeline.id Entité Stockée Disponible pour les opérations Get, Update et Delete sur la ressource Build Pipeline.
devops-build-pipeline-stage target.build-pipeline-stage.id Entité Stockée Disponible pour les opérations Get, Update et Delete sur la ressource Build Pipeline Stage.
devops-build-run target.build-run.id Entité Stockée Disponible pour les opérations Get, Update, Delete et Cancel sur la ressource Build Run.

Informations détaillées sur les combinaisons de verbe et de type de ressource

Identifiez les autorisations et les opérations d'API couvertes par chaque verbe pour les ressources DevOps.

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 incrémentiel par rapport à la cellule précédente. Toutes les autorisations (inspection, lecture, utilisation et gestion) sont applicables pour le type de ressource devops-family, qui inclut toutes les ressources DevOps.

Pour plus d'informations sur l'octroi de l'accès, voir Autorisations.

devops-project

Ce tableau répertorie les autorisations et les API entièrement couvertes par les autorisations de la ressource devops-project.

Verbes Autorisations API couvertes Description
inspect DEVOPS_PROJECT_INSPECT ListProjects Lister toutes les ressources de projet d'un compartiment.
read

inspect+

DEVOPS_PROJECT_READ

inspect+

GetProject

Obtenir un projet spécifique par ID.
use

read+

DEVOPS_PROJECT_UPDATE

read+

UpdateProject

Mettre à jour un projet spécifique.
manage

use+

DEVOPS_PROJECT_CREATE

use+

CreateProject

Créer une ressource de projet.
manage

use+

DEVOPS_PROJECT_DELETE

use+

DeleteProject

Supprimer un projet spécifique.
manage

use+

DEVOPS_PROJECT_MOVE

use+

ChangeProjectCompartment

Déplacer un projet vers un autre compartiment.
devops-deploy-famille

Ce tableau liste les autorisations et les API entièrement couvertes par les autorisations de la ressource devops-deploy-family.

Verbes Autorisations API couvertes Description
inspect
  • DEVOPS_DEPLOY_ARTIFACT_INSPECT
  • DEVOPS_DEPLOY_ENVIRONMENT_INSPECT
  • DEVOPS_DEPLOY_PIPELINE_INSPECT
  • DEVOPS_DEPLOY_STAGE_INSPECT
  • DEVOPS_DEPLOYMENT_INSPECT
  • ListDeployArtifacts
  • ListDeployEnvironments
  • ListDeployPipelines
  • ListDeployStages
  • ListDeployments
  • Lister tous les artefacts d'un projet ou d'un compartiment.
  • Lister tous les environnements d'un projet ou d'un compartiment.
  • Lister toutes les ressources de pipeline d'un compartiment.
  • Lister toutes les étapes d'un pipeline ou d'un compartiment.
  • Lister tous les déploiements d'un compartiment.
read

inspect+

  • DEVOPS_DEPLOY_ARTIFACT_READ
  • DEVOPS_DEPLOY_ENVIRONMENT_READ
  • DEVOPS_DEPLOY_PIPELINE_READ
  • DEVOPS_DEPLOY_STAGE_READ
  • DEVOPS_DEPLOYMENT_READ

inspect+

  • GetDeployArtifact
  • GetDeployEnvironment
  • GetDeployPipeline
  • GetDeployStage
  • GetDeployment
  • Obtenir un artefact spécifique par ID.
  • Obtenir un environnement spécifique par ID.
  • Obtenir un pipeline spécifique par ID.
  • Obtenir une étape par ID.
  • Obtenir un déploiement spécifique par ID.
use

read+

  • DEVOPS_DEPLOY_ARTIFACT_UPDATE
  • DEVOPS_DEPLOY_ENVIRONMENT_UPDATE
  • DEVOPS_DEPLOY_PIPELINE_UPDATE
  • DEVOPS_DEPLOY_STAGE_UPDATE
  • DEVOPS_DEPLOYMENT_UPDATE
  • DEVOPS_DEPLOYMENT_APPROVE
  • DEVOPS_DEPLOYMENT_CANCEL

read+

  • UpdateDeployArtifact
  • UpdateDeployEnvironment
  • UpdateDeployPipeline
  • UpdateDeployStage
  • UpdateDeployment
  • ApproveDeployment
  • CancelDeployment
  • Mettre à jour un artefact spécifique par ID.
  • Mettre à jour un environnement spécifique par ID.
  • Mettre à jour un pipeline spécifique par ID.
  • Mettre à jour une étape spécifique par ID.
  • Mettre à jour un déploiement spécifique par ID.
  • Approuver un déploiement spécifique en attente d'approbation manuelle.
  • Annuler un déploiement en cours d'exécution.
manage

use+

  • DEVOPS_DEPLOY_ARTIFACT_CREATE
  • DEVOPS_DEPLOY_ARTIFACT_DELETE
  • DEVOPS_DEPLOY_ENVIRONMENT_CREATE
  • DEVOPS_DEPLOY_ENVIRONMENT_DELETE
  • DEVOPS_DEPLOY_PIPELINE_CREATE
  • DEVOPS_DEPLOY_PIPELINE_DELETE
  • DEVOPS_DEPLOY_STAGE_CREATE
  • DEVOPS_DEPLOY_STAGE_DELETE
  • DEVOPS_DEPLOYMENT_CREATE
  • DEVOPS_DEPLOYMENT_DELETE

use+

  • CreateDeployArtifact
  • DeleteDeployArtifact
  • CreateDeployEnvironment
  • DeleteDeployEnvironment
  • CreateDeployPipeline
  • DeleteDeployPipeline
  • CreateDeployStage
  • DeleteDeployStage
  • CreateDeployment
  • DeleteDeployment
  • Créer une ressource d'artefact dans un projet.
  • Supprimer un artefact spécifique par ID.
  • Créer un environnement dans un projet.
  • Supprimer un environnement spécifique par ID.
  • Créer une ressource de pipeline.
  • Supprimer un pipeline spécifique par ID.
  • Créer une étape dans un pipeline.
  • Supprimer une étape spécifique par ID.
  • Créer un déploiement pour un pipeline spécifique.
  • Supprimer un déploiement spécifique par ID.
devops-deploy-artifact

Ce tableau répertorie les autorisations et les API entièrement couvertes par les autorisations de la ressource devops-deploy-artifact.

Verbes Autorisations API couvertes Description
inspect DEVOPS_DEPLOY_ARTIFACT_INSPECT ListDeployArtifacts Lister tous les artefacts d'un projet ou d'un compartiment.
read

inspect+

DEVOPS_DEPLOY_ARTIFACT_READ

inspect+

GetDeployArtifact

Obtenir un artefact spécifique par ID.
use

read+

DEVOPS_DEPLOY_ARTIFACT_UPDATE

read+

UpdateDeployArtifact

Mettre à jour un artefact spécifique par ID.
manage

use+

DEVOPS_DEPLOY_ARTIFACT_CREATE

use+

CreateDeployArtifact

Créer une ressource d'artefact dans un projet.

manage

use+

DEVOPS_DEPLOY_ARTIFACT_DELETE

use+

DeleteDeployArtifact

Supprimer un artefact spécifique par ID.

devops-deploy-environnement

Ce tableau répertorie les autorisations et les API entièrement couvertes par les autorisations de la ressource devops-deploy-environment.

Verbes Autorisations API couvertes Description
inspect DEVOPS_DEPLOY_ENVIRONMENT_INSPECT ListDeployEnvironments Lister tous les environnements d'une application ou d'un compartiment.
read

inspect+

DEVOPS_DEPLOY_ENVIRONMENT_READ

inspect+

GetDeployEnvironment

Obtenir un environnement spécifique par ID.
use

read+

DEVOPS_DEPLOY_ENVIRONMENT_UPDATE

read+

UpdateDeployEnvironment

Mettre à jour un environnement spécifique par ID.
manage

use+

DEVOPS_DEPLOY_ENVIRONMENT_CREATE

use+

CreateDeployEnvironment

Créer un environnement pour une cible de déploiement dans une application.

manage

use+

DEVOPS_DEPLOY_ENVIRONMENT_DELETE

use+

DeleteDeployEnvironment

Supprimer un environnement spécifique par ID.

devops-deploy-pipeline

Ce tableau répertorie les autorisations et les API entièrement couvertes par les autorisations de la ressource devops-deploy-pipeline.

Verbes Autorisations API couvertes Description
inspect DEVOPS_DEPLOY_PIPELINE_INSPECT ListDeployPipelines Lister toutes les ressources de pipeline d'un compartiment.
read

inspect+

DEVOPS_DEPLOY_PIPELINE_READ

inspect+

GetDeployPipeline

Obtenir un pipeline spécifique par ID.
use

read+

DEVOPS_DEPLOY_PIPELINE_UPDATE

read+

UpdateDeployPipeline

Mettre à jour un pipeline spécifique par ID.
manage

use+

DEVOPS_DEPLOY_PIPELINE_CREATE

use+

CreateDeployPipeline

Créer une ressource de pipeline.

manage

use+

DEVOPS_DEPLOY_PIPELINE_DELETE

use+

DeleteDeployPipeline

Supprimer un pipeline spécifique.

devops-deploy-stage

Ce tableau répertorie les autorisations et les API entièrement couvertes par les autorisations de la ressource devops-deploy-stage.

Verbes Autorisations API couvertes Description
inspect DEVOPS_DEPLOY_STAGE_INSPECT ListDeployStages Lister toutes les étapes d'un pipeline ou d'un compartiment.
read

inspect+

DEVOPS_DEPLOY_STAGE_READ

inspect+

GetDeployStage

Obtenir une étape par ID.
use

read+

DEVOPS_DEPLOY_STAGE_UPDATE

read+

UpdateDeployStage

Mettre à jour une étape spécifique par ID.
manage

use+

DEVOPS_DEPLOY_STAGE_CREATE

use+

CreateDeployStage

Créer une étape dans un pipeline.

manage

use+

DEVOPS_DEPLOY_STAGE_DELETE

use+

DeleteDeployStage

Supprimer une étape spécifique par ID.

devops-deployment

Ce tableau répertorie les autorisations et les API entièrement couvertes par les autorisations de la ressource devops-deployment.

Verbes Autorisations API couvertes Description
inspect DEVOPS_DEPLOYMENT_INSPECT ListDeployments Lister tous les déploiements d'un compartiment.
read

inspect+

DEVOPS_DEPLOYMENT_READ

inspect+

GetDeployment

Obtenir un déploiement spécifique par ID.
use

read+

DEVOPS_DEPLOYMENT_UPDATE

read+

UpdateDeployStage

Mettre à jour une étape spécifique par ID.

use

read+

DEVOPS_DEPLOYMENT_APPROVE

read+

ApproveDeployment

Approuver un déploiement spécifique en attente d'approbation manuelle.
use

read+

DEVOPS_DEPLOYMENT_CANCEL

read+

CancelDeployment

Annuler un déploiement en cours d'exécution.

manage

use+

DEVOPS_DEPLOYMENT_CREATE

use+

CreateDeployment

Créer un déploiement pour un pipeline spécifique.

manage

use+

DEVOPS_DEPLOYMENT_DELETE

use+

DeleteDeployment

Supprimer un déploiement spécifique.

devops-work-requests

Ce tableau répertorie les autorisations et les API entièrement couvertes par les autorisations de la ressource devops-work-requests.

Verbes Autorisations API couvertes Description
inspect DEVOPS_WORK_REQUEST_INSPECT ListWorkRequests Lister toutes les demandes de travail d'un compartiment.
read

inspect+

DEVOPS_WORK_REQUEST_READ

inspect+

GetWorkRequest

Obtenir une demande de travail spécifique par ID.
devops-repository-famille

Ce tableau liste les autorisations et les API entièrement couvertes par les autorisations de la ressource devops-repository-family.

Verbes Autorisations API couvertes Description
inspect
  • DEVOPS_REPOSITORY_INSPECT
  • DEVOPS_PULL_REQUEST_INSPECT
  • DEVOPS_PULL_REQUEST_COMMENT_INSPECT
  • DEVOPS_PROTECTED_BRANCH_INSPECT
  • ListRepositories
  • ListPullRequests
  • ListPullRequestAttachments
  • ListPullRequestComments
  • ListProtectedBranches
  • Lister toutes les ressources de référentiel par ID compartiment, ID projet ou ID référentiel.
  • Lister les demandes d'extraction dans un référentiel.
  • Liste des fichiers joints de demande d'extraction par identificateur.
  • Liste des commentaires du réviseur de demande d'extraction.
  • Répertorier les branches protégées dans un référentiel.
read
inspect+
  • DEVOPS_REPOSITORY_READ
  • DEVOPS_PULL_REQUEST_READ
  • DEVOPS_PULL_REQUEST_COMMENT_READ
  • DEVOPS_PROTECTED_BRANCH_READ
  • DEVOPS_PULL_REQUEST_REVIEW
  • DEVOPS_PULL_REQUEST_COMMENT_CREATE
  • DEVOPS_PULL_REQUEST_COMMENT_UPDATE
  • DEVOPS_PULL_REQUEST_COMMENT_DELETE

inspect+

  • GetRepository
  • GetPullRequest
  • GetPullRequestComment
  • GetPullRequestAttachmentContent
  • GetProtectedBranch
  • ReviewPullRequest
  • UpdatePullRequestComment
  • LikePullRequestComment
  • UnlikePullRequestComment
  • DeletePullRequestComment
  • Obtenir un référentiel spécifique par ID.
  • Obtenir une demande d'extraction par ID.
  • Obtenir un commentaire par un ID commentaire.
  • Obtenir le contenu d'un fichier joint de demande d'extraction.
  • Obtenir des informations de protection pour une branche spécifique.
  • Mettre à jour la liste de réviseurs d'une demande d'extraction.
  • Mettre à jour un commentaire de demande d'extraction par ID.
  • Comme un commentaire de demande d'extraction.
  • Contrairement à un commentaire de demande d'extraction.
  • Supprimer un commentaire de demande d'extraction.
use

read+

  • DEVOPS_REPOSITORY_UPDATE
  • DEVOPS_PULL_REQUEST_UPDATE
  • DEVOPS_PULL_REQUEST_CREATE
  • DEVOPS_PULL_REQUEST_DELETE

read+

  • UpdateRepository
  • UpdatePullRequest
  • DeclinePullRequest
  • ReopenPullRequest
  • MergePullRequest
  • DeletePullRequest
  • Mettre à jour un référentiel spécifique par ID.
  • Mettre à jour une demande d'extraction par ID.
  • Fermez une demande d'extraction en réglant le cycle de vie de la demande à Refusé.
  • Rouvrir une demande d'extraction fermée.
  • Fusionner une demande d'extraction approuvée de la branche source vers la cible.
  • Supprimer une demande d'extraction par ID.
manage

use+

  • DEVOPS_REPOSITORY_CREATE
  • DEVOPS_REPOSITORY_DELETE
  • DEVOPS_PROTECTED_BRANCH_CREATE
  • DEVOPS_PROTECTED_BRANCH_UPDATE
  • DEVOPS_PROTECTED_BRANCH_DELETE
  • DEVOPS_REPOSITORY_SETTINGS_READ
  • DEVOPS_REPOSITORY_SETTINGS_UPDATE
  • DEVOPS_REPOSITORY_SETTINGS_DELETE
  • DEVOPS_PROTECTED_BRANCH_PUSH

use+

  • CreateRepository
  • DeleteRepository
  • CreateProtectedBranch
  • UpdateProtectedBranch
  • DeleteProtectedBranch
  • GetRepositorySettings
  • UpdateRepositorySettings
  • DeleteRepositorySettings
  • ProtectedBranchReceivePack
  • Créer un référentiel.
  • Supprimer un référentiel spécifique par ID.
  • Créez une branche protégée dans un référentiel.
  • Mettez à jour le niveau de protection sur une branche protégée. Les options de niveau de protection courantes sont PULL_REQUEST_MERGE_ONLY et READ_ONLY.
  • Supprimez une branche protégée. Cela supprime les restrictions ajoutées à une branche lorsqu'elle a été protégée.
  • Obtenir les paramètres personnalisés configurés pour un référentiel.
  • Mettez à jour les paramètres personnalisés configurés pour un référentiel.
  • Supprimez les paramètres personnalisés configurés pour un référentiel.
  • Donne aux utilisateurs la possibilité de pousser directement vers une branche protégée.
devops-repository

Ce tableau répertorie les autorisations et les API entièrement couvertes par les autorisations de la ressource devops-repository.

Verbes Autorisations API couvertes Description
inspect DEVOPS_REPOSITORY_INSPECT ListRepositories Lister toutes les ressources de référentiel par ID compartiment, ID projet ou ID référentiel.
read

inspect+

DEVOPS_REPOSITORY_READ

inspect+

GetRepository

Obtenir un référentiel spécifique par ID.
use

read+

DEVOPS_REPOSITORY_UPDATE

read+

UpdateRepository

Mettre à jour un référentiel spécifique par ID.
manage

use+

DEVOPS_REPOSITORY_CREATE

use+

CreateRepository

Créer un référentiel.

manage

use+

DEVOPS_REPOSITORY_DELETE

use+

DeleteRepository

Supprimer un référentiel spécifique par ID.

devops-connection

Ce tableau répertorie les autorisations et les API entièrement couvertes par les autorisations de la ressource devops-connection.

Verbes Autorisations API couvertes Description
inspect DEVOPS_CONNECTION_INSPECT ListConnections Lister toutes les connexions d'un projet ou d'un compartiment.
read

inspect+

DEVOPS_CONNECTION_READ

inspect+

GetConnection

Obtenir une connexion spécifique par ID.
use

read+

DEVOPS_CONNECTION_UPDATE

read+

UpdateConnection

Mettre à jour une connexion spécifique par ID.
use

read+

DEVOPS_CONNECTION_VALIDATE

read+

ValidateConnection

Valider le jeton d'accès personnel de la connexion.
manage

use+

DEVOPS_CONNECTION_CREATE

use+

CreateConnection

Créer une ressource de connexion dans un projet.

manage

use+

DEVOPS_CONNECTION_DELETE

use+

DeleteConnection

Supprimer une connexion spécifique par ID.

devops-trigger

Ce tableau répertorie les autorisations et les API entièrement couvertes par les autorisations de la ressource devops-trigger.

Verbes Autorisations API couvertes Description
inspect DEVOPS_TRIGGER_INSPECT ListTriggers Lister tous les déclencheurs d'un projet ou d'un compartiment.
read

inspect+

DEVOPS_TRIGGER_READ

inspect+

GetTrigger

Obtenir un déclencheur spécifique par ID.
use

read+

DEVOPS_TRIGGER_UPDATE

read+

UpdateTrigger

Mettre à jour un déclencheur spécifique par ID.
manage

use+

DEVOPS_TRIGGER_CREATE

use+

CreateTrigger

Créer une ressource de déclencheur dans un projet.

manage

use+

DEVOPS_TRIGGER_DELETE

use+

DeleteTrigger

Supprimer un déclencheur spécifique par ID.

devops-build-famille

Ce tableau liste les autorisations et les API entièrement couvertes par les autorisations de la ressource devops-build-family.

Verbes Autorisations API couvertes Description
inspect
  • DEVOPS_BUILD_PIPELINE_INSPECT
  • DEVOPS_BUILD_PIPELINE_STAGE_INSPECT
  • DEVOPS_BUILD_RUN_INSPECT
  • ListBuildPipelines
  • ListBuildPipelineStages
  • ListBuildRuns
  • Lister toutes les ressources de pipeline de compilation d'un compartiment.
  • Listez les étapes d'un pipeline de compilation ou d'un compartiment.
  • Lister les exécutions de compilation d'un projet ou d'un compartiment.
read

inspect+

  • DEVOPS_BUILD_PIPELINE_READ
  • DEVOPS_BUILD_PIPELINE_STAGE_READ
  • DEVOPS_BUILD_RUN_READ

inspect+

  • GetBuildPipeline
  • GetBuildPipelineStage
  • GetBuildRun
  • Obtenir un pipeline de compilation spécifique par ID.
  • Obtenir une étape de pipeline de compilation spécifique par ID.
  • Obtient une exécution de compilation spécifique par ID.
use

read+

  • DEVOPS_BUILD_PIPELINE_UPDATE
  • DEVOPS_BUILD_PIPELINE_STAGE_UPDATE
  • DEVOPS_BUILD_RUN_UPDATE
  • DEVOPS_BUILD_RUN_CANCEL

read+

  • UpdateBuildPipeline
  • UpdateBuildPipelineStage
  • UpdateBuildRun
  • CancelBuildRun
  • Mettre à jour un pipeline de compilation spécifique par ID.
  • Mettre à jour une étape de pipeline de compilation spécifique par ID.
  • Mettre à jour une exécution de compilation existante.
  • Annule une exécution de compilation en cours d'exécution.
manage

use+

  • DEVOPS_BUILD_PIPELINE_CREATE
  • DEVOPS_BUILD_PIPELINE_DELETE
  • DEVOPS_BUILD_PIPELINE_STAGE_CREATE
  • DEVOPS_BUILD_PIPELINE_STAGE_DELETE
  • DEVOPS_BUILD_RUN_CREATE
  • DEVOPS_BUILD_RUN_DELETE

use+

  • CreateBuildPipeline
  • DeleteBuildPipeline
  • CreateBuildPipelineStage
  • DeleteBuildPipelineStage
  • CreateBuildRun
  • DeleteBuildRun
  • Créer une ressource de pipeline de compilation.
  • Supprimer un pipeline de compilation.
  • Créer une étape dans un pipeline de compilation.
  • Supprimer une étape de pipeline de compilation spécifique par ID.
  • Démarrer une exécution de compilation pour un pipeline de compilation.
  • Supprimer une exécution de compilation existante.
devops-build-pipeline

Ce tableau répertorie les autorisations et les API entièrement couvertes par les autorisations de la ressource devops-build-pipeline.

Verbes Autorisations API couvertes Description
inspect DEVOPS_BUILD_PIPELINE_INSPECT ListBuildPipelines Lister toutes les ressources de pipeline de compilation d'un compartiment.
read

inspect+

DEVOPS_BUILD_PIPELINE_READ

inspect+

GetBuildPipeline

Obtenir un pipeline de compilation spécifique par ID.
use

read+

DEVOPS_BUILD_PIPELINE_UPDATE

read+

UpdateBuildPipeline

Mettre à jour un pipeline de compilation spécifique par ID.
manage

use+

DEVOPS_BUILD_PIPELINE_CREATE

use+

CreateBuildPipeline

Créer une ressource de pipeline de compilation.

manage

use+

DEVOPS_BUILD_PIPELINE_DELETE

use+

DeleteBuildPipeline

Supprimer un pipeline de compilation spécifique.

devops-build-pipeline-stage

Ce tableau répertorie les autorisations et les API entièrement couvertes par les autorisations de la ressource devops-build-pipeline-stage.

Verbes Autorisations API couvertes Description
inspect DEVOPS_BUILD_PIPELINE_STAGE_INSPECT ListBuildPipelineStages Lister toutes les étapes d'un pipeline de compilation ou d'un compartiment.
read

inspect+

DEVOPS_BUILD_PIPELINE_STAGE_READ

inspect+

GetBuildPipelineStage

Obtenir une étape de pipeline de compilation spécifique par ID.
use

read+

DEVOPS_BUILD_PIPELINE_STAGE_UPDATE

read+

UpdateBuildPipelineStage

Mettre à jour une étape de pipeline de compilation spécifique par ID.
manage

use+

DEVOPS_BUILD_PIPELINE_STAGE_CREATE

use+

CreateBuildPipelineStage

Créer une étape dans un pipeline de compilation.

manage

use+

DEVOPS_BUILD_PIPELINE_STAGE_DELETE

use+

DeleteBuildPipelineStage

Supprimer une étape de pipeline de compilation spécifique par ID.

devops-build-run

Ce tableau répertorie les autorisations et les API entièrement couvertes par les autorisations de la ressource devops-build-run.

Verbes Autorisations API couvertes Description
inspect DEVOPS_BUILD_RUN_INSPECT ListBuildRuns Lister les exécutions de compilation d'un projet ou d'un compartiment.
read

inspect+

DEVOPS_BUILD_RUN_READ

inspect+

GetBuildRun

Obtient une exécution de compilation spécifique par ID.
use

read+

DEVOPS_BUILD_RUN_UPDATE

read+

UpdateBuildRun

Mettre à jour une exécution de compilation existante.
use

read+

DEVOPS_BUILD_RUN_CANCEL

read+

CancelBuildRun

Annuler une exécution de compilation en cours.
manage

use+

DEVOPS_BUILD_RUN_CREATE

use+

CreateBuildRun

Démarrer une exécution de compilation pour un pipeline de compilation donné.

manage

use+

DEVOPS_BUILD_RUN_DELETE

use+

DeleteBuildRun

Supprimer une exécution de compilation existante.

Création d'une politique et d'un groupe dynamique

Pour octroyer aux utilisateurs l'autorisation d'accéder aux différentes ressources DevOps, telles que les pipelines de compilation, les pipelines de déploiement, les artefacts et les référentiels de code, vous devez créer des groupes, des groupes dynamiques et des politiques GIA.

Une politique permet à un groupe  d'utiliser de certaines façons des types spécifiques de ressource  dans un compartiment  particulier.

Politique

Pour créer une politique dans la console Oracle Cloud, procédez de la façon suivante :

  1. Ouvrez le menu de navigation et cliquez sur Identité et sécurité. Sous Identité, cliquez sur Politiques.
  2. Cliquez sur Créer une politique.
  3. Entrez le nom et la description de la politique.
  4. Sous Générateur de politiques, cliquez sur Afficher l'éditeur manuel pour activer l'éditeur.

    Entrez une règle de politique dans le format suivant :

    Allow <group> to <verb> <resource_type> in <compartment or tenancy details>
  5. Cliquez sur Créer.

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

Pour créer un groupe et ajouter des utilisateurs au groupe, voir Gestion des groupes.

Groupe dynamique

Un groupe dynamique est un type spécial de groupe contenant les ressources (telles que des instances de calcul) qui correspondent aux règles que vous définissez.

Les règles de correspondance définissent les ressources qui appartiennent au groupe dynamique. Dans la console, vous pouvez entrer la règle manuellement dans la zone de texte fournie ou utiliser le générateur de règles. Pour plus de détails, voir Écriture des règles de correspondance pour définir des groupes dynamiques. Utilisez la règle match-any pour répondre à plusieurs conditions.

Créez un groupe dynamique pour vos ressources DevOps. Vous pouvez nommer le groupe dynamique DevOpsDynamicGroup, par exemple, et remplacer compartmentOCID par l'OCID de votre compartiment :
ALL {resource.type = 'devopsdeploypipeline', resource.compartment.id = 'compartmentOCID'}
ALL {resource.type = 'devopsrepository', resource.compartment.id = 'compartmentOCID'}
ALL {resource.type = 'devopsbuildpipeline',resource.compartment.id = 'compartmentOCID'}
ALL {resource.type = 'devopsconnection',resource.compartment.id = 'compartmentOCID'}

Pour plus d'informations sur les groupes dynamiques, y compris les autorisations nécessaires pour les créer, voir Gestion des groupes dynamiques et Écriture des politiques pour les groupes dynamiques.

Énoncé de politique requis pour DevOpsDynamicGroup :
Allow dynamic-group DevOpsDynamicGroup to manage devops-family in compartment <compartment_name>
Note

Pour les locations qui comportent des domaines d'identité, le nom de domaine doit précéder le nom du groupe dynamique dans la politique. Par exemple, domain-name/{DevOpsDynamicGroup}

Exemples de politique

Politiques DevOps requises pour utiliser diverses ressources DevOps telles que les référentiels de code, les pipelines de compilation et les pipelines de déploiement.

Voici des exemples de politique :

Politiques d'environnement

Exemple de politique pour créer un environnement cible utilisé pour le déploiement.

Voir les instructions pour créer des politiques à l'aide de la console.

Créez une politique pour permettre aux utilisateurs d'un groupe de créer, de mettre à jour ou de supprimer un environnement OKE privé :
Allow group <group-name> to manage virtual-network-family in compartment <compartment_name> where any {request.operation='CreatePrivateEndpoint', request.operation='UpdatePrivateEndpoint', request.operation='DeletePrivateEndpoint', request.operation='EnableReverseConnection', request.operation='ModifyReverseConnection', request.operation='DisableReverseConnection'}

Politiques de référentiel de code

Exemples de politique pour créer un référentiel de code privé et se connecter à des référentiels de code externes tels que GitHub et GitLab.

Voir les instructions pour créer des politiques, des groupes et des groupes dynamiques à l'aide de la console.

Pour créer un référentiel de code, créez les politiques GIA suivantes :
  • Autoriser les utilisateurs d'un groupe à accéder au projet DevOps :
    Allow group <group-name> to read devops-project in compartment <compartment_name>
  • Autoriser les utilisateurs d'un groupe à lire, créer, mettre à jour ou supprimer un référentiel :
    Allow group <group-name> to manage devops-repository in compartment <compartment_name>
Pour cloner un référentiel, créez les politiques GIA suivantes :
  • Autoriser les utilisateurs d'un groupe à accéder au projet DevOps :
    Allow group <group-name> to read devops-project in compartment <compartment_name>
  • Autoriser les utilisateurs d'un groupe à lire ou à mettre à jour un référentiel :
    Allow group <group-name> to use devops-repository in compartment <compartment_name>
Pour l'intégration avec des référentiels de code externes, créez une politique dans le compartiment racine. Par exemple, pour autoriser le groupe dynamique à lire les clés secrètes :
Allow dynamic-group DevOpsDynamicGroup to read secret-family in compartment <compartment_name>
Pour valider une connexion externe, créez la politique GIA suivante avec la politique de lecture des clés secrètes :
Allow group <group-name> to use devops-connection in compartment <compartment_name>
Pour recevoir des avis par courriel pour les demandes d'extraction dans les référentiels de code, créez la politique IAM suivante à l'aide d'un groupe dynamique. L'administrateur doit créer cette politique. Par exemple, pour autoriser le groupe dynamique DevOpsDynamicGroup comprenant la ressource de référentiel :
Allow dynamic-group DevOpsDynamicGroup to inspect users in tenancy

Pour créer une demande d'extraction, vous devez définir des politiques en fonction des actions qu'un utilisateur est autorisé à effectuer. Pour plus d'informations et des exemples, consultez Gestion des demandes d'extraction.

Politiques de pipeline de compilation

Exemples de politique pour créer des pipelines de compilation et y ajouter des étapes.

Voir les instructions pour créer des politiques à l'aide de la console.

  • Créez des politiques IAM pour permettre au groupe dynamique d'accéder aux ressources OCI du compartiment :
    • Pour la fourniture d'artefacts, autorisez l'accès au registre de conteneurs :
      Allow dynamic-group DevOpsDynamicGroup to manage repos in compartment <compartment_name>
    • Pour l'accès à la chambre forte afin d'obtenir le jeton d'accès personnel, autorisez l'accès à la famille de clés secrètes. Cette politique est requise lors de l'étape de compilation gérée pour accéder au jeton d'accès personnel afin de télécharger le code source :
      Allow dynamic-group DevOpsDynamicGroup to read secret-family in compartment <compartment_name>
    • Autorisez la lecture des artefacts de déploiement lors de l'étape Fournir des artefacts et du référentiel de code DevOps lors de l'étape de compilation gérée, et le déclenchement du pipeline de déploiement lors de l'étape Déclencher le déploiement :
      Allow dynamic-group DevOpsDynamicGroup to manage devops-family in compartment <compartment_name>
    • Pour la fourniture d'artefacts, autorisez l'accès au registre d'artefacts :
      Allow dynamic-group DevOpsDynamicGroup to manage generic-artifacts in compartment <compartment_name>
    • Pour l'envoi d'avis, autorisez l'accès au pipeline de compilation :
      Allow dynamic-group DevOpsDynamicGroup to use ons-topics in compartment <compartment_name>
  • Créez des politiques pour autoriser la configuration de l'accès privé lors de l'étape de compilation gérée :
    Allow dynamic-group DevOpsDynamicGroup to use subnets in compartment <customer subnet compartment>
    Allow dynamic-group DevOpsDynamicGroup to use vnics in compartment <customer subnet compartment>
    Si des groupes de sécurité de réseau sont spécifiés dans la configuration de l'accès privé, la politique doit autoriser l'accès à ces groupes :
    Allow dynamic-group DevOpsDynamicGroup to use network-security-groups in compartment <customer subnet compartment>
  • Créez une politique pour permettre au pipeline de compilation d'accéder à la ressource de l'ensemble de l'autorité de certification pour la vérification TLS :
    Allow dynamic-group DevOpsDynamicGroup to use cabundles in compartment <compartment_name>

Politiques d'accès aux ressources ADM

Exemples de politique pour accéder aux ressources du service de gestion des dépendances d'application (ADM) à partir du pipeline de compilation.

Voir les instructions pour créer des politiques à l'aide de la console.

Créez des politiques GIA pour permettre au groupe dynamique d'accéder aux ressources ADM de la location :
Allow dynamic-group DevOpsDynamicGroup to use adm-knowledge-bases in tenancy
Allow dynamic-group DevOpsDynamicGroup to manage adm-vulnerability-audits in tenancy

Politiques de pipeline de déploiement

Exemples de politique pour créer des pipelines de déploiement et y ajouter des étapes.

Voir les instructions pour créer des politiques à l'aide de la console.

Créez des politiques GIA pour permettre au groupe dynamique du pipeline de déploiement d'accéder aux ressources de votre compartiment :
  • Déploiements de grappe OKE :
    Allow dynamic-group DevOpsDynamicGroup to read all-artifacts in compartment <compartment_name>
    Allow dynamic-group DevOpsDynamicGroup to manage cluster in compartment <compartment_name>
  • Service :
    Allow dynamic-group DevOpsDynamicGroup to manage fn-function in compartment <compartment_name>
    Allow dynamic-group DevOpsDynamicGroup to read fn-app in compartment <compartment_name>
    Allow dynamic-group DevOpsDynamicGroup to use fn-invocation in compartment <compartment_name>
  • D déploiements de groupe d'instances :
    Allow dynamic-group DevOpsDynamicGroup to read all-artifacts in compartment <compartment_name>
    Allow dynamic-group DevOpsDynamicGroup to read instance-family in compartment <compartment_name>
    Allow dynamic-group DevOpsDynamicGroup to use instance-agent-command-family in compartment <compartment_name>
    Allow dynamic-group DevOpsDynamicGroup to use load-balancers in compartment <compartment_name>
    Allow dynamic-group DevOpsDynamicGroup to use vnics in compartment <compartment_name>
    Pour un déploiement de groupe d'instances, vous devez également créer un groupe dynamique pour les instances suivantes et accorder à ce groupe certaines autorisations :
    • Créez un groupe dynamique pour les instances. Par exemple, vous pouvez nommer le groupe dynamique DeployComputeDynamicGroup et remplacer compartmentOCID par l'OCID du compartiment :
      All {instance.compartment.id = 'compartmentOCID'}
    • Créez des politiques GIA pour accorder l'accès requis aux instances de déploiement :
      Allow dynamic-group DeployComputeDynamicGroup to use instance-agent-command-execution-family in compartment <compartment_name>
      Allow dynamic-group DeployComputeDynamicGroup to read generic-artifacts in compartment <compartment_name>
      Allow dynamic-group DeployComputeDynamicGroup to read secret-family in compartment <compartment_name>
  • Déploiements d'étape Helm :
    Allow dynamic-group DevOpsDynamicGroup to read all-artifacts in compartment <compartment_name>
    Allow dynamic-group DevOpsDynamicGroup to manage cluster in compartment <compartment_name>
    Allow dynamic-group DevOpsDynamicGroup to read repos in compartment <compartment_name>
  • Étape d'approbation :
    Allow group pipeline1_approvers to use devops-family in compartment <compartment_name>  where all {request.principal.id = 'ocid1.pipeline1'}
    Allow group pipeline2_approvers to use devops-family in compartment <compartment_name>  where all {request.principal.id = 'ocid1.pipeline2'}
  • Étape d'interpréteur de commandes :
    Allow dynamic-group DevOpsDynamicGroup to manage compute-container-instances in compartment <compartment_name>
    Allow dynamic-group DevOpsDynamicGroup to manage compute-containers in compartment <compartment_name>
    Allow dynamic-group DevOpsDynamicGroup to use vnics in compartment <compartment_name>
    Allow dynamic-group DevOpsDynamicGroup to use subnets in compartment <compartment_name>
    Allow dynamic-group DevOpsDynamicGroup to use dhcp-options in compartment <compartment_name>
    Si vous utilisez un groupe de sécurité de réseau lors de la création d'une étape d'interpréteur de commandes, ajoutez la politique suivante :
    Allow dynamic-group DevOpsDynamicGroup to use network-security-groups in compartment <compartment_name>

Politiques pour les artefacts

Exemples de politique pour l'ajout de l'étape Fournir des artefacts au pipeline de compilation.

L'étape Fournir des artefacts mappe les sorties de l'étape de compilation gérée à la version à transmettre à une ressource d'artefact DevOps, puis au référentiel de code OCI. DevOps prend en charge les artefacts stockés dans les référentiels des registres de conteneurs et d'artefacts OCI. Voir Ajout d'une étape Fournir des artefacts.

Voir les instructions pour créer des politiques à l'aide de la console.

Créez les politiques GIA suivantes :

  • Pour afficher la liste de tous les référentiels du registre de conteneurs appartenant à la location ou à un compartiment donné :
    Allow dynamic-group DevOpsDynamicGroup to inspect repos in tenancy
    Allow dynamic-group DevOpsDynamicGroup to inspect repos in compartment <compartment_name>
  • Autoriser le pousser d'artefacts vers le registre de conteneurs appartenant à la location ou à un compartiment donné :
    Allow dynamic-group DevOpsDynamicGroup to use repos in tenancy
    Allow dynamic-group DevOpsDynamicGroup to use repos in compartment <compartment_name>

    Voir Politiques de contrôle d'accès aux référentiels.

  • Possibilité d'afficher la liste des artefacts génériques du registre de conteneurs appartenant à la location ou à un compartiment donné :
    Allow dynamic-group DevOpsDynamicGroup to inspect generic-artifacts in tenancy
    Allow dynamic-group DevOpsDynamicGroup to inspect generic-artifacts in compartment <compartment_name>
  • Autoriser le pousser d'artefacts génériques vers le registre d'artefacts appartenant à la location ou à un compartiment donné :
    Allow dynamic-group DevOpsDynamicGroup to use generic-artifacts in tenancy
    Allow dynamic-group DevOpsDynamicGroup to use generic-artifacts in compartment <compartment_name>

    Voir Politiques de registre d'artefacts.

  • Autorisez les utilisateurs à extraire des artefacts génériques appartenant à la location ou à un compartiment donné :
    Allow dynamic-group DevOpsDynamicGroup to read generic-artifacts in tenancy
    Allow dynamic-group DevOpsDynamicGroup to read generic-artifacts in compartment <compartment_name>

Accès au registre d'artefacts

Le registre d'artefacts pour Oracle Cloud Infrastructure est un service de référentiel permettant le stockage, le partage et la gestion d'ensembles de développement logiciels.

Vous pouvez accéder aux artefacts stockés dans le registre d'artefacts à partir du service DevOps. Vous pouvez créer une référence à trois types d'artefact dans le registre d'artefacts : configurations de déploiement de groupes d'instances, artefacts généraux et manifestes Kubernetes. Votre administrateur doit accorder l'autorisation read all-artifacts aux ressources de pipeline.

Voir les instructions pour créer des politiques à l'aide de la console.

Créez une politique GIA pour autoriser le groupe dynamique à accéder aux artefacts d'un compartiment spécifique :
Allow dynamic-group DevOpsDynamicGroup to read all-artifacts in compartment <compartment_name>

Pour plus d'informations, voir Politiques de registre d'artefacts.