Notation@0 - Notation v0 görevi

Notasyon CLI'sını ayarlamak için Azure Pipepine Görevi, Gösterimi ile imzalayın ve doğrulayı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.

Girişler

command - Çalıştırılacak komut
string. Gereklidir. İzin verilen değerler: install, sign, verify. Varsayılan değer: install.

Görevin komut modunu belirtir.

  • install - Komut, install GitHub sürümlerinden ilgili Notation CLI'sini indirmek için geçerli işletim sistemini ve mimariyi algılar. Ayrıca indirilen dosyanın sağlama toplamını klasördeki altın dosyayla ./data doğrular ve Path'e Notation ekler.
  • sign - Komut sign seçili Notation eklentisini indirir, sağlama toplamını doğrular ve ardından imzalamak için Notation CLI'sini çağırır.
  • verify - Komut, verify notasyon CLI'sinin gerektirdiği şekilde güven deposu ve güven ilkesini kullanıcının kod deposundan Notation yapılandırma klasörüne aktarır. Ardından doğrulama gerçekleştirmek için Notation CLI'sini çağırır.

isCustomVersion - Özel Sürüm
boolean. İsteğe bağlı. olduğunda command = installkullanın. Varsayılan değer: false.

özelliğindeki özel sürümün indirme URL'sini belirterek görev için özel bir Notation sürümü url sağlamak üzere belirtintrue.


version - Sürüm
string. olduğunda command = install && isCustomVersion = falsegereklidir. Varsayılan değer: 1.1.0.

Yüklenecek Notation sürümü. Örnek: 1.0.0, 1, 1.0, 1.0.0.


url - URL'yi indirme
string. olduğunda command = install && isCustomVersion = truegereklidir.

Kullanılacak özel bir Notation sürümünün URL'si, örneğin: https://github.com/notaryproject/notation/releases/download/v1.0.0/notation_1.0.0_linux_amd64.tar.gz.


checksum - Sağlama toplamı
string. olduğunda command = install && isCustomVersion = truegereklidir.

İndirilen dosyanın SHA-256 sağlama toplamı.


artifactRefs - Yapıt başvuruları
string. İsteğe bağlı. olduğunda command = verify || command = signkullanın.

İmzalama için kapsayıcı yapıt başvuruları. Belirtilmezse, görev önceki Docker gönderme görevinden yapıt başvuruyu kullanır. Örnek: <registry name>/<repository name>@<digest>. Birden çok yapıt başvurusu virgülle ayrılmış olmalıdır.


signatureFormat - İmza Biçimi
string. İsteğe bağlı. olduğunda command = sign && command = sign || command = verifykullanın. İzin verilen değerler: cose, jws. Varsayılan değer: cose.

İmza zarf biçimi.


allowReferrersAPI - [Deneysel] Başvuranlar API'sine İzin Ver
boolean. İsteğe bağlı. olduğunda command = sign || command = verifykullanın. Varsayılan değer: false.

Desteklenmediği takdirde (404 döndürür) imzaları imzalamak için Başvuranlar API'sini kullanarak Başvuranlar etiket şemasına geri dön.


plugin - Eklenti
string. olduğunda command = signgereklidir. İzin verilen değerler: azureKeyVault (Azure Key Vault Eklentisi). Varsayılan değer: azureKeyVault.


akvPluginVersion - Eklenti Sürümü
string. olduğunda plugin = azureKeyVault && command = signgereklidir. Varsayılan değer: 1.1.0.

Yüklenecek Azure Key Vault eklentisinin sürümü. Kullanılabilir sürümler için notation-azure-kv sürümleri sayfasına bakın.


azurekvServiceConection - Azure Key Vault hizmeti bağlantısı
string. İsteğe bağlı. olduğunda plugin = azureKeyVault && command = signkullanın.

Kimlik doğrulaması için hizmet bağlantısını kullanmayı tercih ediyorsanız anahtar kasası için Azure aboneliğini seçin.


keyid - Anahtar Kimliği
string. olduğunda plugin = azureKeyVault && command = signgereklidir.

Anahtar Kimliği, Azure Key Vault için anahtar veya sertifika tanımlayıcısıdır.


caCertBundle - Sertifika Paketi Dosya Yolu
string. İsteğe bağlı. olduğunda plugin = azureKeyVault && command = signkullanın.

Kök sertifikadan başlayarak, sertifika zincirindeki sırayla kök ve tüm ara sertifikaları içeren sertifika paket dosyası.


selfSigned - Otomatik olarak imzalanan Sertifika
boolean. İsteğe bağlı. olduğunda plugin = azureKeyVault && command = signkullanın. Varsayılan değer: false.

Sertifikanın otomatik olarak imzalanan bir sertifika olup olmadığı.


trustPolicy - Güven İlkesi Dosya Yolu
string. olduğunda command = verifygereklidir.

Depoya göre güven ilkesi dosyasının yolu. Örnek: ./path/to/trust-policy.json.


trustStore - Güven Deposu Klasör Yolu
string. olduğunda command = verifygereklidir.

Depoya göre güven deposunu içeren dizinin yolu. Örnek: ./path/to/truststore/.


Görev denetim seçenekleri

Tüm görevlerde görev girişlerine ek olarak denetim seçenekleri vardır. Daha fazla bilgi için bkz . Denetim seçenekleri ve ortak görev özellikleri.

Çıkış değişkenleri

Yok.

Açıklamalar

Notation görevi, imzalama ve doğrulama işlemlerini yürütmek için Notation CLI'yi çağırır. Notation CLI, Docker kapsayıcı yapıtlarını veya görüntülerini imzalamak ve doğrulamak için kullanılan bir araçtır. Bir yapıtı imzalarken, Notation yapıtın benzersiz bildirim tanımlayıcısını imzalar ve imzayı aynı depoya ekler. Bir yapıtı doğrularken, Notation imzayı depodan alır ve güven deposundaki sertifikaya karşı doğrular.

Önkoşullar

  • Bu görev, Github sürümlerinden Notation CLI ve Notation Azure Key Vault eklentisini indirmek için genel ağ erişimi gerektirir.
  • Desteklenen Aracı İşletim Sistemi: Linux x64/ARM64, Windows x64, macOS x64/ARM64

Notasyon yükleme komutu

Komutu, install GitHub sürümlerinden ilgili Notation CLI'sini indirmek için geçerli işletim sistemini ve mimariyi algılar. Ayrıca indirilen dosyanın sağlama toplamını klasördeki altın dosyayla ./data doğrular ve Path'e Notation ekler.

Notasyon işareti komutu

Komut sign seçili Notation eklentisini indirir, sağlama toplamını doğrular ve ardından imzalamak için Notation CLI'sini çağırır.

Gösterimi doğrulama komutu

Komut, verify notasyon CLI'sinin gerektirdiği şekilde güven deposu ve güven ilkesini kullanıcının kod deposundan Notation yapılandırma klasörüne aktarır. Ardından doğrulama gerçekleştirmek için Notation CLI'sini çağırır.

Gereksinimler

Gereksinim Açıklama
İşlem hattı türleri YAML, Klasik derleme, Klasik sürüm
Üzerinde çalıştırılır Agent, DeploymentGroup
Talep Hiçbiri
Özellikler Bu görev, işteki sonraki görevler için herhangi bir talebi karşılamaz.
Komut kısıtlamaları Herhangi biri
Ayarlanabilir değişkenler Herhangi biri
Aracı sürümü 2.144.0 veya üzeri
Görev kategorisi Yardımcı Program