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.
Políticas del repositorio de código
Políticas necesarias para crear sus propios repositorios de código privados y conectarse a repositorios de código externos como GitHub y GitLab.
Consulte las instrucciones para crear políticas mediante la consola.
-
Crea grupos dinámicos para el repositorio de código. Puede asignar un nombre al grupo dinámico como, por ejemplo,
CoderepoDynamicGroup
. Necesita el OCID del compartimento:ALL {resource.type = 'devopsrepository', 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.
- Cree las siguientes políticas de IAM:
- Permitir que el grupo dinámico gestione los recursos de DevOps en el compartimento:
Allow dynamic-group CoderepoDynamicGroup to manage devops-family in compartment <compartment_name>
- Permitir que los repositorios de código accedan a todos sus recursos del arrendamiento:
Allow dynamic-group CoderepoDynamicGroup to manage all-resources in tenancy
Los repositorios de código utilizan una entidad de recurso para acceder a los recursos de OCI.
- Para entregar artefactos, proporcione acceso a Container Registry (OCIR):
Allow dynamic-group CoderepoDynamicGroup to manage repositories in compartment <compartment_name>
- Para entregar artefactos, proporcione acceso a Artifact Registry:
Allow dynamic-group CoderepoDynamicGroup to manage generic-artifacts in compartment <compartment_name>
- Permitir que el grupo dinámico gestione los recursos de DevOps en el compartimento:
- Para integrarse con los repositorios de código externo como GitHub y GitLab, cree una política en el compartimento raíz. Por ejemplo, para permitir que el grupo dinámico lea secretos:
ALL {resource.type = 'devopsconnection', resource.compartment.id = 'compartmentOCID'}
Allow dynamic-group <dynamicGroupName> to read secret-family in tenancy
Políticas de pipeline de compilación
Políticas necesarias para crear pipelines de compilación y agregar etapas al pipeline.
Consulte las instrucciones para crear políticas mediante la consola.
-
Cree grupos dinámicos para el pipeline de compilación. Puede asignar un nombre al grupo dinámico como, por ejemplo,
BuildDynamicGroup
. Necesita el OCID del compartimento:ALL {resource.type = 'devopsbuildpipeline', 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.
- 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 BuildDynamicGroup 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 BuildDynamicGroup to read secret-family in compartment <compartment_name>
- Proporcione acceso a artefactos de despliegue de lectura en la etapa Entregar artefactos, lea el repositorio de código de DevOps en la etapa Compilación y dispare el pipeline de despliegue en la etapa Despliegue de disparador:
Allow dynamic-group BuildDynamicGroup to manage devops-family in compartment <compartment_name>
- Para entregar artefactos, proporcione acceso al repositorio de Artifact Registry:
Allow dynamic-group build-dynamic-group to manage generic-artifacts in compartment <compartment_name>
- Para enviar notificaciones, proporcione acceso al pipeline de compilación:
Allow dynamic-group BuildDynamicGroup to use ons-topics in compartment <compartment_name>
- Para entregar artefactos, proporcione acceso a Container Registry (OCIR):
Políticas de pipeline de despliegue
Políticas necesarias para crear pipelines de despliegue y agregar etapas al pipeline.
Consulte las instrucciones para crear políticas mediante la consola.
-
Cree grupos dinámicos para el pipeline de despliegue. Puede asignar un nombre al grupo dinámico como, por ejemplo,
DeployDynamicGroup
. Necesita el OCID del compartimento:All {resource.type = 'devopsdeploypipeline', resource.compartment.id = 'compartment_ocid'}
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.
- Cree las siguientes políticas de IAM:
-
Permita que el grupo dinámico acceda a todos los recursos de su arrendamiento:
Allow dynamic-group DeployDynamicGroup to manage all-resources in tenancy
- Permita que el pipeline de despliegue acceda al grupo de instancias para el despliegue del grupo de instancias:
All {instance.compartment.id = 'compartmentOCID'}
Allow dynamic-group DeployDynamicGroup to use instance-agent-command-execution-family in compartment <compartment_name>
Allow dynamic-group DeployDynamicGroup to read generic-artifacts in compartment <compartment_name>
-
Para conocer las políticas para acceder a otros recursos de OCI, consulte Acceso a recursos de OCI.
Políticas de artefactos
Políticas necesarias para agregar la etapa Entregar artefactos al pipeline de compilación.
Consulte las instrucciones para crear políticas mediante la consola.
DevOps soporta los artefactos almacenados en los repositorios de Oracle Cloud Infrastructure (OCI) Container Registry y Artifact Registry. Consulte Adición de una etapa Entregar artefactos.
- Cree grupos dinámicos para los pipelines de compilación. Consulte Gestión de grupos dinámicos.
-
Permita que grupo dinámico lea el recurso de artefacto de despliegue:
Allow dynamic-group <dynamic-group-containing-the-build-pipeline-resource> to use devops-family in tenancy
- Cree las siguientes políticas de IAM:
- Permita que los artefactos se envíen a Container Registry (OCIR):
Allow dynamic-group <dynamic-group-containing-the-build-pipeline-resource> to manage repos in tenancy
- Permita que los artefactos se envíen a Artifact Registry:
Allow dynamic-group <dynamic-group-containing-the-build-pipeline-resource> to use artifact-repositories in tenancy
Allow dynamic-group <dynamic-group-containing-the-build-pipeline-resource> to manage generic-artifacts in tenancy
Consulte Políticas de IAM de Artifact Registry.
- Permita el acceso a
all-artifacts
:Allow dynamic-group <dynamic-group-containing-the-build-pipeline-resource> to manage all-artifacts in tenancy
- Permita que los artefactos se envíen a Container Registry (OCIR):