Add-AzKeyVaultKey cmdlet'i, Azure Key Vault'taki bir anahtar kasasında bir anahtar oluşturur veya bir anahtarı anahtar kasasına aktarır.
Aşağıdaki yöntemlerden herhangi birini kullanarak anahtar eklemek için bu cmdlet'i kullanın:
Key Vault hizmetinde bir donanım güvenlik modülünde (HSM) anahtar oluşturun.
Key Vault hizmetinde yazılımda bir anahtar oluşturun.
Anahtarı kendi donanım güvenlik modülünüzden (HSM) Key Vault hizmetindeki HSM'lere aktarın.
Bilgisayarınızdaki bir .pfx dosyasından anahtarı içeri aktar.
Anahtarı bilgisayarınızdaki bir .pfx dosyasından Key Vault hizmetindeki donanım güvenlik modüllerine (HSM) aktarın.
Bu işlemlerden herhangi biri için anahtar öznitelikleri sağlayabilir veya varsayılan ayarları kabul edebilirsiniz.
Anahtar kasanızda mevcut bir anahtarla aynı ada sahip bir anahtar oluşturur veya içeri aktarırsanız, özgün anahtar yeni anahtar için belirttiğiniz değerlerle güncelleştirilir. Anahtarın bu sürümü için sürüme özgü URI'yi kullanarak önceki değerlere erişebilirsiniz. Anahtar sürümleri ve URI yapısı hakkında bilgi edinmek için Key Vault REST API belgelerindeki Anahtarlar ve Gizli Diziler Hakkında bölümüne bakın.
Not: Kendi donanım güvenlik modülünüzden bir anahtarı içeri aktarmak için önce Azure Key Vault BYOK araç takımını kullanarak bir BYOK paketi (.byok dosya adı uzantısına sahip bir dosya) oluşturmanız gerekir. Daha fazla bilgi için bkz. Azure Key Vault için HSM-Protected Anahtarları Oluşturma ve Aktarma.
En iyi yöntem olarak, Backup-AzKeyVaultKey cmdlet'ini kullanarak anahtarınızı oluşturulduktan veya güncelleştirildikten sonra yedekleyin. Geri döndürülmeyen bir işlev olmadığından, anahtarınızı yanlışlıkla silerseniz veya silerseniz ve sonra fikrinizi değiştirirseniz, geri yükleyebileceğiniz bir yedeğiniz olmadığı sürece anahtar kurtarılamaz.
Vault/HSM Name : test-kv
Name : test-key
Key Type : EC
Key Size :
Curve Name : P-256
Version : 4da74af2b4fd47d6b1aa0b05c9a2ed13
Id : https://test-kv.vault.azure.net:443/keys/test-key/4da74af2b4fd47d6b1aa0b05c9a2ed13
Enabled : True
Expires :
Not Before :
Created : 8/24/2021 6:38:34 AM
Updated : 8/24/2021 6:38:34 AM
Recovery Level : Recoverable+Purgeable
Tags :
Bu komut, test-kv adlı anahtar kasasında test-key adlı yazılım korumalı bir EC anahtarı oluşturur. Eğri adı varsayılan olarak P-256'dır.
Vault/HSM Name : contoso
Name : ITHsmNonDefault
Key Type : RSA
Key Size : 2048
Version : 929bfc14db84439b823ffd1bedadaf5f
Id : https://contoso.vault.azure.net:443/keys/ITHsmNonDefault/929bfc14db84439b823ffd1bedadaf5f
Enabled : False
Expires : 5/21/2020 11:12:43 PM
Not Before : 5/21/2018 11:12:50 PM
Created : 5/21/2018 11:13:17 PM
Updated : 5/21/2018 11:13:17 PM
Purge Disabled : False
Tags : Name Value
Severity high
Accounting true
İlk komut, değerlerin şifresini çözer ve $KeyOperations değişkeninde doğrular.
İkinci komut Get-Date cmdlet'ini kullanarak UTC ile tanımlanan bir DateTime nesnesi oluşturur.
Bu nesne, gelecekte iki yıl süre belirtir. Komut bu tarihi $Expires değişkeninde depolar. Daha fazla bilgi için yazın Get-Help Get-Date.
Üçüncü komut Get-Date cmdlet'ini kullanarak bir DateTime nesnesi oluşturur. Bu nesne geçerli UTC saatini belirtir. Komut bu tarihi $NotBefore değişkeninde depolar.
Son komut, HSM korumalı bir anahtar olan ITHsmNonDefault adlı bir anahtar oluşturur. komutu, $KeyOperations depolanan izin verilen anahtar işlemleri için değerleri belirtir. komutu, önceki komutlarda oluşturulan Expires ve NotBefore parametrelerinin zamanlarını, yüksek önem derecesi ve BT için etiketleri belirtir. Yeni anahtar devre dışı bırakıldı.
Set-AzKeyVaultKey cmdlet'ini kullanarak etkinleştirebilirsiniz.
Vault Name : contoso
Name : ITByok
Version : 67da57e9cadf48a2ad8d366b115843ab
Id : https://contoso.vault.azure.net:443/keys/ITByok/67da57e9cadf48a2ad8d366b115843ab
Enabled : True
Expires :
Not Before :
Created : 5/21/2018 11:10:58 PM
Updated : 5/21/2018 11:10:58 PM
Purge Disabled : False
Tags :
Bu komut, KeyFilePath parametresinin belirttiği konumdan ITByok adlı anahtarı içeri aktarır. İçeri aktarılan anahtar, HSM korumalı bir anahtardır.
Kendi donanım güvenlik modülünüzden bir anahtarı içeri aktarmak için önce Azure Key Vault BYOK araç takımını kullanarak bir BYOK paketi (.byok dosya adı uzantısına sahip bir dosya) oluşturmanız gerekir.
Daha fazla bilgi için bkz. Azure Key Vault için HSM-Protected Anahtarları Oluşturma ve Aktarma.
Vault Name : contoso
Name : ITPfx
Version : 67da57e9cadf48a2ad8d366b115843ab
Id : https://contoso.vault.azure.net:443/keys/ITPfx/67da57e9cadf48a2ad8d366b115843ab
Enabled : True
Expires :
Not Before :
Created : 5/21/2018 11:10:58 PM
Updated : 5/21/2018 11:10:58 PM
Purge Disabled : False
Tags :
İlk komut ConvertTo-SecureString cmdlet'ini kullanarak bir dizeyi güvenli bir dizeye dönüştürür ve ardından bu dizeyi $Password değişkeninde depolar. Daha fazla bilgi için yazın Get-Help ConvertTo-SecureString.
İkinci komut Contoso anahtar kasasında bir yazılım parolası oluşturur. komutu, anahtarın konumunu ve $Password depolanan parolayı belirtir.
Örnek 7: Anahtarı içeri aktarma ve öznitelik atama
Vault Name : contoso
Name : ITPfxToHSM
Version : 929bfc14db84439b823ffd1bedadaf5f
Id : https://contoso.vault.azure.net:443/keys/ITPfxToHSM/929bfc14db84439b823ffd1bedadaf5f
Enabled : True
Expires : 5/21/2020 11:12:43 PM
Not Before :
Created : 5/21/2018 11:13:17 PM
Updated : 5/21/2018 11:13:17 PM
Purge Disabled : False
Tags : Name Value
Severity high
Accounting true
İlk komut ConvertTo-SecureString cmdlet'ini kullanarak bir dizeyi güvenli bir dizeye dönüştürür ve ardından bu dizeyi $Password değişkeninde depolar.
İkinci komut Get-Date cmdlet'ini kullanarak bir DateTime nesnesi oluşturur ve bu nesneyi $Expires değişkeninde depolar.
Üçüncü komut, yüksek önem derecesine ve BT'ye yönelik etiketleri ayarlamak için $tags değişkenini oluşturur.
Son komut, belirtilen konumdan bir anahtarı HSM anahtarı olarak içeri aktarır. komutu, $Expires depolanan süre sonunu ve $Password depolanan parolayı belirtir ve $tags depolanan etiketleri uygular.
Örnek 8: "Kendi anahtarını getir" (BYOK) özelliği için Anahtar Değişim Anahtarı (KEK) oluşturma
Anahtar oluşturur (Anahtar Değişim Anahtarı (KEK) olarak adlandırılır). KEK, yalnızca içeri aktarma anahtarı işlemine sahip bir RSA-HSM anahtarı olmalıdır. Yalnızca Key Vault Premium SKU'su RSA-HSM anahtarlarını destekler.
Daha fazla ayrıntı için bkz. https://learn.microsoft.com/azure/key-vault/keys/hsm-protected-keys
Örnek 9: Yönetilen hsm'de güvenli anahtar oluşturma
Anahtarın yazılım korumalı anahtar olarak mı yoksa Key Vault hizmetinde HSM korumalı anahtar olarak mı ekleneceğini belirtir.
Geçerli değerler şunlardır: HSM ve Yazılım.
Not: HSM'yi hedefiniz olarak kullanmak için HSM'leri destekleyen bir anahtar kasanız olmalıdır. Azure Key Vault hizmet katmanları ve özellikleri hakkında daha fazla bilgi için bkz. Azure Key Vault Fiyatlandırma web sitesi.
Yeni bir anahtar oluşturduğunuzda bu parametre gereklidir.
KeyFilePath parametresini kullanarak bir anahtarı içeri aktarırsanız, bu parametre isteğe bağlıdır:
Bu parametreyi belirtmezseniz ve bu cmdlet .byok dosya adı uzantısına sahip bir anahtarı içeri aktarırsa, bu anahtarı HSM korumalı anahtar olarak içeri aktarır. Cmdlet, bu anahtarı yazılım korumalı anahtar olarak içeri aktaramaz.
Bu parametreyi belirtmezseniz ve bu cmdlet .pfx dosya adı uzantısına sahip bir anahtarı içeri aktarırsa, anahtarı yazılım korumalı anahtar olarak içeri aktarır.
Eklediğiniz anahtarın ilk devre dışı durumuna ayarlandığını gösterir. Anahtarı kullanma girişimi başarısız olur. Daha sonra etkinleştirmeyi planladığınız anahtarları önceden yüklüyorsanız bu parametreyi kullanın.
Bu cmdlet'in eklediği anahtar için anahtarın utc olarak sona erme zamanını DateTime nesnesi olarak belirtir. Belirtilmezse anahtarın süresi dolmaz.
DateTime nesnesi almak için Get-Date cmdlet'ini kullanın. Daha fazla bilgi için yazın Get-Help Get-Date. BYOK işleminde kullanılan Anahtar Değişimi Anahtarı için süre sonu değerlerinin yoksayıldığını lütfen unutmayın.
İçeri aktarılan dosyanın parolasını SecureString nesnesi olarak belirtir.
SecureString nesnesi almak için ConvertTo-SecureString cmdlet'ini kullanın. Daha fazla bilgi için yazın Get-Help ConvertTo-SecureString. .pfx dosya adı uzantısına sahip bir dosyayı içeri aktarmak için bu parolayı belirtmeniz gerekir.
Bu cmdlet'in içeri aktarıldığı anahtar malzemeyi içeren yerel dosyanın yolunu belirtir.
Geçerli dosya adı uzantıları .byok ve .pfx'tir.
Dosya bir .byok dosyasıysa, içeri aktarma işleminden sonra anahtar HSM'ler tarafından otomatik olarak korunur ve bu varsayılanı geçersiz kılamazsınız.
Dosya bir .pfx dosyasıysa, içeri aktarma işleminden sonra anahtar yazılım tarafından otomatik olarak korunur. Bu varsayılanı geçersiz kılmak için , Anahtar HSM korumalı olacak şekilde Hedef parametresini HSM olarak ayarlayın.
Bu parametreyi belirttiğinizde Hedef parametresi isteğe bağlıdır.
Bu cmdlet'in eklediği anahtar kullanılarak gerçekleştirilebilecek bir işlem dizisi belirtir.
Bu parametreyi belirtmezseniz, tüm işlemler gerçekleştirilebilir.
Bu parametre için kabul edilebilir değerler , JSON Web Anahtarı (JWK) belirtimi tarafından tanımlanan anahtar işlemlerinin virgülle ayrılmış bir listesidir:
Anahtar kasasına eklenecek anahtarın adını belirtir. Bu cmdlet, bu parametrenin belirttiği ada, anahtar kasasının adına ve geçerli ortamınıza göre bir anahtarın tam etki alanı adını (FQDN) oluşturur. Ad yalnızca 0-9, a-z, A-Z ve - (tire simgesi) içeren 1 ile 63 karakter uzunluğunda bir dize olmalıdır.
DateTime nesnesi olarak, anahtarın kullanılamayacağı saati belirtir. Bu parametre UTC kullanır.
DateTime nesnesi almak için Get-Date cmdlet'ini kullanın. Bu parametreyi belirtmezseniz anahtar hemen kullanılabilir.
Bu cmdlet'in anahtarı eklediği anahtar kasasının adını belirtir. Bu cmdlet, bu parametrenin belirttiği ada ve geçerli ortamınıza göre bir anahtar kasasının FQDN'sini oluşturur.
Bu cmdlet yaygın parametreleri destekler: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction ve -WarningVariable. Daha fazla bilgi için bkz. about_CommonParameters.
Bu içeriğin kaynağı GitHub'da bulunabilir; burada ayrıca sorunları ve çekme isteklerini oluşturup gözden geçirebilirsiniz. Daha fazla bilgi için katkıda bulunan kılavuzumuzu inceleyin.