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.0.1' # string. Required when plugin = azureKeyVault && command = sign. Plugin Version. Default: 1.0.1.
    #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 CORRESPONDIENTE CLI de notación de las versiones de GitHub. También comprueba la suma de comprobación del archivo descargado en el archivo dorado de la ./data carpeta y agrega notación a la ruta de acceso.
  • 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 desde el 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 a 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] Allow Referers API
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.0.1.

Versión del complemento de Azure Key Vault que se va a instalar. Consulte la página de versiones notation-azure-kv 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 el identificador de clave o 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 Notación 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 CORRESPONDIENTE CLI de notación de las versiones de GitHub. También comprueba la suma de comprobación del archivo descargado en el archivo dorado de la ./data carpeta y agrega notación a la ruta de acceso.

Comando de signo de notación

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