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.
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.
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.
En esta tabla, se muestran los permisos y las API cubiertas totalmente por los permisos para el recurso devops-build-run.
Verbos
Permisos
API cubiertas
Descripción
inspect
DEVOPS_BUILD_RUN_INSPECT
ListBuildRuns
Muestra las ejecuciones de compilación en un proyecto o compartimento.
read
inspect+
DEVOPS_BUILD_RUN_READ
inspect+
GetBuildRun
Obtiene una ejecución de compilación específica por ID.
use
read+
DEVOPS_BUILD_RUN_UPDATE
read+
UpdateBuildRun
Actualiza una ejecución de compilación existente.
use
read+
DEVOPS_BUILD_RUN_CANCEL
read+
CancelBuildRun
Cancela una ejecución de compilación en ejecución.
manage
use+
DEVOPS_BUILD_RUN_CREATE
use+
CreateBuildRun
Inicia una ejecución de compilación para un pipeline de compilación especificado.
manage
use+
DEVOPS_BUILD_RUN_DELETE
use+
DeleteBuildRun
Suprime una ejecución de compilación existente.
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.
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:
Copiar
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'}
Sentencia de política necesaria para DevOpsDynamicGroup:
Copiar
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:
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:
Copiar
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:
Copiar
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:
Copiar
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:
Copiar
Allow group <group-name> to read devops-project in compartment <compartment_name>
Permitir a los usuarios de un grupo leer o actualizar un repositorio:
Copiar
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:
Copiar
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:
Copiar
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:
Copiar
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):
Copiar
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:
Copiar
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:
Copiar
Allow dynamic-group DevOpsDynamicGroup to manage devops-family in compartment <compartment_name>
Para entregar artefactos, proporcione acceso al repositorio de Artifact Registry:
Copiar
Allow dynamic-group DevOpsDynamicGroup to manage generic-artifacts in compartment <compartment_name>
Para enviar notificaciones, proporcione acceso al pipeline de compilación:
Copiar
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:
Copiar
Allow dynamic-group DevOpsDynamicGroup to use subnets in compartment <customer subnet compartment>
Copiar
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:
Copiar
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):
Copiar
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:
Copiar
Allow dynamic-group DevOpsDynamicGroup to use adm-knowledge-bases in tenancy
Copiar
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:
Copiar
Allow dynamic-group DevOpsDynamicGroup to read all-artifacts in compartment <compartment_name>
Allow dynamic-group DevOpsDynamicGroup to manage cluster in compartment <compartment_name>
Funciones:
Copiar
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:
Copiar
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:
Copiar
All {instance.compartment.id = 'compartmentOCID'}
Crear políticas de IAM para proporcionar el acceso necesario a las instancias de despliegue:
Copiar
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:
Copiar
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:
Copiar
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:
Copiar
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:
Copiar
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:
Copiar
Allow dynamic-group DevOpsDynamicGroup to inspect repos in tenancy
Copiar
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:
Copiar
Allow dynamic-group DevOpsDynamicGroup to use repos in tenancy
Copiar
Allow dynamic-group DevOpsDynamicGroup to use repos in compartment <compartment_name>
Permita a los usuarios extraer artefactos genéricos que pertenezcan al arrendamiento o a un compartimento concreto:
Copiar
Allow dynamic-group DevOpsDynamicGroup to read generic-artifacts in tenancy
Copiar
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:
Copiar
Allow dynamic-group DevOpsDynamicGroup to read all-artifacts in compartment <compartment_name>