Acerca de los recursos de Azure Pipelines
Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2019
Un recurso es todo lo que usa una canalización que reside fuera de la canalización.
Los recursos ofrecen las siguientes ventajas:
- Formas de compartir algo, como un archivo seguro o una contraseña entre canalizaciones.
- Algunos ejemplos de uso compartido de recursos son grupos de variables, archivos seguros y conexiones de servicio. En todos los casos, usa un recurso como una manera de acceder a algo y consumirlo.
- Herramienta para mejorar la seguridad mediante comprobaciones de acceso y otras restricciones.
- Por ejemplo, puede limitar una conexión de servicio para que solo se ejecute en una canalización. También puede asegurarse de que solo se pueda acceder a un repositorio desde una canalización después de una comprobación de aprobación manual.
- Formas de mejorar la rastreabilidad de la canalización y facilitar la solución de problemas de entornos.
- Por ejemplo, puede ver el número de la última ejecución que se implementó en un entorno.
Uso compartido de recursos entre canalizaciones
Comparta recursos entre canalizaciones configurándolas dentro de la interfaz de usuario de canalizaciones. A continuación, haga referencia a esos recursos en una tarea. También puede acceder a algunos recursos compartidos con la sintaxis de canalización de YAML resources
.
Algunos ejemplos de uso compartido de recursos con la interfaz de usuario de canalizaciones incluyen archivos seguros, grupos de variables y conexiones de servicio. Con la sintaxis resources
, algunos ejemplos incluyen el acceso a las propias canalizaciones y a repositorios y paquetes.
La forma en que se usa un recurso en una canalización depende del tipo de canalización y del tipo de recurso.
Para canalizaciones YAML:
- Las conexiones de servicio y los archivos seguros se usan directamente como entradas a las tareas y no es necesario declararlos previamente.
- Los grupos de variables usan la sintaxis
group
. - Las canalizaciones y los repositorios usan la sintaxis
resources
.
Por ejemplo, para usar grupos de variables en una canalización, agregue las variables en Canalizaciones>Biblioteca. Ahora, puede hacer referencia al grupo de variables en la canalización YAML mediante la sintaxis variables
.
variables:
- group: my-variable-group
Para llamar a una segunda canalización desde la canalización con la sintaxis resources
, haga referencia a pipelines
.
resources:
pipelines:
- pipeline: SmartHotel-resource # identifier for the resource (used in pipeline resource variables)
source: SmartHotel-CI # name of the pipeline that produces an artifact
Uso de recursos para mejorar la seguridad
Puede mejorar la seguridad de la canalización con recursos mediante la identificación de cómo se consume el recurso y cómo evitar el acceso no autorizado.
Solo en el caso de canalizaciones YAML, establezca los recursos como protegidos o abiertos. Cuando un recurso está protegido, puede aplicar aprobaciones y comprobaciones para limitar el acceso a usuarios y canalizaciones YAML específicos. Los recursos protegidos incluyen conexiones de servicio, grupos de agentes, entornos, repositorios, grupos de variables y archivos seguros.
Resource | ¿Cómo se consume? | ¿Cómo se impide que una canalización no deseada use esto? |
---|---|---|
conexiones de servicio | Consumido por tareas de un archivo YAML que usa la conexión de servicio como entrada. | Protegido con comprobaciones y permisos de canalización. Los usuarios de la conexión de servicio controlan las comprobaciones y los permisos de canalización. Un propietario de recursos puede controlar qué canalizaciones pueden acceder a una conexión de servicio. También puede usar permisos de canalización para restringir el acceso a canalizaciones YAML concretas y a todas las canalizaciones clásicas. |
variables de secreto en grupos de variables | Existe una sintaxis especial para usar grupos de variables en una canalización o en un trabajo. Un grupo de variables se agrega como una conexión de servicio. | Protegido con comprobaciones y permisos de canalización. Los usuarios del grupo de variables controlan las comprobaciones y los permisos de canalización. Un propietario de recursos puede controlar qué canalizaciones pueden acceder a un grupo de variables. También puede usar permisos de canalización para restringir el acceso a canalizaciones YAML concretas y a todas las canalizaciones clásicas. |
archivos seguros | Las tareas consumen archivos seguros (por ejemplo, la tarea Descargar archivo seguro). | Protegido con comprobaciones y permisos de canalización. Los usuarios de archivos seguros controlan las comprobaciones y los permisos de canalización. Un propietario de recursos puede controlar qué canalizaciones pueden acceder a archivos seguros. También puede usar permisos de canalización para restringir el acceso a canalizaciones YAML concretas y a todas las canalizaciones clásicas. |
grupos de agentes | Hay una sintaxis especial para usar un grupo de agentes para ejecutar un trabajo. | Protegido con comprobaciones y permisos de canalización. Los usuarios del grupo de agentes controlan las comprobaciones y los permisos de canalización. Un propietario de recursos puede controlar qué canalizaciones pueden acceder a un grupo de agentes. También puede usar permisos de canalización para restringir el acceso a canalizaciones YAML concretas y a todas las canalizaciones clásicas. |
environments | Hay una sintaxis especial para usar un entorno en un archivo YAML. | Protegido con comprobaciones y permisos de canalización controlados por los usuarios del entorno. También puede usar permisos de canalización para restringir el acceso a un entorno determinado. |
repositorios | Un script puede clonar un repositorio si el token de acceso del trabajo tiene acceso a él. | Protegido con comprobaciones y permisos de canalización controlados por colaboradores del repositorio. El propietario de un repositorio puede restringir la propiedad. |
artefactos, elementos de trabajo, canalizaciones | Los artefactos de canalización son recursos, pero Azure Artifacts no. Un script puede descargar artefactos si el token de acceso del trabajo tiene acceso a la fuente. Un artefacto de canalización se puede declarar como un recurso en la sección de recursos, principalmente con la intención de desencadenar la canalización cuando hay disponible un nuevo artefacto o para consumir ese artefacto en la canalización. | Los artefactos y los elementos de trabajo tienen sus propios controles de permisos. No se admiten comprobaciones y permisos de canalización para fuentes. |
contenedores, paquetes, webhooks | Estos se encuentran fuera del ecosistema de Azure DevOps y el acceso se controla con las conexiones de servicio. Hay una sintaxis especial para usar los tres tipos en canalizaciones YAML. | Protegido con comprobaciones y permisos de canalización controlados por los usuarios de la conexión de servicio. |
Uso de recursos para la rastreabilidad
Los entornos admiten los siguientes tipos de recursos: