Share via


Notation@0 - Notatie v0-taak

Azure Pipepine-taak voor het instellen van notatie-CLI, ondertekenen en verifiëren met Notation.

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.

Invoerwaarden

command - Uit te voeren opdracht
string. Vereist. Toegestane waarden: install, sign, verify. Standaardwaarde: install.

Hiermee geeft u de opdrachtmodus van de taak.

  • install : install de opdracht detecteert het huidige besturingssysteem en de huidige architectuur om de bijbehorende Notation CLI te downloaden van GitHub-releases. Ook wordt de controlesom van het gedownloade bestand gecontroleerd op basis van het gouden bestand in de ./data map en wordt notatie toegevoegd aan het PAD.
  • sign : de sign opdracht downloadt de geselecteerde Notation-invoegtoepassing, valideert de controlesom en roept vervolgens aan op de Notation CLI om te ondertekenen.
  • verify : met de verify opdracht worden het vertrouwensarchief en het vertrouwensbeleid overgedragen van de codeopslagplaats van de gebruiker naar de configuratiemap Notation, zoals vereist door de Notation CLI. Vervolgens wordt de Notation CLI aangeroepen om verificatie uit te voeren.

isCustomVersion - Aangepaste versie
boolean. Optioneel. Gebruik wanneer command = install. Standaardwaarde: false.

Geef true op om een aangepaste versie van Notation op te geven voor de taak door een download-URL op te geven naar de aangepaste versie in de url eigenschap.


version - Versie
string. Vereist wanneer command = install && isCustomVersion = false. Standaardwaarde: 1.1.0.

De versie van Notation die moet worden geïnstalleerd. Voorbeeld: 1.0.0, 1, 1.0, 1.0.0.


url - Download-URL
string. Vereist wanneer command = install && isCustomVersion = true.

De URL naar een aangepaste versie van Notation die moet worden gebruikt, bijvoorbeeld: https://github.com/notaryproject/notation/releases/download/v1.0.0/notation_1.0.0_linux_amd64.tar.gz.


checksum - Checksum
string. Vereist wanneer command = install && isCustomVersion = true.

De SHA-256-controlesom van het gedownloade bestand.


artifactRefs - Artefactverwijzingen
string. Optioneel. Gebruik wanneer command = verify || command = sign.

Verwijzingen naar containerartefacten voor ondertekening. Als deze niet is opgegeven, gebruikt de taak de artefactreferentie uit de vorige Docker-pushtaak. Bijvoorbeeld: <registry name>/<repository name>@<digest>. Meerdere artefactverwijzingen moeten door komma's worden gescheiden.


signatureFormat - Handtekeningindeling
string. Optioneel. Gebruik wanneer command = sign && command = sign || command = verify. Toegestane waarden: cose, jws. Standaardwaarde: cose.

Formaat van handtekeningenvelop.


allowReferrersAPI - [Experimenteel] Referrers-API toestaan
boolean. Optioneel. Gebruik wanneer command = sign || command = verify. Standaardwaarde: false.

Gebruik de Verwijzers-API om handtekeningen te ondertekenen, indien niet ondersteund (retourneert 404), terug te vallen op het tagschema Referrers.


plugin - Plugin
string. Vereist wanneer command = sign. Toegestane waarden: azureKeyVault (Azure Key Vault-invoegtoepassing). Standaardwaarde: azureKeyVault.


akvPluginVersion - Versie van invoegtoepassing
string. Vereist wanneer plugin = azureKeyVault && command = sign. Standaardwaarde: 1.1.0.

De versie van de Azure Key Vault-invoegtoepassing die moet worden geïnstalleerd. Zie de pagina notation-azure-kv releases voor de beschikbare versies.


azurekvServiceConection - Azure Key Vault-serviceverbinding
string. Optioneel. Gebruik wanneer plugin = azureKeyVault && command = sign.

Selecteer het Azure-abonnement voor de sleutelkluis als u liever de serviceverbinding wilt gebruiken voor verificatie.


keyid - Sleutel-id
string. Vereist wanneer plugin = azureKeyVault && command = sign.

De sleutel-id is de sleutel- of certificaat-id voor Azure Key Vault.


caCertBundle - Bestandspad certificaatbundel
string. Optioneel. Gebruik wanneer plugin = azureKeyVault && command = sign.

Het certificaatbundelbestand met basiscertificaten en alle tussenliggende certificaten, beginnend bij het basiscertificaat, volgens de volgorde in de certificaatketen.


selfSigned - Zelfondertekend certificaat
boolean. Optioneel. Gebruik wanneer plugin = azureKeyVault && command = sign. Standaardwaarde: false.

Of het certificaat een zelfondertekend certificaat is.


trustPolicy - Pad naar vertrouwensbeleidsbestand
string. Vereist wanneer command = verify.

Het pad naar het vertrouwensbeleidsbestand ten opzichte van de opslagplaats. Bijvoorbeeld: ./path/to/trust-policy.json.


trustStore - Pad naar map vertrouwensarchief
string. Vereist wanneer command = verify.

Het pad naar de map met het vertrouwensarchief ten opzichte van de opslagplaats. Bijvoorbeeld: ./path/to/truststore/.


Opties voor taakbeheer

Alle taken hebben besturingsopties naast hun taakinvoer. Zie Besturingsopties en algemene taakeigenschappen voor meer informatie.

Uitvoervariabelen

Geen.

Opmerkingen

De taak Notatie roept de Notation CLI aan om ondertekenings- en verificatiebewerkingen uit te voeren. Notation CLI is een hulpprogramma dat wordt gebruikt voor het ondertekenen en verifiëren van Docker-containerartefacten of -installatiekopieën. Bij het ondertekenen van een artefact ondertekent Notation de unieke manifestdescriptor van het artefact en wordt de handtekening aan dezelfde opslagplaats gekoppeld. Bij het verifiëren van een artefact haalt Notation de handtekening op uit de opslagplaats en valideert deze op basis van het certificaat in het vertrouwensarchief.

Vereisten

  • Voor deze taak is openbare netwerktoegang vereist voor het downloaden van Notation CLI en Notation Azure Key Vault-invoegtoepassing van Github-releases.
  • Ondersteund agent-besturingssysteem: Linux x64/ARM64, Windows x64, macOS x64/ARM64

Opdracht Notation install

De install opdracht detecteert het huidige besturingssysteem en de huidige architectuur om de bijbehorende Notation CLI te downloaden van GitHub-releases. Ook wordt de controlesom van het gedownloade bestand gecontroleerd op basis van het gouden bestand in de ./data map en wordt notatie toegevoegd aan het PAD.

Opdracht notatieteken

De sign opdracht downloadt de geselecteerde invoegtoepassing Notatie, valideert de controlesom en roept vervolgens de Notatie-CLI aan om te ondertekenen.

Opdracht Notatie controleren

Met de verify opdracht worden het vertrouwensarchief en het vertrouwensbeleid overgedragen van de codeopslagplaats van de gebruiker naar de map Notation-configuratie, zoals vereist door notatie-CLI. Vervolgens wordt de notatie-CLI aangeroepen om verificatie uit te voeren.

Vereisten

Vereiste Beschrijving
Pijplijntypen YAML, klassieke build, klassieke release
Wordt uitgevoerd op Agent, DeploymentGroup
Eisen Geen
Functies Deze taak voldoet niet aan eventuele vereisten voor volgende taken in de taak.
Opdrachtbeperkingen Alle
Instelbare variabelen Alle
Agentversie 2.144.0 of hoger
Taakcategorie Hulpprogramma