Notation@0: tarea Notación v0
Tarea de Azure Pipepine para configurar la CLI de notación, firme y compruebe con notación.
Syntax
# Notation v0
# Azure Pipepine Task for setting up Notation CLI, sign and verify with Notation.
- task: Notation@0
inputs:
command: 'install' # 'install' | 'sign' | 'verify'. Required. Command to run. Default: install.
# Command Configuration
#isCustomVersion: false # boolean. Optional. Use when command = install. Custom Version. Default: false.
#version: '1.1.0' # string. Required when command = install && isCustomVersion = false. Version. Default: 1.1.0.
#url: # string. Required when command = install && isCustomVersion = true. Download URL.
#checksum: # string. Required when command = install && isCustomVersion = true. Checksum.
#artifactRefs: # string. Optional. Use when command = verify || command = sign. Artifact references.
#trustPolicy: # string. Required when command = verify. Trust Policy File Path.
#trustStore: # string. Required when command = verify. Trust Store Folder Path.
# Advanced Configuration
#signatureFormat: 'cose' # 'cose' | 'jws'. Optional. Use when command = sign && command = sign || command = verify. Signature Format. Default: cose.
#allowReferrersAPI: false # boolean. Optional. Use when command = sign || command = verify. [Experimental] Allow Referrers API. Default: false.
# Plugin Configuration
#plugin: 'azureKeyVault' # 'azureKeyVault'. Required when command = sign. Plugin. Default: azureKeyVault.
#akvPluginVersion: '1.1.0' # string. Required when plugin = azureKeyVault && command = sign. Plugin Version. Default: 1.1.0.
#azurekvServiceConection: # string. Optional. Use when plugin = azureKeyVault && command = sign. Azure Key Vault service connection.
#keyid: # string. Required when plugin = azureKeyVault && command = sign. Key ID.
#caCertBundle: # string. Optional. Use when plugin = azureKeyVault && command = sign. Certificate Bundle File Path.
#selfSigned: false # boolean. Optional. Use when plugin = azureKeyVault && command = sign. Self-signed Certificate. Default: false.
Entradas
command
- Comando para ejecutar
string
. Obligatorio. Valores permitidos: install
, sign
y verify
. Valor predeterminado: install
.
Especifica el modo de comando de la tarea.
- install : el
install
comando detecta el sistema operativo y la arquitectura actuales para descargar la CLI de notación correspondiente de las versiones de GitHub. También comprueba la suma de comprobación del archivo descargado en el archivo golden de la./data
carpeta y agrega notación a path. - sign : el
sign
comando descarga el complemento notación seleccionado, valida su suma de comprobación y, a continuación, llama a en la CLI de notación para firmar. - verify : el
verify
comando transfiere el almacén de confianza y la directiva de confianza del repositorio de código del usuario a la carpeta de configuración de notación, según lo requiera la CLI de notación. A continuación, invoca la CLI de notación para realizar la comprobación.
isCustomVersion
- Versión personalizada
boolean
. Opcional. Use cuando command = install
. Valor predeterminado: false
.
Especifique true
para proporcionar una versión personalizada de notación para la tarea especificando una dirección URL de descarga a la versión personalizada en la url
propiedad .
version
- Versión
string
. Necesario cuando command = install && isCustomVersion = false
. Valor predeterminado: 1.1.0
.
Versión de notación que se va a instalar. Ejemplo: 1.0.0, 1, 1.0, 1.0.0.
url
- Dirección URL de descarga
string
. Necesario cuando command = install && isCustomVersion = true
.
Dirección URL de una versión personalizada de Notación que se va a usar, por ejemplo: https://github.com/notaryproject/notation/releases/download/v1.0.0/notation_1.0.0_linux_amd64.tar.gz
.
checksum
- Checksum
string
. Necesario cuando command = install && isCustomVersion = true
.
Suma de comprobación SHA-256 del archivo descargado.
artifactRefs
- Referencias de artefacto
string
. Opcional. Use cuando command = verify || command = sign
.
Referencias de artefactos de contenedor para la firma. Si no se especifica, la tarea usa la referencia de artefacto de la tarea de inserción de Docker anterior. Ejemplo: <registry name>/<repository name>@<digest>
. Varias referencias de artefacto deben estar separadas por comas.
signatureFormat
- Formato de firma
string
. Opcional. Use cuando command = sign && command = sign || command = verify
. Valores permitidos: cose
, jws
. Valor predeterminado: cose
.
Formato de sobre de firma.
allowReferrersAPI
- [Experimental] PERMITIR API de referencias
boolean
. Opcional. Use cuando command = sign || command = verify
. Valor predeterminado: false
.
Use la API de referencias para firmar firmas, si no se admite (devuelve 404), reserva al esquema de etiquetas de referencia.
plugin
- Plugin
string
. Necesario cuando command = sign
. Valores permitidos: azureKeyVault
(complemento de Azure Key Vault). Valor predeterminado: azureKeyVault
.
akvPluginVersion
- Versión del complemento
string
. Necesario cuando plugin = azureKeyVault && command = sign
. Valor predeterminado: 1.1.0
.
La versión del complemento de Azure Key Vault que se va a instalar. Consulte la página notation-azure-kv releases (Notation-azure-kv releases) para ver las versiones disponibles.
azurekvServiceConection
- Conexión de servicio de Azure Key Vault
string
. Opcional. Use cuando plugin = azureKeyVault && command = sign
.
Seleccione la suscripción de Azure para el almacén de claves si prefiere usar la conexión de servicio para la autenticación.
keyid
- Id. de clave
string
. Necesario cuando plugin = azureKeyVault && command = sign
.
El identificador de clave es la clave o el identificador de certificado de Azure Key Vault.
caCertBundle
- Ruta de acceso del archivo de agrupación de certificados
string
. Opcional. Use cuando plugin = azureKeyVault && command = sign
.
El archivo de agrupación de certificados con certificados raíz y todos los certificados intermedios, a partir del certificado raíz, siguiendo el orden de la cadena de certificados.
selfSigned
- Certificado autofirmado
boolean
. Opcional. Use cuando plugin = azureKeyVault && command = sign
. Valor predeterminado: false
.
Si el certificado es un certificado autofirmado.
trustPolicy
- Ruta de acceso del archivo de directiva de confianza
string
. Necesario cuando command = verify
.
Ruta de acceso al archivo de directiva de confianza en relación con el repositorio. Ejemplo: ./path/to/trust-policy.json
.
trustStore
- Ruta de acceso de carpeta del almacén de confianza
string
. Necesario cuando command = verify
.
Ruta de acceso al directorio que contiene el almacén de confianza en relación con el repositorio. Ejemplo: ./path/to/truststore/
.
Opciones de control de tareas
Todas las tareas tienen opciones de control además de las entradas de tareas. Para obtener más información, vea Opciones de control y propiedades de tareas comunes.
Variables de salida
Ninguno.
Comentarios
La tarea Notation llama a la CLI de notación para ejecutar operaciones de firma y comprobación. La CLI de notación es una herramienta que se usa para firmar y comprobar los artefactos o imágenes del contenedor de Docker. Al firmar un artefacto, Notation firma el descriptor de manifiesto único del artefacto y adjunta la firma al mismo repositorio. Al comprobar un artefacto, Notation recupera la firma del repositorio y la valida con el certificado del almacén de confianza.
Requisitos previos
- Esta tarea requiere acceso a la red pública para descargar la CLI de notación y el complemento notación de Azure Key Vault de las versiones de GitHub.
- Sistema operativo del agente compatible: Linux x64/ARM64, Windows x64, macOS x64/ARM64
Comando de instalación de notación
El install
comando detecta el sistema operativo y la arquitectura actuales para descargar la CLI de notación correspondiente de las versiones de GitHub. También comprueba la suma de comprobación del archivo descargado en el archivo golden de la ./data
carpeta y agrega notación a path.
Comando notation sign
El sign
comando descarga el complemento notación seleccionado, valida su suma de comprobación y, a continuación, llama a en la CLI de notación para firmar.
Comando Notation verify
El verify
comando transfiere el almacén de confianza y la directiva de confianza del repositorio de código del usuario a la carpeta de configuración de notación, según lo requiera la CLI de notación. A continuación, invoca la CLI de notación para realizar la comprobación.
Requisitos
Requisito | Descripción |
---|---|
Tipos de canalización | YAML, compilación clásica, versión clásica |
Se ejecuta en | Agente, DeploymentGroup |
Peticiones | None |
Capabilities | Esta tarea no satisface ninguna demanda de tareas posteriores en el trabajo. |
Restricciones de comandos | Any |
Variables que se pueden establecer | Any |
Versión del agente | 2.144.0 o superior |
Categoría de la tarea: | Utilidad |