Esta página ha sido traducida por una máquina.

Políticas de IAM de DevOps

Cree políticas de IAM para controlar quién tiene acceso a los recursos DevOps y para controlar el tipo de acceso para cada grupo de usuarios.

Antes de controlar el acceso a recursos de DevOps como repositorios de código, pipelines de compilación y pipelines de despliegue, debe crear usuarios y colocarlos en grupos adecuados (consulte Gestión de usuarios y Gestión de grupos). A continuación, puede crear políticas y sentencias de política para controlar el acceso (consulte Gestión de políticas).

Por defecto, los usuarios del grupo Administrators tienen acceso a todos los recursos de DevOps. Si no está familiarizado con las políticas de IAM, consulte Introducción a las políticas.

Para obtener una lista completa de todas las políticas de Oracle Cloud Infrastructure, consulte Referencia de política y Políticas comunes.

Tipos de recursos y permisos

Lista de tipos de recursos de DevOps y permisos asociados.

Para asignar permisos a todos los recursos de DevOps, utilice el tipo agregado devops-family. Para obtener más información, consulte Permisos.

Una política que utiliza <verb> devops-family es igual a escribir una política con una sentencia <verb> <resource-type> independiente para cada uno de los tipos de recursos individuales.

Tipo de recurso Permisos
familia devops Los verbos inspect, read, use, manage se aplican a todos los permisos de tipos de recursos DevOps.

Los verbos inspect y read son aplicables para el permiso 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
familia devops-deploy-

Los verbos inspect, read, use, manage se aplican para los siguientes permisos:

  • 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

Los verbos inspect, read, use, manage se aplican para los siguientes permisos:

  • DEVOPS_REPOSITORY
  • DEVOPS_PULL_REQUEST
  • DEVOPS_PULL_REQUEST_COMMENT
  • DEVOPS_PROTECTED_BRANCH

El verbo manage es aplicable para el permiso 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-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

Teniendo en cuenta los verbos, inspect, read, use, manage se aplica a los siguientes permisos:

  • 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 soportadas

Las variables se utilizan al agregar condiciones a una política.

DevOps soporta las siguientes variables:

  • Entidad: ID de Oracle Cloud (OCID)
  • tringir: texto en formato libre.
  • Número: valor numérico (precisión arbitraria)
  • Lista: lista de entidades, cadenas o números
  • Booleano: True o False

Consulte Variables generales para todas las solicitudes.

Las variables se especifican en minúsculas y separadas por guiones. Por ejemplo, target.tag-namespace.name, target.display-name. Aquí name debe ser un valor único y display-name es la descripción.

El servicio DevOps proporciona las variables necesarias para cada solicitud. El motor de autorización proporciona variables automáticas (ya sea de servicio local con el SDK para un cliente grueso o en el plano de datos de identidad para un cliente fino).

Variables necesarias Tipo Descripción
target.compartment.id Entidad (OCID) OCID del recurso primario para la solicitud.
request.operation Cadena ID de operación (por ejemplo, GetUser) de la solicitud.
target.resource.kind Cadena Nombre de tipo de recurso del recurso primario de la solicitud.
Variables automáticas Tipo Descripción
request.user.id Entidad (OCID) OCID del usuario solicitante.
request.groups.id Lista de entidades (OCID) OCID de los grupos en los que está el usuario solicitante.
target.compartment.name Cadena Nombre del compartimento especificado en target.compartment.id.
target.tenant.id Entidad (OCID) OCID del ID de inquilino de destino.

A continuación, se muestra una lista de orígenes disponibles para las variables:

  • Solicitud: procede de la entrada de la solicitud.
  • Derivado: procede de la solicitud.
  • Almacenado: procede del servicio y la entrada retenida.
  • Calculado: se calcula a partir de los datos del servicio.

Asignación de variables con tipos de recursos

Tipo de recurso Variable Tipo Origen Descripción

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 Entrada Almacenado Disponible para operaciones obtener, actualizar, suprimir y mover en el recurso Proyecto.

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 Cadena Almacenado Disponible para operaciones obtener, actualizar, suprimir y mover en el recurso Proyecto.
devops-deploy-artifact target.artifact.id Entidad Almacenado Disponible para operaciones obtener, actualizar y suprimir en el recurso Artefacto.
devops-deploy-environment target.environment.id Entidad Almacenado Disponible para operaciones obtener, actualizar y suprimir en el recurso Entorno.

devops-deploy-pipeline

devops-deploy-stage

devops-deployment

target.pipeline.id Entidad Almacenado Disponible para operaciones obtener, actualizar y suprimir en el recurso Pipeline.
devops-deploy-stage target.stage.id Entidad Almacenado Disponible para operaciones obtener, actualizar y suprimir en el recurso Etapa.
devops-deployment target.deployment.id Entidad Almacenado Disponible para operaciones obtener, actualizar y suprimir en los tipos de recurso Despliegue.
devops-repository

devops-pull-request

devops-pull-request-comment

devops-protected-branch

target.repository.id Entidad Almacenado Disponible para operaciones obtener, actualizar, suprimir y mover en el recurso Repositorio.
devops-pull-request-comment target.pull-request.id Entidad Almacenado Disponible para operaciones obtener, actualizar y suprimir en el recurso Pull-Request.
devops-repository

devops-pull-request

devops-pull-request-comment

devops-protected-branch

target.repository.name Entidad Almacenado Disponible para operaciones obtener, actualizar, suprimir y mover en el recurso Repositorio.
devops-pull-request-comment target.pull-request.display-name Cadena Almacenado Disponible para operaciones obtener, actualizar y suprimir en el recurso Pull-Request.
devops-repository target.branch.name Entidad Almacenado Disponible para operaciones de Git como upload-pack y receive-pack en la rama del repositorio.
devops-protected-branch target.branch.name Cadena Almacenado Disponible para operaciones obtener, actualizar, suprimir y mover en el recurso Rama protegida.
devops-repository target.tag.name Entidad Almacenado Disponible para operaciones de Git como upload-pack y receive-pack en la rama del repositorio.
devops-pull-request target.pull-request.id Entidad Almacenado Disponible para operaciones obtener, actualizar y suprimir en el recurso Pull-Request.
devops-pull-request target.pull-request.display-name Cadena Almacenado Disponible para operaciones obtener, actualizar y suprimir en el recurso Pull-Request.
devops-connection target.connection.id Entidad Almacenado Disponible para operaciones obtener, actualizar y suprimir en el recurso Conexión.
devops-trigger target.trigger.id Entidad Almacenado Disponible para operaciones obtener, actualizar y suprimir en el recurso Disparador.

devops-build-pipeline

devops-build-pipeline-stage

devops-build-run

target.build-pipeline.id Entidad Almacenado Disponible para operaciones obtener, actualizar y suprimir en el recurso Pipeline de compilación.
devops-build-pipeline-stage target.build-pipeline-stage.id Entidad Almacenado Disponible para operaciones obtener, actualizar y suprimir en el recurso Etapa de pipeline de compilación.
devops-build-run target.build-run.id Entidad Almacenado Disponible para operaciones obtener, actualizar, suprimir y cancelar en el recurso Ejecución de compilación.

Detalles para combinaciones de verbos y tipos de recursos

Identifique los permisos y las operaciones de API que cubre cada verbo para los recursos de DevOps.

El nivel de acceso es acumulativo a medida que pasa de inspect a read a use a manage. Un signo más (+) en una celda de la tabla indica un acceso incremental en comparación con la celda anterior. Todos los permisos (inspeccionar, leer, utilizar y gestionar) son aplicables para el tipo de recurso devops-family, que incluye todos los recursos DevOps.

Para obtener más información sobre cómo otorgar acceso, consulte Permisos.

Creación de una política y un grupo dinámico

Para otorgar permiso a los usuarios para acceder a los distintos recursos de DevOps, como pipelines de compilación, pipelines de despliegue, artefactos y repositorios de código, debe crear grupos, grupos dinámicos y políticas de IAM.

Una política permite a un grupo  trabajar de determinadas formas con tipos específicos de recursos  en un compartimento  concreto.

Política

A continuación, se muestra cómo crear una política en la consola de Oracle Cloud:

  1. Abra el menú de navegación y haga clic en Identidad y seguridad. En Identidad, haga clic en Políticas.
  2. Haga clic en Crear política.
  3. Introduzca un nombre y una descripción para la política.
  4. En Creador de política, haga clic en el conmutador Mostrar editor manual para activar el editor.

    Introduzca una regla de política con el siguiente formato:

    Allow <group> to <verb> <resource_type> in <compartment or tenancy details>
  5. Haga clic en Crear.

Para obtener más información sobre la creación de políticas, consulte Funcionamiento de las políticas y Referencia de políticas.

Para crear un grupo y agregar usuarios al grupo, consulte Gestión de grupos.

Grupo dinámico

Un grupo dinámico es un tipo especial de grupo que contiene recursos (como instancias informáticas) que coincidan con las reglas que haya definido.

Las reglas de coincidencia definen los recursos que pertenecen al grupo dinámico. En la consola, puede introducir la regla manualmente en el cuadro de texto proporcionado o puede utilizar el generador de reglas. Para obtener más información, consulte Escritura de reglas de coincidencia para definir grupos dinámicos. Utilice la regla match-any para hacer coincidir varias condiciones.

Cree un grupo dinámico para sus recursos de DevOps. Puede asignar al grupo dinámico el nombre DevOpsDynamicGroup y sustituir compartmentOCID por el OCID del compartimento:
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'}

Para obtener más información sobre los grupos dinámicos, incluidos los permisos necesarios para crearlos, consulte Gestión de grupos dinámicos y Escritura de políticas para grupos dinámicos.

Sentencia de política necesaria para DevOpsDynamicGroup:
Allow dynamic-group DevOpsDynamicGroup to manage devops-family in compartment <compartment_name>
Nota

Para los arrendamientos que tienen dominios de identidad, el nombre del dominio debe preceder al nombre del grupo dinámico en la política. Por ejemplo, domain-name/{DevOpsDynamicGroup}

Ejemplos de políticas

Políticas de DevOps necesarias para utilizar varios recursos de DevOps como repositorios de código, pipelines de compilación y pipelines de despliegue.

Se proporcionan los siguientes ejemplos de políticas:

Políticas de entorno

Ejemplo de política para crear un entorno de destino que se utiliza para el despliegue.

Consulte las instrucciones para crear políticas mediante la consola.

Cree una política para permitir a los usuarios de un grupo crear, actualizar o suprimir un entorno de OKE privado:
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'}

Políticas del repositorio de código

Ejemplos de políticas para crear un repositorio de código y conectarse a repositorios de código externo como GitHub y GitLab.

Consulte las instrucciones para crear políticas, grupos y grupos dinámicos mediante la consola.

Para crear un repositorio de código, cree las siguientes políticas de IAM:
  • Permitir a los usuarios de un grupo acceder al proyecto de DevOps:
    Allow group <group-name> to read devops-project in compartment <compartment_name>
  • Permitir a los usuarios de un grupo leer, crear, actualizar o suprimir un repositorio:
    Allow group <group-name> to manage devops-repository in compartment <compartment_name>
Para clonar un repositorio, cree las siguientes políticas de IAM:
  • Permitir a los usuarios de un grupo acceder al proyecto de DevOps:
    Allow group <group-name> to read devops-project in compartment <compartment_name>
  • Permitir a los usuarios de un grupo leer o actualizar un repositorio:
    Allow group <group-name> to use devops-repository in compartment <compartment_name>
Para realizar la integración con los repositorios de código externos, cree una política en el compartimento raíz. Por ejemplo, para permitir que el grupo dinámico lea secretos:
Allow dynamic-group DevOpsDynamicGroup to read secret-family in compartment <compartment_name>
Para validar una conexión externa, cree la siguiente política de IAM además de la política para leer secretos:
Allow group <group-name> to use devops-connection in compartment <compartment_name>
Para recibir notificaciones de correo electrónico para solicitudes de extracción en repositorios de código, cree la siguiente política de IAM mediante un grupo dinámico. El administrador debe crear esta política. Por ejemplo, para permitir el grupo dinámico DevOpsDynamicGroup que incluye el recurso de repositorio:
Allow dynamic-group DevOpsDynamicGroup to inspect users in tenancy

Para crear una solicitud de recuperación, debe definir políticas basadas en las acciones que puede realizar un usuario. Para obtener más información y ejemplos, consulte Managing Pull Requests.

Políticas de pipeline de compilación

Ejemplos de políticas para crear pipelines de compilación y agregar etapas al pipeline.

Consulte las instrucciones para crear políticas mediante la consola.

  • Cree políticas de IAM para permitir que el grupo dinámico acceda a los recursos de OCI en el compartimento:
    • Para entregar artefactos, proporcione acceso a Container Registry (OCIR):
      Allow dynamic-group DevOpsDynamicGroup to manage repos in compartment <compartment_name>
    • Para acceder al almacén para el token de acceso personal (PAT), proporcione acceso a secret-family. Esta política es necesaria en la etapa Compilación gestionada para acceder a PAT para descargar el código fuente:
      Allow dynamic-group DevOpsDynamicGroup to read secret-family in compartment <compartment_name>
    • Proporcionar acceso a artefactos de despliegue de lectura en la etapa Entregar artefactos, leer el repositorio de código de DevOps en la etapa Compilación gestionada y disparar el pipeline de despliegue en la etapa Despliegue de disparador:
      Allow dynamic-group DevOpsDynamicGroup to manage devops-family in compartment <compartment_name>
    • Para entregar artefactos, proporcione acceso al repositorio de Artifact Registry:
      Allow dynamic-group DevOpsDynamicGroup to manage generic-artifacts in compartment <compartment_name>
    • Para enviar notificaciones, proporcione acceso al pipeline de compilación:
      Allow dynamic-group DevOpsDynamicGroup to use ons-topics in compartment <compartment_name>
  • Cree políticas para permitir la configuración del acceso privado en la etapa Creación gestionada:
    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 se especifica algún grupo de seguridad de red (NSG) en la configuración de acceso privado, la política debe permitir el acceso a los NSG:
    Allow dynamic-group DevOpsDynamicGroup to use network-security-groups in compartment <customer subnet compartment>
  • Cree una política para permitir que el pipeline de creación acceda al recurso de grupo de autoridad de certificación (CA) para la verificación de seguridad de capa de transporte (TLS):
    Allow dynamic-group DevOpsDynamicGroup to use cabundles in compartment <compartment_name>

Políticas para acceder a los recursos de ADM

Ejemplos de políticas para acceder a los recursos del servicio Application Dependency Management (ADM) desde el pipeline de compilación.

Consulte las instrucciones para crear políticas mediante la consola.

Cree políticas de IAM para permitir que el grupo dinámico acceda a los recursos de ADM en el arrendamiento:
Allow dynamic-group DevOpsDynamicGroup to use adm-knowledge-bases in tenancy
Allow dynamic-group DevOpsDynamicGroup to manage adm-vulnerability-audits in tenancy

Políticas de pipeline de despliegue

Ejemplos de políticas para crear pipelines de despliegue y agregar etapas al pipeline.

Consulte las instrucciones para crear políticas mediante la consola.

Cree políticas de IAM para permitir que el grupo dinámico de pipeline de despliegue acceda a los recursos de su compartimento:
  • Despliegues de clusters de OKE:
    Allow dynamic-group DevOpsDynamicGroup to read all-artifacts in compartment <compartment_name>
    Allow dynamic-group DevOpsDynamicGroup to manage cluster in compartment <compartment_name>
  • Funciones:
    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>
  • Despliegues de grupos de instancias:
    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>
    Para un despliegue de grupo de instancias, también debe crear un grupo dinámico para las siguientes instancias y proporcionar al grupo dinámico determinados permisos:
    • Cree un grupo dinámico para las instancias. Por ejemplo, puede asignar un nombre al grupo dinámico como DeployComputeDynamicGroup y sustituir compartmentOCID por el OCID del compartimento:
      All {instance.compartment.id = 'compartmentOCID'}
    • Crear políticas de IAM para proporcionar el acceso necesario a las instancias de despliegue:
      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>
  • Despliegues de etapa de 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>
  • Fase Aprobación:
    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'}
  • Etapa Shell:
    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 utiliza el grupo de seguridad de red al crear la etapa Shell, agregue la siguiente política:
    Allow dynamic-group DevOpsDynamicGroup to use network-security-groups in compartment <compartment_name>

Políticas de artefactos

Ejemplos de políticas para agregar la etapa Entregar artefactos al pipeline de compilación.

La etapa Entregar artefactos asigna las salidas de compilación de la etapa Compilación gestionada con la versión para entregar a un recurso de artefacto DevOps y, a continuación, al repositorio de código de Oracle Cloud Infrastructure (OCI). DevOps soporta artefactos almacenados en repositorios de OCI Container Registry y Artifact Registry. Consulte Adición de una etapa Entregar artefactos.

Consulte las instrucciones para crear políticas mediante la consola.

Cree las siguientes políticas de IAM:

  • Para ver una lista de todos los repositorios de Container Registry que pertenecen al arrendamiento o a un compartimento concreto:
    Allow dynamic-group DevOpsDynamicGroup to inspect repos in tenancy
    Allow dynamic-group DevOpsDynamicGroup to inspect repos in compartment <compartment_name>
  • Permitir que los artefactos se transfieran a la instancia de Container Registry (OCIR) que pertenece al arrendamiento o a un compartimento concreto:
    Allow dynamic-group DevOpsDynamicGroup to use repos in tenancy
    Allow dynamic-group DevOpsDynamicGroup to use repos in compartment <compartment_name>

    Consulte Políticas para controlar el acceso al repositorio.

  • Capacidad para ver una lista de artefactos genéricos en Artifact Registry que pertenecen al arrendamiento o a un compartimento concreto:
    Allow dynamic-group DevOpsDynamicGroup to inspect generic-artifacts in tenancy
    Allow dynamic-group DevOpsDynamicGroup to inspect generic-artifacts in compartment <compartment_name>
  • Permitir que los artefactos genéricos se transfieran al registro de Artifact Registry que pertenece al arrendamiento o a un compartimento concreto:
    Allow dynamic-group DevOpsDynamicGroup to use generic-artifacts in tenancy
    Allow dynamic-group DevOpsDynamicGroup to use generic-artifacts in compartment <compartment_name>

    Consulte la sección sobre políticas de Artifact Registry.

  • Permita a los usuarios extraer artefactos genéricos que pertenezcan al arrendamiento o a un compartimento concreto:
    Allow dynamic-group DevOpsDynamicGroup to read generic-artifacts in tenancy
    Allow dynamic-group DevOpsDynamicGroup to read generic-artifacts in compartment <compartment_name>

Acceso a Artifact Registry

Oracle Cloud Infrastructure Artifact Registry es un servicio de repositorio para almacenar, compartir y gestionar paquetes de desarrollo de software.

Puede acceder a los artefactos que almacena en Artifact Registry desde el servicio DevOps. Puede crear una referencia a tres tipos de artefactos en Artifact Registry: configuraciones de despliegue de grupo de instancias, artefactos generales y manifiestos de Kubernetes. El administrador debe otorgar el permiso read all-artifacts a los recursos de pipeline.

Consulte las instrucciones para crear políticas mediante la consola.

Cree una política de IAM para permitir que el grupo dinámico acceda a los artefactos de un compartimento específico:
Allow dynamic-group DevOpsDynamicGroup to read all-artifacts in compartment <compartment_name>

Para obtener más información, consulte la sección sobre políticas de Artifact Registry.