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 = install
kullanı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 = false
gereklidir. 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 = true
gereklidir.
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 = true
gereklidir.
İndirilen dosyanın SHA-256 sağlama toplamı.
artifactRefs
- Yapıt başvuruları
string
. İsteğe bağlı. olduğunda command = verify || command = sign
kullanı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 = verify
kullanı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 = verify
kullanı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 = sign
gereklidir. İ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 = sign
gereklidir. 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 = sign
kullanı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 = sign
gereklidir.
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 = sign
kullanı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 = sign
kullanı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 = verify
gereklidir.
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 = verify
gereklidir.
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 |