Recursos de canalización
Azure Pipelines ofrece mecanismos de seguridad más allá de proteger el archivo YAML y el código fuente. Cuando se ejecutan canalizaciones, el acceso a los recursos pasa por un sistema denominado comprueba. Las comprobaciones pueden suspender o incluso producir un error en la ejecución de una canalización para proteger los recursos. Una canalización puede acceder a dos tipos de recursos, protegidos y abiertos.
Recursos protegidos
Las canalizaciones suelen tener acceso a secretos. Por ejemplo, para firmar la compilación, necesita un certificado de firma. Para implementar en un entorno de producción, necesita una credencial para ese entorno. En Azure Pipelines, todos los siguientes se consideran recursos protegidos:
- grupos de agentes
- grupos de variables
- archivos seguros
- conexiones de servicio
- environments
- Repositorios
"Protegido" significa:
- Se pueden hacer accesibles para usuarios específicos y canalizaciones específicas dentro del proyecto. Los usuarios y canalizaciones no pueden acceder a ellos fuera de un proyecto.
- Puede ejecutar comprobaciones manuales o automatizadas adicionales cada vez que una canalización usa uno de estos recursos. Para más información sobre los recursos protegidos, consulte Acerca de los recursos de canalización.
Protección de recursos de repositorio
Los repositorios se pueden proteger opcionalmente. En el nivel de organización o proyecto, puede optar por limitar el ámbito del token Azure Pipelines acceso a los repositorios mencionados. Al hacerlo, Azure Pipelines agregará dos protecciones adicionales:
- El token de acceso que se proporciona al agente para ejecutar trabajos solo tendrá acceso a los repositorios mencionados explícitamente en la
resourcessección de la canalización. - Los repositorios agregados a la canalización tendrán que estar autorizados por alguien con acceso de lectura al repositorio la primera vez que la canalización use el repositorio.
Esta configuración está en modo predeterminado para todas las organizaciones creadas después de mayo de 2020. Las organizaciones creadas antes de que deberían habilitarla en la configuración de la organización.
Apertura de recursos
Todos los demás recursos de un proyecto se consideran recursos abiertos. Los recursos abiertos incluyen:
- artifacts
- pipelines
- planes de pruebas
- elementos de trabajo
Aprenderá más sobre qué canalizaciones pueden acceder a los recursos de la sección sobre proyectos.
Permisos de usuario
La primera línea de defensa de los recursos protegidos son los permisos de usuario. En general, asegúrese de que solo concede permisos a los usuarios que los necesiten. Todos los recursos protegidos tienen un modelo de seguridad similar. Un miembro del rol de usuario para un recurso puede:
- Quitar aprobadores y comprobaciones configurados en ese recurso
- Concesión de acceso a otros usuarios o canalizaciones para usar ese recurso

Permisos de canalización
Cuando se usan canalizaciones YAML, los permisos de usuario no son suficientes para proteger los recursos protegidos. Puede copiar fácilmente el nombre de un recurso protegido (por ejemplo, una conexión de servicio para el entorno de producción) e incluirlo en una canalización diferente. Los permisos de canalización protegen contra dicha copia. Para cada uno de los recursos protegidos, asegúrese de que ha deshabilitado la opción de conceder acceso a "todas las canalizaciones". En su lugar, se concedió explícitamente acceso a canalizaciones específicas en las que confía.

Comprobaciones
En YAML, una combinación de permisos de usuario y canalización no es suficiente para proteger completamente los recursos protegidos. Los permisos de canalización para los recursos se conceden a toda la canalización. Nada impide que un adversario cree otra rama en el repositorio, inyecte código malintencionado y use la misma canalización para acceder a ese recurso. Incluso sin intención malintencionada, la mayoría de las canalizaciones necesitan un segundo conjunto de ojos para ver los cambios (especialmente en la propia canalización) antes de implementar en producción. Las comprobaciones permiten pausar la ejecución de la canalización hasta que se cumplen ciertas condiciones:
- Comprobación de aprobación manual. Todas las ejecución que usan un recurso protegido del proyecto se bloquean para su aprobación manual antes de continuar. Esto le ofrece la oportunidad de revisar el código y asegurarse de que viene de la rama derecha.
- Comprobación de rama protegida. Si tiene procesos manuales de revisión de código en marcha para algunas de las ramas, puede ampliar esta protección a las canalizaciones. Configure una comprobación de rama protegida en cada uno de los recursos. Esto impedirá automáticamente que la canalización se ejecute sobre cualquier rama de usuario.

Pasos siguientes
A continuación, considere cómo agrupar los recursos en una estructura de proyecto.