Sdílet prostřednictvím


Notation@0 – úloha notace v0

Úloha Azure Pipepine pro nastavení rozhraní příkazového řádku notace, podepsání a ověření pomocí notace

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.2.0' # string. Required when command = install && isCustomVersion = false. Version. Default: 1.2.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.2.0' # string. Required when plugin = azureKeyVault && command = sign. Plugin Version. Default: 1.2.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.
  # Timestamp
    #timestampURL: # string. Optional. Use when command = sign. Timestamp URL. 
    #timestampRootCert: # string. Optional. Use when command = sign. Timestamp Root Certificate.

Vstupy

příkaz command - ke spuštění
string. Požadovaný. Povolené hodnoty: install, sign, verify. Výchozí hodnota: install.

Určuje režim příkazu úkolu.

  • nainstalovat – příkaz install zjistí aktuální operační systém a architekturu pro stažení odpovídajícího rozhraní příkazového řádku notace z verzí GitHubu. Ověřuje také kontrolní součet staženého souboru se zlatým souborem ve složce ./data a přidá zápis do cesty.
  • znaménko – příkaz sign stáhne vybraný modul plug-in Notation, ověří jeho kontrolní součet a potom zavolá rozhraní příkazového řádku notace k podepsání.
  • ověření – příkaz verify přenese zásady úložiště důvěryhodnosti a důvěryhodnosti z úložiště kódu uživatele do konfigurační složky notace, jak to vyžaduje rozhraní příkazového řádku notace. Potom vyvolá rozhraní příkazového řádku notace k provedení ověření.

vlastní verze
boolean. Volitelný. Používá se při command = install. Výchozí hodnota: false.

Zadejte true pro zadání vlastní verze zápisu úkolu zadáním adresy URL pro stažení vlastní verze ve vlastnosti url.


version - verze
string. Požadováno při command = install && isCustomVersion = false. Výchozí hodnota: 1.2.0.

Verze notace, která se má nainstalovat. Příklad: 1.0.0, 1, 1.0, 1.0.0.


url - stáhnout adresu URL
string. Požadováno při command = install && isCustomVersion = true.

Adresa URL vlastní verze notace, která se má použít, například: https://github.com/notaryproject/notation/releases/download/v1.0.0/notation_1.0.0_linux_amd64.tar.gz.


kontrolního součtu
string. Požadováno při command = install && isCustomVersion = true.

Kontrolní součet SHA-256 staženého souboru.


artifactRefs - odkazy na artefakty
string. Volitelný. Používá se při command = verify || command = sign.

Odkazy na artefakty kontejneru pro podepisování Pokud není zadaný, úloha použije odkaz na artefakt z předchozí úlohy docker push. Příklad: <registry name>/<repository name>@<digest>. Více odkazů na artefakty musí být oddělené čárkami.


formátu podpisu
string. Volitelný. Používá se při command = sign && command = sign || command = verify. Povolené hodnoty: cose, jws. Výchozí hodnota: cose.

Formát obálky podpisu


allowReferrersAPI - [Experimentální] Povolit rozhraní API refererů
boolean. Volitelný. Používá se při command = sign || command = verify. Výchozí hodnota: false.

K podepisování podpisů použijte rozhraní API referrers (pokud není podporováno (vrátí hodnotu 404), vraťte se do schématu značek Referrers.


modulu plug-in
string. Požadováno při command = sign. Povolené hodnoty: azureKeyVault (modul plug-in služby Azure Key Vault). Výchozí hodnota: azureKeyVault.


verze modulu plug-in
string. Požadováno při plugin = azureKeyVault && command = sign. Výchozí hodnota: 1.2.0.

Verze modulu plug-in Azure Key Vault, který se má nainstalovat. Informace o dostupných verzích najdete na stránce notation-azure-kv release.


azurekvServiceConection - připojení ke službě Azure Key Vault
string. Volitelný. Používá se při plugin = azureKeyVault && command = sign.

Pokud chcete pro ověřování použít připojení služby, vyberte předplatné Azure pro trezor klíčů.


ID klíče keyid -
string. Požadováno při plugin = azureKeyVault && command = sign.

ID klíče je identifikátor klíče nebo certifikátu pro Azure Key Vault.


cesta k souboru sady certifikátů caCertBundle -
string. Volitelný. Používá se při plugin = azureKeyVault && command = sign.

Soubor sady certifikátů s kořenovým a všemi zprostředkujícími certifikáty počínaje kořenovým certifikátem podle pořadí v řetězu certifikátů.


selfSigned - certifikátu podepsaného svým držitelem
boolean. Volitelný. Používá se při plugin = azureKeyVault && command = sign. Výchozí hodnota: false.

Určuje, jestli se jedná o certifikát podepsaný svým držitelem.


adresy URL časového razítka
string. Volitelný. Používá se při command = sign.

Adresa URL serveru RFC 3161 Timestamping Authority (TSA). (Vyžadovat zápis verze 1.2.0 nebo novější).


timestampRootCert - kořenový certifikát časového razítka
string. Volitelný. Používá se při command = sign.

cesta k souboru kořenového certifikátu autority časového razítka (Vyžadovat zápis verze 1.2.0 nebo novější).


cesta k souboru zásad důvěryhodnosti trustPolicy -
string. Požadováno při command = verify.

Cesta k zásady důvěryhodnosti souboru vzhledem k úložišti. Příklad: ./path/to/trust-policy.json.


trustStore - cesta ke složce úložiště důvěryhodnosti
string. Požadováno při command = verify.

Cesta k adresáři obsahujícímu úložiště důvěryhodnosti vzhledem k úložišti. Příklad: ./path/to/truststore/.


Možnosti řízení úkolů

Všechny úkoly mají kromě vstupů úkolů také možnosti řízení. Další informace naleznete v tématu Možnosti ovládacího prvku a běžné vlastnosti úloh.

Výstupní proměnné

Žádný.

Poznámky

Úloha notace volá rozhraní příkazového řádku notace k provádění operací podepisování a ověřování. Rozhraní příkazového řádku notace je nástroj sloužící k podepisování a ověřování artefaktů nebo imagí kontejneru Dockeru. Při podepisování artefaktu podepíše notace jedinečný popisovač manifestu artefaktu a připojí podpis ke stejnému úložišti. Při ověřování artefaktu načte notace podpis z úložiště a ověří ho proti certifikátu v úložišti důvěryhodnosti.

Požadavky

  • Tato úloha vyžaduje přístup k veřejné síti pro stahování modulu plug-in Notation CLI a Notation Azure Key Vault z verzí GitHubu.
  • Podporovaný operační systém agenta: Linux x64/ARM64, Windows x64, macOS x64/ARM64

Notation install command

Příkaz install zjistí aktuální operační systém a architekturu pro stažení odpovídajícího rozhraní příkazového řádku notace z verzí GitHubu. Ověřuje také kontrolní součet staženého souboru se zlatým souborem ve složce ./data a přidá zápis do cesty.

Příkaz znaménka notace

Příkaz sign stáhne vybraný modul plug-in Notation, ověří jeho kontrolní součet a potom zavolá rozhraní příkazového řádku notace, které se má podepsat.

Příkaz Ověření zápisu

Příkaz verify přenese úložiště důvěryhodnosti a zásady důvěryhodnosti z úložiště kódu uživatele do konfigurační složky Notation, jak to vyžaduje rozhraní příkazového řádku notace. Potom vyvolá rozhraní příkazového řádku notace k provedení ověření.

Požadavky

Požadavek Popis
Typy kanálů YAML, klasické sestavení, klasická verze
Běží na Agent, DeploymentGroup
požadavky Žádný
možnosti Tento úkol nesplňuje žádné požadavky na následné úkoly v úloze.
omezení příkazů Jakýkoliv
nastavitelné proměnné Jakýkoliv
Verze agenta 2.144.0 nebo vyšší
Kategorie úkolu Užitek