DevOps-IAM-Policys

Durch das Erstellen von IAM-Policys können Sie steuern, wer Zugriff auf DevOps-Ressourcen hat und welchen Zugriffstyp jede Benutzergruppe erhält.

Bevor Sie den Zugriff auf DevOps-Ressourcen wie Code-Repositorys, Build-Pipelines und Deployment-Pipelines kontrollieren können, müssen Sie Benutzer erstellen und in entsprechende Gruppen einfügen (siehe Benutzer verwalten und Gruppen verwalten). Sie können dann Policys und Policy-Anweisungen erstellen, um den Zugriff zu kontrollieren (siehe Policys verwalten).

Standardmäßig können Benutzer in der Gruppe Administrators auf alle DevOps-Ressourcen zugreifen. Wenn Sie mit IAM-Policys nicht vertraut sind, finden Sie weitere Informationen unter Erste Schritte mit Policys.

Eine vollständige Liste aller Policys in Oracle Cloud Infrastructure finden Sie in der Policy-Referenz und unter Allgemeine Policys.

Ressourcentypen und Berechtigungen

Liste der DevOps-Ressourcentypen und der zugehörigen Berechtigungen.

Um allen DevOps-Ressourcen Berechtigungen zuzuweisen, verwenden Sie den Aggregattyp devops-family. Weitere Informationen finden Sie unter Berechtigungen.

Eine Policy, die <verb> devops-family verwendet, entspricht dem Schreiben einer Policy mit einer separaten <verb> <resource-type>-Anweisung für die einzelnen individuellen Ressourcentypen.

Ressourcentyp Berechtigungen
devops-Familie Die Verben inspect, read, use, manage gelten für alle Berechtigungen für die Ressourcentypen DevOps.

Die Verben inspect und read gelten für die Berechtigung 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-family

Die Verben inspect, read, use, manage gelten für die folgenden Berechtigungen:

  • 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-environment
  • 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-family

Die Verben inspect, read, use, manage gelten für die folgenden Berechtigungen:

  • DEVOPS_REPOSITORY
  • DEVOPS_PULL_REQUEST
  • DEVOPS_PULL_REQUEST_COMMENT
  • DEVOPS_PROTECTED_BRANCH

Das Verb manage gilt für die Berechtigung 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-Anfrage
  • 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-comment
  • 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
devops-protected-branch
  • 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-family

Bei den angegebenen Verben gilt inspect, read, use, manage für die folgenden Berechtigungen:

  • 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

Unterstützte Variablen

Variablen werden beim Hinzufügen von Bedingungen zu einer Policy verwendet.

DevOps unterstützt die folgenden Variablen:

  • Entity: Oracle Cloud-ID (OCID)
  • Zeichenfolge: Freiformtext.
  • Zahl: Numerischer Wert (beliebige Dezimalstellenanzahl)
  • Liste: Liste der Entitys, Zeichenfolgen oder Zahlen
  • Boolescher Wert: "True" oder "False"

Siehe Allgemeine Variablen für alle Anforderungen.

Variablen werden kleingeschrieben und durch Bindestriche getrennt. Beispiel: target.tag-namespace.name, target.display-name. Hier muss name eindeutig sein, und display-name ist die Beschreibung.

Erforderliche Variablen werden vom DevOps-Service für jede Anforderung bereitgestellt. Automatische Variablen werden von der Autorisierungs-Engine bereitgestellt (entweder lokal im Service mit dem SDK für einen Fat Client oder auf der Identity Data Plane für einen Thin Client).

Erforderliche Variablen Typ Beschreibung
target.compartment.id Entity (OCID) Die OCID der primären Ressource für die Anforderung.
request.operation Zeichenfolge Die Vorgangs-ID (z.B. GetUser) für die Anforderung.
target.resource.kind Zeichenfolge Der Name der Ressourcenart der primären Ressource für die Anforderung.
Automatische Variablen Typ Beschreibung
request.user.id Entity (OCID) Die OCID des anfordernden Benutzers.
request.groups.id Liste der Entitys (OCIDs) Die OCIDs der Gruppen, zu denen der anfordernde Benutzer gehört.
target.compartment.name Zeichenfolge Der Name des Compartments, das in target.compartment.id. angegeben wird
target.tenant.id Entity (OCID) Die OCID der Zielmandanten-ID.

Verfügbare Quellen für die Variablen:

  • Anforderung: Stammt aus der Anforderungseingabe.
  • Abgeleitet: Stammt aus der Anforderung.
  • Gespeichert: Stammt aus dem Service, beibehaltene Eingabe.
  • Berechnet: Wird aus Servicedaten berechnet.

Variablen Ressourcentypen zuordnen

Ressourcentyp Variable Typ Quelle Beschreibung

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 Eintrag Gespeichert Verfügbar für die Vorgänge "Abrufen", "Aktualisieren", "Löschen" und "Verschieben" in der Projektressource.

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 Zeichenfolge Gespeichert Verfügbar für die Vorgänge "Abrufen", "Aktualisieren", "Löschen" und "Verschieben" in der Projektressource.
devops-deploy-artifact target.artifact.id Entity Gespeichert Verfügbar für die Vorgänge "Abrufen", "Aktualisieren" und "Löschen" in der Artefaktressource.
devops-deploy-environment target.environment.id Entity Gespeichert Verfügbar für die Vorgänge "Abrufen", "Aktualisieren" und "Löschen" in der Umgebungsressource.

devops-deploy-pipeline

devops-deploy-stage

devops-deployment

target.pipeline.id Entity Gespeichert Verfügbar für die Vorgänge "Abrufen", "Aktualisieren" und "Löschen" in der Pipelineressource.
devops-deploy-stage target.stage.id Entity Gespeichert Verfügbar für die Vorgänge "Abrufen", "Aktualisieren" und "Löschen" in der Phasenressource.
devops-deployment target.deployment.id Entity Gespeichert Verfügbar für die Vorgänge "Abrufen", "Aktualisieren" und "Löschen" in Deployment-Ressourcentypen.
devops-repository

devops-pull-request

devops-pull-request-comment

devops-protected-branch

target.repository.id Entity Gespeichert Verfügbar für die Vorgänge "Abrufen", "Aktualisieren", "Löschen" und "Verschieben" in der Repository-Ressource.
devops-pull-request-comment target.pull-request.id Entity Gespeichert Verfügbar für die Vorgänge zum Abrufen, Aktualisieren und Löschen in der Pull-Request-Ressource.
devops-repository

devops-pull-request

devops-pull-request-comment

devops-protected-branch

target.repository.name Entity Gespeichert Verfügbar für die Vorgänge "Abrufen", "Aktualisieren", "Löschen" und "Verschieben" in der Repository-Ressource.
devops-pull-request-comment target.pull-request.display-name Zeichenfolge Gespeichert Verfügbar für die Vorgänge zum Abrufen, Aktualisieren und Löschen in der Pull-Request-Ressource.
devops-repository target.branch.name Entity Gespeichert Verfügbar für Git-Vorgänge wie "uploaden, packen und packen" in der Repository-Verzweigung.
devops-protected-branch target.branch.name Zeichenfolge Gespeichert Verfügbar für die Vorgänge zum Abrufen, Aktualisieren, Löschen und Verschieben in der Ressource "Geschützte Verzweigung".
devops-repository target.tag.name Entity Gespeichert Verfügbar für Git-Vorgänge wie "upload-pack", "receive-pack" in der Repository-Verzweigung.
devops-pull-request target.pull-request.id Entity Gespeichert Verfügbar für die Vorgänge zum Abrufen, Aktualisieren und Löschen in der Pull-Request-Ressource.
devops-pull-request target.pull-request.display-name Zeichenfolge Gespeichert Verfügbar für die Vorgänge zum Abrufen, Aktualisieren und Löschen in der Pull-Request-Ressource.
devops-connection target.connection.id Entity Gespeichert Verfügbar für die Vorgänge "Abrufen", "Aktualisieren" und "Löschen" in der Verbindungsressource.
devops-trigger target.trigger.id Entity Gespeichert Verfügbar für die Vorgänge "Abrufen", "Aktualisieren" und "Löschen" in der Triggerressource.

devops-build-pipeline

devops-build-pipeline-stage

devops-build-run

target.build-pipeline.id Entity Gespeichert Verfügbar für die Vorgänge "Abrufen", "Aktualisieren" und "Löschen" in der Build-Pipelineressource.
devops-build-pipeline-stage target.build-pipeline-stage.id Entity Gespeichert Verfügbar für die Vorgänge "Abrufen", "Aktualisieren" und "Löschen" in der Build-Pipelinephasenressource.
devops-build-run target.build-run.id Entity Gespeichert Verfügbar für die Vorgänge "Abrufen", "Aktualisieren", "Löschen" und "Abbrechen" in der Build-Ausführungsressource.

Details zu Kombinationen aus Verb + Ressourcentyp

Identifizieren Sie die Berechtigungen und API-Vorgänge, die von den einzelnen Verben für DevOps-Ressourcen abgedeckt werden.

Die Zugriffsebene ist kumulativ von inspect zu read zu use zu manage. Ein Pluszeichen (+) in einer Tabellenzelle gibt einen inkrementellen Zugriff im Vergleich zur vorherigen Zelle an. Alle Berechtigungen (inspect, read, use und manage) gelten für den Ressourcentyp devops-family, der alle DevOps-Ressourcen umfasst.

Informationen zum Erteilen von Zugriffsberechtigungen finden Sie unter Berechtigungen.

devops-project

In dieser Tabelle werden die Berechtigungen und APIs aufgeführt, die von den Berechtigungen für die Ressource devops-project vollständig abgedeckt werden.

Verben Berechtigungen Abgedeckte APIs Beschreibung
inspect DEVOPS_PROJECT_INSPECT ListProjects Listet alle Projektressourcen in einem Compartment auf.
read

inspect+

DEVOPS_PROJECT_READ

inspect+

GetProject

Ruft ein bestimmtes Projekt anhand der ID ab.
use

read+

DEVOPS_PROJECT_UPDATE

read+

UpdateProject

Aktualisiert ein bestimmtes Projekt.
manage

use+

DEVOPS_PROJECT_CREATE

use+

CreateProject

Erstellt eine Projektressource.
manage

use+

DEVOPS_PROJECT_DELETE

use+

DeleteProject

Löscht ein bestimmtes Projekt.
manage

use+

DEVOPS_PROJECT_MOVE

use+

ChangeProjectCompartment

Verschiebt ein Projekt in ein anderes Compartment.
devops-deploy-family

In dieser Tabelle werden die Berechtigungen und APIs aufgeführt, die von den Berechtigungen für die Ressource devops-deploy-family vollständig abgedeckt werden.

Verben Berechtigungen Abgedeckte APIs Beschreibung
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
  • Listet alle Artefakte in einem Projekt oder Compartment auf.
  • Liste aller Umgebungen in einem Projekt oder Compartment.
  • Listet alle Pipelineressourcen in einem Compartment auf.
  • Listet alle Phasen in einer Pipeline oder einem Compartment auf.
  • Listet alle Deployments in einem Compartment auf.
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
  • Ruft ein bestimmtes Artefakt anhand der ID ab.
  • Ruft eine bestimmte Umgebung anhand der ID ab.
  • Ruft eine bestimmte Pipeline anhand der ID ab.
  • Ruft eine bestimmte Phase anhand der ID ab.
  • Ruft ein bestimmtes Deployment anhand der ID ab.
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
  • Aktualisiert ein bestimmtes Artefakt anhand der ID.
  • Aktualisiert eine bestimmte Umgebung anhand der ID.
  • Aktualisiert eine bestimmte Pipeline anhand der ID.
  • Aktualisiert eine bestimmte Phase anhand der ID.
  • Aktualisiert ein bestimmtes Deployment anhand der ID.
  • Genehmigt ein bestimmtes Deployment, das auf eine manuelle Genehmigung wartet.
  • Bricht ein gerade ausgeführtes Deployment ab.
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
  • Erstellt eine Artefaktressource in einem Projekt.
  • Löscht ein bestimmtes Artefakt anhand der ID.
  • Erstellen Sie eine Umgebung in einem Projekt.
  • Löscht eine bestimmte Umgebung anhand der ID.
  • Erstellt eine Pipelineressource.
  • Löscht eine bestimmte Pipeline anhand der ID.
  • Erstellt eine Phase in einer Pipeline.
  • Löscht eine bestimmte Phase anhand der ID.
  • Erstellt ein Deployment für eine bestimmte Pipeline.
  • Löscht ein bestimmtes Deployment anhand der ID.
devops-deploy-artifact

In dieser Tabelle werden die Berechtigungen und APIs aufgeführt, die von den Berechtigungen für die Ressource devops-deploy-artifact vollständig abgedeckt werden.

Verben Berechtigungen Abgedeckte APIs Beschreibung
inspect DEVOPS_DEPLOY_ARTIFACT_INSPECT ListDeployArtifacts Listet alle Artefakte in einem Projekt oder Compartment auf.
read

inspect+

DEVOPS_DEPLOY_ARTIFACT_READ

inspect+

GetDeployArtifact

Ruft ein bestimmtes Artefakt anhand der ID ab.
use

read+

DEVOPS_DEPLOY_ARTIFACT_UPDATE

read+

UpdateDeployArtifact

Aktualisiert ein bestimmtes Artefakt anhand der ID.
manage

use+

DEVOPS_DEPLOY_ARTIFACT_CREATE

use+

CreateDeployArtifact

Erstellt eine Artefaktressource in einem Projekt.

manage

use+

DEVOPS_DEPLOY_ARTIFACT_DELETE

use+

DeleteDeployArtifact

Löscht ein bestimmtes Artefakt anhand der ID.

devops-deploy-environment

In dieser Tabelle werden die Berechtigungen und APIs aufgeführt, die von den Berechtigungen für die Ressource devops-deploy-environment vollständig abgedeckt werden.

Verben Berechtigungen Abgedeckte APIs Beschreibung
inspect DEVOPS_DEPLOY_ENVIRONMENT_INSPECT ListDeployEnvironments Listet alle Umgebungen in einer Anwendung oder einem Compartment auf.
read

inspect+

DEVOPS_DEPLOY_ENVIRONMENT_READ

inspect+

GetDeployEnvironment

Ruft eine bestimmte Umgebung anhand der ID ab.
use

read+

DEVOPS_DEPLOY_ENVIRONMENT_UPDATE

read+

UpdateDeployEnvironment

Aktualisiert eine bestimmte Umgebung anhand der ID.
manage

use+

DEVOPS_DEPLOY_ENVIRONMENT_CREATE

use+

CreateDeployEnvironment

Erstellt eine Umgebung für ein Deployment-Ziel in einer Anwendung.

manage

use+

DEVOPS_DEPLOY_ENVIRONMENT_DELETE

use+

DeleteDeployEnvironment

Löscht eine bestimmte Umgebung anhand der ID.

devops-deploy-pipeline

In dieser Tabelle werden die Berechtigungen und APIs aufgeführt, die von den Berechtigungen für die Ressource devops-deploy-pipeline vollständig abgedeckt werden.

Verben Berechtigungen Abgedeckte APIs Beschreibung
inspect DEVOPS_DEPLOY_PIPELINE_INSPECT ListDeployPipelines Listet alle Pipelineressourcen in einem Compartment auf.
read

inspect+

DEVOPS_DEPLOY_PIPELINE_READ

inspect+

GetDeployPipeline

Ruft eine bestimmte Pipeline anhand der ID ab.
use

read+

DEVOPS_DEPLOY_PIPELINE_UPDATE

read+

UpdateDeployPipeline

Aktualisiert eine bestimmte Pipeline anhand der ID.
manage

use+

DEVOPS_DEPLOY_PIPELINE_CREATE

use+

CreateDeployPipeline

Erstellt eine Pipelineressource.

manage

use+

DEVOPS_DEPLOY_PIPELINE_DELETE

use+

DeleteDeployPipeline

Löscht eine bestimmte Pipeline.

devops-deploy-stage

In dieser Tabelle werden die Berechtigungen und APIs aufgeführt, die von den Berechtigungen für die Ressource devops-deploy-stage vollständig abgedeckt werden.

Verben Berechtigungen Abgedeckte APIs Beschreibung
inspect DEVOPS_DEPLOY_STAGE_INSPECT ListDeployStages Listet alle Phasen in einer Pipeline oder einem Compartment auf.
read

inspect+

DEVOPS_DEPLOY_STAGE_READ

inspect+

GetDeployStage

Ruft eine bestimmte Phase anhand der ID ab.
use

read+

DEVOPS_DEPLOY_STAGE_UPDATE

read+

UpdateDeployStage

Aktualisiert eine bestimmte Phase anhand der ID.
manage

use+

DEVOPS_DEPLOY_STAGE_CREATE

use+

CreateDeployStage

Erstellt eine Phase in einer Pipeline.

manage

use+

DEVOPS_DEPLOY_STAGE_DELETE

use+

DeleteDeployStage

Löscht eine bestimmte Phase anhand der ID.

devops-deployment

In dieser Tabelle werden die Berechtigungen und APIs aufgeführt, die von den Berechtigungen für die Ressource devops-deployment vollständig abgedeckt werden.

Verben Berechtigungen Abgedeckte APIs Beschreibung
inspect DEVOPS_DEPLOYMENT_INSPECT ListDeployments Listet alle Deployments in einem Compartment auf.
read

inspect+

DEVOPS_DEPLOYMENT_READ

inspect+

GetDeployment

Ruft ein bestimmtes Deployment anhand der ID ab.
use

read+

DEVOPS_DEPLOYMENT_UPDATE

read+

UpdateDeployStage

Aktualisiert eine bestimmte Phase anhand der ID.

use

read+

DEVOPS_DEPLOYMENT_APPROVE

read+

ApproveDeployment

Genehmigt ein bestimmtes Deployment, das auf eine manuelle Genehmigung wartet.
use

read+

DEVOPS_DEPLOYMENT_CANCEL

read+

CancelDeployment

Bricht ein gerade ausgeführtes Deployment ab.

manage

use+

DEVOPS_DEPLOYMENT_CREATE

use+

CreateDeployment

Erstellt ein Deployment für eine bestimmte Pipeline.

manage

use+

DEVOPS_DEPLOYMENT_DELETE

use+

DeleteDeployment

Löscht ein bestimmtes Deployment.

devops-work-requests

In dieser Tabelle werden die Berechtigungen und APIs aufgeführt, die von den Berechtigungen für die Ressource devops-work-requests vollständig abgedeckt werden.

Verben Berechtigungen Abgedeckte APIs Beschreibung
inspect DEVOPS_WORK_REQUEST_INSPECT ListWorkRequests Listet alle Arbeitsanforderungen in einem Compartment auf.
read

inspect+

DEVOPS_WORK_REQUEST_READ

inspect+

GetWorkRequest

Ruft eine bestimmte Arbeitsanforderung anhand der ID ab.
devops-repository-family

In dieser Tabelle werden die Berechtigungen und APIs aufgeführt, die von den Berechtigungen für die Ressource devops-repository-family vollständig abgedeckt werden.

Verben Berechtigungen Abgedeckte APIs Beschreibung
inspect
  • DEVOPS_REPOSITORY_INSPECT
  • DEVOPS_PULL_REQUEST_INSPECT
  • DEVOPS_PULL_REQUEST_COMMENT_INSPECT
  • DEVOPS_PROTECTED_BRANCH_INSPECT
  • ListRepositories
  • ListPullRequests
  • ListPullRequestAttachments
  • ListPullRequestComments
  • ListProtectedBranches
  • Listet alle Repository-Ressourcen nach Compartment-ID, Projekt-ID oder Repository-ID auf.
  • Pull-Anforderungen in einem Repository auflisten
  • Anhänge für Pull-Anforderungen nach ID auflisten
  • Überprüferkommentare für Pull-Anforderung auflisten
  • Listet geschützte Verzweigungen in einem Repository auf.
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
  • Ruft ein bestimmtes Repository anhand der ID ab.
  • Pull-Anforderung nach ID abrufen.
  • Holen Sie sich einen Kommentar nach einer Kommentar-ID.
  • Ruft den Inhalt eines Pull-Anforderungsanhangs ab.
  • Erhalten Sie Schutzinformationen für eine bestimmte Filiale.
  • Die Prüferliste einer Pull-Anforderung aktualisieren.
  • Einen Pull-Anforderungskommentar nach ID aktualisieren.
  • Wie ein Pull Request-Kommentar.
  • Im Gegensatz zu einem Pull-Anforderungskommentar.
  • Pull-Anforderungskommentar löschen.
use

read+

  • DEVOPS_REPOSITORY_UPDATE
  • DEVOPS_PULL_REQUEST_UPDATE
  • DEVOPS_PULL_REQUEST_CREATE
  • DEVOPS_PULL_REQUEST_DELETE

read+

  • UpdateRepository
  • UpdatePullRequest
  • DeclinePullRequest
  • ReopenPullRequest
  • MergePullRequest
  • DeletePullRequest
  • Aktualisiert ein bestimmtes Repository anhand der ID.
  • Pull-Anforderung nach ID aktualisieren.
  • Schließen Sie eine Pull-Anforderung, indem Sie den Lebenszyklus der Pull-Anforderung auf "Abgelehnt" setzen.
  • Öffnen Sie eine geschlossene Pull-Anforderung erneut.
  • Führen Sie eine genehmigte Pull-Anforderung aus der Quellverzweigung mit dem Ziel zusammen.
  • Eine Pull-Anforderung nach ID löschen.
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
  • Erstellt ein Repository.
  • Löscht ein bestimmtes Repository anhand der ID.
  • Erstellen Sie eine geschützte Verzweigung in einem Repository.
  • Aktualisieren Sie die Schutzstufe in einer geschützten Verzweigung. Die aktuellen Schutzstufenoptionen lauten PULL_REQUEST_MERGE_ONLY und READ_ONLY.
  • Eine geschützte Verzweigung löschen. Dadurch werden die Einschränkungen entfernt, die einer Verzweigung hinzugefügt wurden, als sie geschützt wurde.
  • Ruft die benutzerdefinierten Einstellungen ab, die für ein Repository konfiguriert sind.
  • Aktualisieren Sie die benutzerdefinierten Einstellungen, die für ein Repository konfiguriert sind.
  • Entfernen Sie die für ein Repository konfigurierten benutzerdefinierten Einstellungen.
  • Ermöglicht Benutzern die direkte Übertragung an eine geschützte Filiale.
devops-repository

In dieser Tabelle werden die Berechtigungen und APIs aufgeführt, die von den Berechtigungen für die Ressource devops-repository vollständig abgedeckt werden.

Verben Berechtigungen Abgedeckte APIs Beschreibung
inspect DEVOPS_REPOSITORY_INSPECT ListRepositories Listet alle Repository-Ressourcen nach Compartment-ID, Projekt-ID oder Repository-ID auf.
read

inspect+

DEVOPS_REPOSITORY_READ

inspect+

GetRepository

Ruft ein bestimmtes Repository anhand der ID ab.
use

read+

DEVOPS_REPOSITORY_UPDATE

read+

UpdateRepository

Aktualisiert ein bestimmtes Repository anhand der ID.
manage

use+

DEVOPS_REPOSITORY_CREATE

use+

CreateRepository

Erstellt ein Repository.

manage

use+

DEVOPS_REPOSITORY_DELETE

use+

DeleteRepository

Löscht ein bestimmtes Repository anhand der ID.

devops-connection

In dieser Tabelle werden die Berechtigungen und APIs aufgeführt, die von den Berechtigungen für die Ressource devops-connection vollständig abgedeckt werden.

Verben Berechtigungen Abgedeckte APIs Beschreibung
inspect DEVOPS_CONNECTION_INSPECT ListConnections Listet alle Verbindungen in einem Projekt oder Compartment auf.
read

inspect+

DEVOPS_CONNECTION_READ

inspect+

GetConnection

Ruft eine bestimmte Verbindung anhand der ID ab.
use

read+

DEVOPS_CONNECTION_UPDATE

read+

UpdateConnection

Aktualisiert eine bestimmte Verbindung anhand der ID.
use

read+

DEVOPS_CONNECTION_VALIDATE

read+

ValidateConnection

Validiert das PAT der Verbindung.
manage

use+

DEVOPS_CONNECTION_CREATE

use+

CreateConnection

Erstellt eine Verbindungsressource in einem Projekt.

manage

use+

DEVOPS_CONNECTION_DELETE

use+

DeleteConnection

Löscht eine bestimmte Verbindung anhand der ID.

devops-trigger

In dieser Tabelle werden die Berechtigungen und APIs aufgeführt, die von den Berechtigungen für die Ressource devops-trigger vollständig abgedeckt werden.

Verben Berechtigungen Abgedeckte APIs Beschreibung
inspect DEVOPS_TRIGGER_INSPECT ListTriggers Listet alle Trigger in einem Projekt oder Compartment auf.
read

inspect+

DEVOPS_TRIGGER_READ

inspect+

GetTrigger

Ruft einen bestimmten Trigger anhand der ID ab.
use

read+

DEVOPS_TRIGGER_UPDATE

read+

UpdateTrigger

Aktualisiert einen bestimmten Trigger anhand der ID.
manage

use+

DEVOPS_TRIGGER_CREATE

use+

CreateTrigger

Erstellt eine Triggerressource in einem Projekt.

manage

use+

DEVOPS_TRIGGER_DELETE

use+

DeleteTrigger

Löscht einen bestimmten Trigger anhand der ID.

devops-build-family

In dieser Tabelle werden die Berechtigungen und APIs aufgeführt, die von den Berechtigungen für die Ressource devops-build-family vollständig abgedeckt werden.

Verben Berechtigungen Abgedeckte APIs Beschreibung
inspect
  • DEVOPS_BUILD_PIPELINE_INSPECT
  • DEVOPS_BUILD_PIPELINE_STAGE_INSPECT
  • DEVOPS_BUILD_RUN_INSPECT
  • ListBuildPipelines
  • ListBuildPipelineStages
  • ListBuildRuns
  • Listet alle Build-Pipelineressourcen in einem Compartment auf.
  • Listet Phasen innerhalb einer Build-Pipeline oder eines Compartments auf.
  • Build-Ausführungen in einem Projekt oder Compartment auflisten
read

inspect+

  • DEVOPS_BUILD_PIPELINE_READ
  • DEVOPS_BUILD_PIPELINE_STAGE_READ
  • DEVOPS_BUILD_RUN_READ

inspect+

  • GetBuildPipeline
  • GetBuildPipelineStage
  • GetBuildRun
  • Ruft eine bestimmte Build-Pipeline anhand der ID ab.
  • Ruft eine bestimmte Build-Pipelinephase anhand der ID ab.
  • Ruft eine bestimmte Build-Ausführung anhand der ID ab.
use

read+

  • DEVOPS_BUILD_PIPELINE_UPDATE
  • DEVOPS_BUILD_PIPELINE_STAGE_UPDATE
  • DEVOPS_BUILD_RUN_UPDATE
  • DEVOPS_BUILD_RUN_CANCEL

read+

  • UpdateBuildPipeline
  • UpdateBuildPipelineStage
  • UpdateBuildRun
  • CancelBuildRun
  • Aktualisiert eine bestimmte Build-Pipeline anhand der ID.
  • Aktualisiert eine bestimmte Build-Pipelinephase anhand der ID.
  • Aktualisiert eine vorhandene Build-Ausführung.
  • Bricht einen laufenden Build-Lauf ab.
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
  • Erstellt eine Build-Pipelineressource.
  • Build-Pipeline löschen.
  • Erstellen Sie eine Phase in einer Build-Pipeline.
  • Löschen Sie eine bestimmte Build-Pipelinephase anhand der ID.
  • Build-Ausführung für eine Build-Pipeline starten.
  • Löscht eine vorhandene Build-Ausführung.
devops-build-pipeline

In dieser Tabelle werden die Berechtigungen und APIs aufgeführt, die von den Berechtigungen für die Ressource devops-build-pipeline vollständig abgedeckt werden.

Verben Berechtigungen Abgedeckte APIs Beschreibung
inspect DEVOPS_BUILD_PIPELINE_INSPECT ListBuildPipelines Listet alle Build-Pipelineressourcen in einem Compartment auf.
read

inspect+

DEVOPS_BUILD_PIPELINE_READ

inspect+

GetBuildPipeline

Ruft eine bestimmte Build-Pipeline anhand der ID ab.
use

read+

DEVOPS_BUILD_PIPELINE_UPDATE

read+

UpdateBuildPipeline

Aktualisiert eine bestimmte Build-Pipeline anhand der ID.
manage

use+

DEVOPS_BUILD_PIPELINE_CREATE

use+

CreateBuildPipeline

Erstellt eine Build-Pipelineressource.

manage

use+

DEVOPS_BUILD_PIPELINE_DELETE

use+

DeleteBuildPipeline

Löscht eine bestimmte Build-Pipeline.

devops-build-pipeline-stage

In dieser Tabelle werden die Berechtigungen und APIs aufgeführt, die von den Berechtigungen für die Ressource devops-build-pipeline-stage vollständig abgedeckt werden.

Verben Berechtigungen Abgedeckte APIs Beschreibung
inspect DEVOPS_BUILD_PIPELINE_STAGE_INSPECT ListBuildPipelineStages Listet alle Phasen in einer Build-Pipeline oder einem Compartment auf.
read

inspect+

DEVOPS_BUILD_PIPELINE_STAGE_READ

inspect+

GetBuildPipelineStage

Ruft eine bestimmte Build-Pipelinephase anhand der ID ab.
use

read+

DEVOPS_BUILD_PIPELINE_STAGE_UPDATE

read+

UpdateBuildPipelineStage

Aktualisiert eine bestimmte Build-Pipelinephase anhand der ID.
manage

use+

DEVOPS_BUILD_PIPELINE_STAGE_CREATE

use+

CreateBuildPipelineStage

Erstellt eine Phase in einer Build-Pipeline.

manage

use+

DEVOPS_BUILD_PIPELINE_STAGE_DELETE

use+

DeleteBuildPipelineStage

Löscht eine bestimmte Build-Pipelinephase anhand der ID.

devops-build-run

In dieser Tabelle werden die Berechtigungen und APIs aufgeführt, die von den Berechtigungen für die Ressource devops-build-run vollständig abgedeckt werden.

Verben Berechtigungen Abgedeckte APIs Beschreibung
inspect DEVOPS_BUILD_RUN_INSPECT ListBuildRuns Listet die Build-Ausführungen in einem Projekt oder Compartment auf.
read

inspect+

DEVOPS_BUILD_RUN_READ

inspect+

GetBuildRun

Ruft eine bestimmte Build-Ausführung anhand der ID ab.
use

read+

DEVOPS_BUILD_RUN_UPDATE

read+

UpdateBuildRun

Aktualisiert eine vorhandene Build-Ausführung.
use

read+

DEVOPS_BUILD_RUN_CANCEL

read+

CancelBuildRun

Bricht eine gerade ausgeführte Build-Ausführung ab.
manage

use+

DEVOPS_BUILD_RUN_CREATE

use+

CreateBuildRun

Startet eine Build-Ausführung für eine bestimmte Build-Pipeline.

manage

use+

DEVOPS_BUILD_RUN_DELETE

use+

DeleteBuildRun

Löscht eine vorhandene Build-Ausführung.

Policy und dynamische Gruppe erstellen

Um Benutzern Berechtigungen für den Zugriff auf die verschiedenen DevOps-Ressourcen zu erteilen, wie Build-Pipelines, Deployment-Pipelines, Artefakte und Code-Repositorys, müssen Sie Gruppen, dynamische Gruppen und IAM-Policys erstellen.

Mit einer Policy kann eine Gruppe auf verschiedene Arten mit bestimmten Ressourcen in einem bestimmten Compartment arbeiten.

Policy

Im Folgenden wird beschrieben, wie Sie eine Policy in der Oracle Cloud-Konsole erstellen:

  1. Öffnen Sie das Navigationsmenü, und klicken Sie auf Identität und Sicherheit. Klicken Sie unter Identität auf Policys.
  2. Klicken Sie auf Policy erstellen.
  3. Geben Sie einen Namen und eine Beschreibung für die Policy ein.
  4. Klicken Sie unter Policy Builder auf die Option Manuellen Editor anzeigen, um den Editor zu aktivieren.

    Geben Sie eine Policy-Regel im folgenden Format ein:

    Allow <group> to <verb> <resource_type> in <compartment or tenancy details>
  5. Klicken Sie auf Erstellen.

Weitere Informationen zum Erstellen von Policys finden Sie unter Funktionsweise von Policys und in der Policy-Referenz.

Informationen zum Erstellen einer Gruppe und zum Hinzufügen von Benutzern zur Gruppe finden Sie unter Gruppen verwalten.

Dynamische Gruppe

Eine dynamische Gruppe ist ein spezieller Gruppentyp, der Ressourcen (wie z. B. Compute-Instanzen) enthält, die von Ihnen definierten Regeln entsprechen.

Übereinstimmungsregeln definieren die Ressourcen, die zur dynamischen Gruppe gehören. In der Konsole können Sie die Regel entweder manuell in das angegebene Textfeld eingeben oder den Regel-Builder verwenden. Weitere Informationen finden Sie unter Abgleichsregeln zum Definieren dynamischer Gruppen schreiben. Verwenden Sie die Regel match-any, um mehrere Bedingungen abzugleichen.

Erstellen Sie eine dynamische Gruppe für die DevOps-Ressourcen. Sie können die dynamische Gruppe beispielsweise als DevOpsDynamicGroup benennen und compartmentOCID durch die OCID Ihres Compartments ersetzen:
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'}

Weitere Informationen zu dynamischen Gruppen, einschließlich der für das Erstellen erforderlichen Berechtigungen, finden Sie unter Dynamische Gruppen verwalten und Policys für dynamische Gruppen schreiben.

Erforderliche Policy-Anweisung für DevOpsDynamicGroup:
Allow dynamic-group DevOpsDynamicGroup to manage devops-family in compartment <compartment_name>
Hinweis

Bei Mandanten mit Identitätsdomains muss der Domainname dem dynamischen Gruppennamen in der Policy vorangehen. Beispiel: domain-name/{DevOpsDynamicGroup}

Policy-Beispiele

DevOps Policys, die für die Verwendung verschiedener DevOps-Ressourcen erforderlich sind, wie Code-Repositorys, Build-Pipelines und Deployment-Pipelines.

Folgende Policy-Beispiele sind verfügbar:

Umgebungs-Policys

Policy-Beispiel für das Erstellen einer Zielumgebung, die für das Deployment verwendet wird.

Informationen zum Erstellen von Policys mit der Konsole finden Sie unter Anweisungen.

Erstellen Sie eine Policy, um Benutzern in einer Gruppe das Erstellen, Aktualisieren oder Löschen einer privaten OKE-Umgebung zu erlauben:
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'}

Code-Repository-Policys

Policy-Beispiele für das Erstellen eines Code-Repositorys und das Herstellen von Verbindungen mit externen Code-Repositorys wie GitHub und GitLab.

Informationen zum Erstellen von Policys, Gruppen und dynamischen Gruppen mit der Konsole finden Sie unter Anweisungen.

Um ein Code-Repository zu erstellen, erstellen Sie die folgenden IAM-Policys:
  • Benutzern in einer Gruppe Zugriff auf das Projekt "DevOps" gewähren:
    Allow group <group-name> to read devops-project in compartment <compartment_name>
  • Benutzern in einer Gruppe das Lesen, Erstellen, Aktualisieren oder Löschen eines Repositorys erlauben:
    Allow group <group-name> to manage devops-repository in compartment <compartment_name>
Um ein Repository zu klonen, erstellen Sie die folgenden IAM-Policys:
  • Benutzern in einer Gruppe Zugriff auf das Projekt "DevOps" gewähren:
    Allow group <group-name> to read devops-project in compartment <compartment_name>
  • Benutzern in einer Gruppe das Lesen oder Aktualisieren eines Repositorys erlauben:
    Allow group <group-name> to use devops-repository in compartment <compartment_name>
Erstellen Sie zur Integration mit externen Code-Repositorys eine Policy im Root Compartment. Beispiel: So lassen Sie das Lesen von Secrets durch die dynamische Gruppe zu:
Allow dynamic-group DevOpsDynamicGroup to read secret-family in compartment <compartment_name>
Um eine externe Verbindung zu validieren, erstellen Sie die folgende IAM-Policy zusammen mit der Policy zum Lesen von Secrets:
Allow group <group-name> to use devops-connection in compartment <compartment_name>
Um E-Mail-Benachrichtigungen für Pull-Anforderungen in Code-Repositorys zu empfangen, erstellen Sie die folgende IAM-Policy mit dynamischer Gruppe. Der Administrator muss diese Policy erstellen. Beispiel: So lassen Sie die dynamische Gruppe DevOpsDynamicGroup mit Repository-Ressource zu:
Allow dynamic-group DevOpsDynamicGroup to inspect users in tenancy

Um eine Pull-Anforderung erstellen zu können, müssen Sie Policys basierend auf den Aktionen definieren, die ein Benutzer ausführen darf. Weitere Informationen und Beispiele finden Sie in Pull-Anforderungen verwalten.

Build-Pipeline-Policys

Policy-Beispiele für das Erstellen von Build-Pipelines und das Hinzufügen von Phasen zur Pipeline.

Informationen zum Erstellen von Policys mit der Konsole finden Sie unter Anweisungen.

  • IAM-Policys erstellen, damit die dynamische Gruppe auf OCI-Ressourcen im Compartment zugreifen kann:
    • Um Artefakte bereitzustellen, erteilen Sie Zugriff auf Container Registry (OCIR):
      Allow dynamic-group DevOpsDynamicGroup to manage repos in compartment <compartment_name>
    • Um auf den Vault für ein persönliches Zugriffstoken (Personal Access Token, PAT) zuzugreifen, erteilen Sie Zugriff auf "secret-family". Diese Policy ist in der Phase "Verwalteter Build" für den Zugriff auf das PAT erforderlich, um den Quellcode herunterzuladen:
      Allow dynamic-group DevOpsDynamicGroup to read secret-family in compartment <compartment_name>
    • Erteilen Sie Berechtigungen für das Lesen von Deployment-Artefakten in der Phase "Artefakte übermitteln", für das Lesen des DevOps-Code-Repositorys in der Phase "Verwalteter Build" und für das Auslösen der Deployment-Pipeline in der Phase "Deployment auslösen":
      Allow dynamic-group DevOpsDynamicGroup to manage devops-family in compartment <compartment_name>
    • Um Artefakte zu übermitteln, erteilen Sie Zugriff auf Artifact Registry:
      Allow dynamic-group DevOpsDynamicGroup to manage generic-artifacts in compartment <compartment_name>
    • Um Benachrichtigungen zu senden, erteilen Sie Zugriff auf die Build-Pipeline:
      Allow dynamic-group DevOpsDynamicGroup to use ons-topics in compartment <compartment_name>
  • Erstellen Sie Policys, um das Setup des privaten Zugriffs in der Phase "Verwalteter Build" zu ermöglichen:
    Allow dynamic-group DevOpsDynamicGroup to use subnets in compartment <customer subnet compartment>
    Allow dynamic-group DevOpsDynamicGroup to use vnics in compartment <customer subnet compartment>
    Wenn Netzwerksicherheitsgruppen (NSGs) in der Konfiguration für den privaten Zugriff angegeben sind, muss die Policy den Zugriff auf die NSGs zulassen:
    Allow dynamic-group DevOpsDynamicGroup to use network-security-groups in compartment <customer subnet compartment>
  • Erstellen Sie eine Policy, mit der die Build-Pipeline auf die Zertifikatsautoritäts-(CA-)Bundle-Ressource zur Transport Layer Security-(TLS-)Verifizierung zugreifen kann:
    Allow dynamic-group DevOpsDynamicGroup to use cabundles in compartment <compartment_name>

Policys für den Zugriff auf ADM-Ressourcen

Policy-Beispiele für den Zugriff auf die Ressourcen des Application Dependency Management-(ADM-)Service von der Build-Pipeline.

Informationen zum Erstellen von Policys mit der Konsole finden Sie unter Anweisungen.

Erstellen Sie IAM-Policys, um den Zugriff auf ADM-Ressourcen im Mandanten durch die dynamische Gruppe zuzulassen:
Allow dynamic-group DevOpsDynamicGroup to use adm-knowledge-bases in tenancy
Allow dynamic-group DevOpsDynamicGroup to manage adm-vulnerability-audits in tenancy

Deployment-Pipeline-Policys

Policy-Beispiele für das Erstellen von Deployment-Pipelines und das Hinzufügen von Phasen zur Pipeline.

Informationen zum Erstellen von Policys mit der Konsole finden Sie unter Anweisungen.

Erstellen Sie IAM-Policys, damit die dynamische Gruppe der Deployment-Pipeline auf Ihre Compartment-Ressourcen zugreifen kann:
  • Deployments von OKE-Clustern:
    Allow dynamic-group DevOpsDynamicGroup to read all-artifacts in compartment <compartment_name>
    Allow dynamic-group DevOpsDynamicGroup to manage cluster in compartment <compartment_name>
  • Functions:
    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>
  • Deployments von Instanzgruppen:
    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>
    Für ein Deployment von Instanzgruppen müssen Sie auch eine dynamische Gruppe für die folgenden Instanzen erstellen und der dynamischen Gruppe bestimmte Berechtigungen erteilen:
    • Erstellen Sie eine dynamische Gruppe für die Instanzen. Beispiel: Sie können die dynamische Gruppe als DeployComputeDynamicGroup benennen und compartmentOCID durch die OCID Ihres Compartments ersetzen:
      All {instance.compartment.id = 'compartmentOCID'}
    • Erstellen Sie IAM-Policys, um den erforderlichen Zugriff auf die Deployment-Instanzen zu erteilen:
      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>
  • Bereitstellungen in der Helm-Phase:
    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>
  • Genehmigungsphase:
    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'}
  • Shellphase:
    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>
    Wenn Sie eine Netzwerksicherheitsgruppe beim Erstellen einer Shellphase verwenden, fügen Sie die folgende Policy hinzu:
    Allow dynamic-group DevOpsDynamicGroup to use network-security-groups in compartment <compartment_name>

Artefakt-Policys

Policy-Beispiele für das Hinzufügen der Phase "Artefakte übermitteln" zur Build-Pipeline.

In der Phase "Artefakte übermitteln" werden die Build-Ausgaben aus der Phase "Verwalteter Build" mit der zu übermittelnden Version einer DevOps-Artefaktressource und dann dem Oracle Cloud Infrastructure-(OCI-)Code-Repository zugeordnet. DevOps unterstützt Artefakte, die in OCI Container Registry- und Artifact Registry-Repositorys gespeichert sind. Siehe Phase "Artefakte übermitteln" hinzufügen.

Informationen zum Erstellen von Policys mit der Konsole finden Sie unter Anweisungen.

Erstellen Sie die folgenden IAM-Policys:

  • So zeigen Sie eine Liste aller Repositorys in Container Registry an, die zum Mandanten oder zu einem bestimmten Compartment gehören:
    Allow dynamic-group DevOpsDynamicGroup to inspect repos in tenancy
    Allow dynamic-group DevOpsDynamicGroup to inspect repos in compartment <compartment_name>
  • Übertragen von Artefakten an Container Registry (Oracle Cloud Infrastructure Registry, OCIR) zulassen, die zum Mandanten oder zu einem bestimmten Compartment gehört:
    Allow dynamic-group DevOpsDynamicGroup to use repos in tenancy
    Allow dynamic-group DevOpsDynamicGroup to use repos in compartment <compartment_name>

    Siehe Policys zur Kontrolle des Repository-Zugriffs.

  • Möglichkeit, eine Liste der generischen Artefakte in Artifact Registry anzuzeigen, die zum Mandanten oder zu einem bestimmten Compartment gehören:
    Allow dynamic-group DevOpsDynamicGroup to inspect generic-artifacts in tenancy
    Allow dynamic-group DevOpsDynamicGroup to inspect generic-artifacts in compartment <compartment_name>
  • Das Übertragen von generischen Artefakten an Artifact Registry zulassen, die zum Mandanten oder zu einem bestimmten Compartment gehört:
    Allow dynamic-group DevOpsDynamicGroup to use generic-artifacts in tenancy
    Allow dynamic-group DevOpsDynamicGroup to use generic-artifacts in compartment <compartment_name>

    Siehe Artifact Registry-Policys.

  • Das Abrufen von generischen Artefakten zulassen, die zum Mandanten oder zu einem bestimmten Compartment gehören:
    Allow dynamic-group DevOpsDynamicGroup to read generic-artifacts in tenancy
    Allow dynamic-group DevOpsDynamicGroup to read generic-artifacts in compartment <compartment_name>

Auf Artifact Registry zugreifen

Oracle Cloud Infrastructure Artifact Registry ist ein Repository-Service zum Speichern, Teilen und Verwalten von Packages für die Softwareentwicklung.

Sie können über den DevOps-Service auf die Artefakte zugreifen, die Sie in Artifact Registry speichern. Sie können eine Referenz auf drei Arten von Artefakten in Artifact Registry erstellen: Deployment-Konfigurationen von Instanzgruppen, allgemeine Artefakte und Kubernetes-Manifeste. Ihr Administrator muss den Pipelineressourcen die Berechtigung read all-artifacts erteilen.

Informationen zum Erstellen von Policys mit der Konsole finden Sie unter Anweisungen.

Erstellen Sie eine IAM-Policy, um den Zugriff auf die Artefakte in einem bestimmten Compartment durch die dynamische Gruppe zuzulassen:
Allow dynamic-group DevOpsDynamicGroup to read all-artifacts in compartment <compartment_name>

Weitere Informationen finden Sie unter Artifact Registry-Policys.