Aracılığıyla paylaş


AzureKeyVault@2 - Azure Key Vault v2 görevi

Kimlik doğrulama anahtarları, depolama hesabı anahtarları, veri şifreleme anahtarları gibi gizli dizileri indirmek için bu görevi kullanın. Bir Azure Key Vault örneğinden PFX dosyaları ve parolaları. Görev, kasadan gizli dizilerin tümünün veya bir alt kümesinin en son değerlerini getirmek ve bunları bir işlem hattının sonraki görevlerinde kullanılabilecek değişkenler olarak ayarlamak için kullanılabilir. Görev Düğüm tabanlıdır ve Linux, macOS ve Windows'da aracılarla çalışır.

Syntax

# Azure Key Vault v2
# Download Azure Key Vault secrets.
- task: AzureKeyVault@2
  inputs:
    azureSubscription: # string. Alias: ConnectedServiceName. Required. Azure subscription. 
    KeyVaultName: # string. Required. Key vault. 
    SecretsFilter: '*' # string. Required. Secrets filter. Default: *.
    #RunAsPreJob: false # boolean. Make secrets available to whole job. Default: false.

Girişler

azureSubscription - Azure aboneliği
Giriş diğer adı: ConnectedServiceName. string. Gereklidir.

Azure Key Vault örneğini içeren Azure aboneliği için hizmet bağlantısını seçin veya yeni bir bağlantı oluşturun. Daha fazla bilgi edinin.


KeyVaultName - Anahtar kasası
string. Gereklidir.

İndirilmesi gereken gizli dizileri içeren Azure Key Vault adı.


SecretsFilter - Gizli diziler filtresi
string. Gereklidir. Varsayılan değer: *.

Girilen değere göre gizli dizi adlarını indirir. Değer, seçilen anahtar kasasından tüm gizli dizileri indirmek için varsayılan değer veya virgülle ayrılmış gizli dizi adları listesi olabilir.


RunAsPreJob - Gizli dizileri tüm işin kullanımına sun
boolean. Varsayılan değer: false.

İşi yürütme başlamadan önce görevi çalıştırır. Gizli dizileri yalnızca bunu izleyen görevleri değil, işteki tüm görevlerin kullanıma sunar.


Görev denetimi seçenekleri

Tüm görevlerin, 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

Sürüm 2.0'daki yenilikler: Gizli dizilerde %3B, %5B desteği eklendi.

Kimlik doğrulama anahtarları, depolama hesabı anahtarları, veri şifreleme anahtarları gibi gizli dizileri indirmek için bu görevi kullanın. Bir Azure Key Vault örneğinden PFX dosyaları ve parolaları. Görev, kasadan gizli dizilerin tümünün veya bir alt kümesinin en son değerlerini getirmek ve bunları bir işlem hattının sonraki görevlerinde kullanılabilecek değişkenler olarak ayarlamak için kullanılabilir. Görev Düğüm tabanlıdır ve Linux, macOS ve Windows'da aracılarla çalışır.

Azure Key Vault kimlik bilgilerini alma noktasında işlem hatlarında hata forbidden alıyorum

Azure anahtar kasasında gerekli izinler eksikse bu durum oluşur. Sorunu çözmek için doğru izinlere sahip bir erişim ilkesi ekleyin.

Ön koşullar

Görev aşağıdaki Önkoşullara sahiptir:

Bir anahtar kasası oluşturabilirsiniz:

Anahtar kasasına gizli diziler ekleme:

  • Set-AzureKeyVaultSecret PowerShell cmdlet'ini kullanarak. Gizli dizi yoksa, bu cmdlet onu oluşturur. Gizli dizi zaten varsa, bu cmdlet bu gizli dizinin yeni bir sürümünü oluşturur.

  • Azure CLI kullanarak. Anahtar kasasına gizli dizi eklemek için, örneğin PlaceholderPassword değerine sahip SQLPassword adlı gizli diziyi yazın:

    az keyvault secret set --vault-name 'ContosoKeyVault' --name 'SQLPassword' --value 'PlaceholderPassword'
    

Gizli dizilere erişmek istediğinizde:

  • Azure hizmet bağlantısının kasada en az Alma ve Listeleme izinlerine sahip olduğundan emin olun. Bu izinleri Azure portal ayarlayabilirsiniz:

    • Kasanın Ayarlar dikey penceresini açın, Erişim ilkeleri'ni ve ardından Yeni ekle'yi seçin.
    • Erişim ilkesi ekle dikey penceresinde Sorumlu seç'i seçin ve istemci hesabınız için hizmet sorumlusunu seçin.
    • Erişim ilkesi ekle dikey penceresinde Gizli dizi izinleri'ni seçin ve Al ve Liste seçeneğinin işaretlendiğinden (işaretlendiğinden) emin olun.
    • Değişiklikleri kaydetmek için Tamam'ı seçin.

Not

Microsoft tarafından barındırılan bir aracı kullanıyorsanız, Güvenlik duvarınıza Microsoft tarafından barındırılan aracının IP aralığını eklemeniz gerekir. Her Çarşamba yayımlanan haftalık JSON dosyasından haftalık IP aralıkları listesini alın. Yeni IP aralıkları bir sonraki Pazartesi günü geçerli olur. Daha fazla bilgi için bkz. Microsoft tarafından barındırılan aracılar. Azure DevOps kuruluşunuz için gereken IP aralıklarını bulmak için Microsoft tarafından barındırılan aracılar için olası IP aralıklarını tanımlamayı öğrenin.

Not

Değerler dize olarak alınır. Örneğin connectionString adlı bir gizli dizi varsa, Azure anahtar kasasından getirilen ilgili gizli dizinin en son değeriyle bir görev değişkeni connectionString oluşturulur. Bu değişken daha sonra sonraki görevlerde kullanılabilir.

Kasadan getirilen değer bir sertifikaysa (örneğin, pfx dosyası), görev değişkeni PFX'in içeriğini dize biçiminde içerir. PfX dosyasını görev değişkeninden almak için aşağıdaki PowerShell kodunu kullanabilirsiniz:

$kvSecretBytes = [System.Convert]::FromBase64String("$(PfxSecret)")
$certCollection = New-Object System.Security.Cryptography.X509Certificates.X509Certificate2Collection
$certCollection.Import($kvSecretBytes,$null,[System.Security.Cryptography.X509Certificates.X509KeyStorageFlags]::Exportable)

Sertifika dosyası makinede yerel olarak depolanacaksa, parolayla şifrelemek iyi bir uygulamadır:

 #Get the file created
$password = 'your password'
$protectedCertificateBytes = $certCollection.Export([System.Security.Cryptography.X509Certificates.X509ContentType]::Pkcs12, $password)
$pfxPath = [Environment]::GetFolderPath("Desktop") + "\MyCert.pfx"
[System.IO.File]::WriteAllBytes($pfxPath, $protectedCertificateBytes)

Daha fazla bilgi için bkz. Azure Key Vault sertifikalarını kullanmaya başlama.

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.182.1 veya üzeri
Görev kategorisi Dağıtma