Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Tarefa Pipepine do Azure para configurar a CLI de Notação, assinar e verificar com Notação.
Sintaxe
# 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.3.2' # string. Required when command = install && isCustomVersion = false. Version. Default: 1.3.2.
#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 = verify) && command = sign. 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.2.1' # string. Required when plugin = azureKeyVault && command = sign. Plugin Version. Default: 1.2.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.
# Timestamp
#timestampURL: # string. Optional. Use when command = sign. Timestamp URL.
#timestampRootCert: # string. Optional. Use when command = sign. Timestamp Root Certificate.
Entradas
Comando command - para executar
string. Obrigatório Valores permitidos: install, sign, verify. Valor padrão: install.
Especifica o modo de comando da tarefa.
-
instalar – o comando
installdetecta o sistema operacional e a arquitetura atuais para baixar a CLI de Notação correspondente das versões do GitHub. Ele também verifica a soma de verificação do arquivo baixado em relação ao arquivo dourado na pasta./datae adiciona Notação ao PATH. -
assinar - O comando
signbaixa o plug-in notation selecionado, valida sua soma de verificação e, em seguida, chama a CLI de Notação para assinar. -
verificar – o comando
verifytransfere o repositório de confiança e a política de confiança do repositório de código do usuário para a pasta de configuração notação, conforme exigido pela CLI de Notação. Em seguida, ele invoca a CLI de Notação para executar a verificação.
isCustomVersion
-
versão personalizada
boolean. Opcional. Use quando command = install. Valor padrão: false.
Especifique true para fornecer uma versão personalizada do Notation para a tarefa especificando uma URL de download para a versão personalizada na propriedade url.
version
-
versão
string. Necessário quando command = install && isCustomVersion = false. Valor padrão: 1.3.2.
A versão do Notation a ser instalada. Exemplo: 1.0.0, 1, 1.0, 1.0.0.
url
-
baixar de URL
string. Necessário quando command = install && isCustomVersion = true.
A URL para uma versão personalizada do Notation a ser usada, por exemplo: https://github.com/notaryproject/notation/releases/download/v1.0.0/notation_1.0.0_linux_amd64.tar.gz.
checksum
-
de soma de verificação
string. Necessário quando command = install && isCustomVersion = true.
A soma de verificação SHA-256 do arquivo baixado.
referências do artefato artifactRefs -
string. Opcional. Use quando command = verify || command = sign.
Referências de artefato de contêiner para assinatura. Se não for especificado, a tarefa usará a referência de artefato da tarefa de push anterior do Docker. Exemplo: <registry name>/<repository name>@<digest>. Várias referências de artefato devem ser separadas por vírgula.
signatureFormat
-
de formato de assinatura
string. Opcional. Use quando (command = sign || command = verify) && command = sign. Valores permitidos: cose, jws. Valor padrão: cose.
Formato de envelope de assinatura.
allowReferrersAPI
-
[experimental] permitir de API de referenciadores
boolean. Opcional. Use quando command = sign || command = verify. Valor padrão: false.
Use a API de Referenciadores para assinar assinaturas, se não houver suporte (retorna 404), fallback para o esquema de marca Referenciadores.
plugin
-
plug-in
string. Necessário quando command = sign. Valores permitidos: azureKeyVault (Plug-in do Azure Key Vault). Valor padrão: azureKeyVault.
akvPluginVersion
-
versão do plug-in
string. Necessário quando plugin = azureKeyVault && command = sign. Valor padrão: 1.2.1.
A versão do plug-in do Azure Key Vault a ser instalada. Consulte a página de versões notation-azure-kv para versões disponíveis.
azurekvServiceConection
-
de conexão de serviço do Azure Key Vault
string. Opcional. Use quando plugin = azureKeyVault && command = sign.
Selecione a assinatura do Azure para o cofre de chaves se preferir usar a conexão de serviço para autenticação.
de ID da chave keyid -
string. Necessário quando plugin = azureKeyVault && command = sign.
A ID da chave é o identificador de chave ou certificado do Azure Key Vault.
caCertBundle
-
caminho do arquivo do pacote de certificados
string. Opcional. Use quando plugin = azureKeyVault && command = sign.
O arquivo de pacote de certificado com certificados raiz e todos os certificados intermediários, começando pelo certificado raiz, seguindo o pedido na cadeia de certificados.
selfSigned
-
de Certificado Autoassinado
boolean. Opcional. Use quando plugin = azureKeyVault && command = sign. Valor padrão: false.
Se o certificado é um certificado autoassinado.
timestampURL
-
de URL do carimbo de data/hora
string. Opcional. Use quando command = sign.
URL do servidor TSA (Autoridade de Carimbo de Data/Hora) RFC 3161. (Exigir Notação v1.2.0 ou posterior).
de certificado raiz do carimbo de data/hora do timestampRootCert -
string. Opcional. Use quando command = sign.
filepath do certificado raiz da autoridade de carimbo de data/hora. (Exigir Notação v1.2.0 ou posterior).
trustPolicy
-
caminho do arquivo de política de confiança
string. Necessário quando command = verify.
O caminho para a política de confiança arquivo relativo ao repositório. Exemplo: ./path/to/trust-policy.json.
trustStore
-
caminho da pasta do repositório de confiança
string. Necessário quando command = verify.
O caminho para o diretório que contém o repositório de confiança relativo ao repositório. Exemplo: ./path/to/truststore/.
Opções de controle de tarefa
Todas as tarefas têm opções de controle além das suas entradas de tarefas. Para obter mais informações, consulte as opções de Controle de e as propriedades comuns da tarefa.
Variáveis de saída
Nenhum.
Observações
A tarefa Notação chama a CLI de Notação para executar operações de assinatura e verificação. A CLI de notação é uma ferramenta usada para assinar e verificar imagens ou artefatos de contêiner do Docker. Ao assinar um artefato, Notation assina o descritor de manifesto exclusivo do artefato e anexa a assinatura ao mesmo repositório. Ao verificar um artefato, Notation recupera a assinatura do repositório e a valida no certificado no repositório de confiança.
Pré-requisitos
- Essa tarefa requer acesso à rede pública para baixar o plug-in notation CLI e Notation Azure Key Vault das versões do Github.
- Sistema operacional do agente com suporte: Linux x64/ARM64, Windows x64, macOS x64/ARM64
Comando de instalação de notação
O comando install detecta o sistema operacional atual e a arquitetura para baixar a CLI de Notação correspondente das versões do GitHub. Ele também verifica a soma de verificação do arquivo baixado em relação ao arquivo dourado na pasta ./data e adiciona Notação ao PATH.
Comando de sinal de notação
O comando sign baixa o plug-in notation selecionado, valida sua soma de verificação e, em seguida, chama a CLI de Notação para assinar.
Comando de verificação de notação
O comando verify transfere o repositório de confiança e a política de confiança do repositório de código do usuário para a pasta de configuração notação, conforme exigido pela CLI de Notação. Em seguida, ele invoca a CLI de Notação para executar a verificação.
Requisitos
| Requisito | Descrição |
|---|---|
| Tipos de pipeline | YAML, build clássico, versão clássica |
| Execuções em | Agente, DeploymentGroup |
| de demandas | Nenhum |
| recursos | Essa tarefa não atende a nenhuma demanda para tarefas subsequentes no trabalho. |
| restrições de comando | Qualquer |
| variáveis settable | Qualquer |
| Versão do agente | 2.144.0 ou superior |
| Categoria de tarefa | Utilidade |