Menyimpan rahasia multibaris di Azure Key Vault

Mulai cepat Azure CLI atau mulai cepat Azure PowerShell menunjukkan cara menyimpan rahasia satu baris. Anda juga dapat menggunakan Key Vault untuk menyimpan rahasia multi baris, seperti file JSON atau kunci pribadi RSA.

Rahasia multi-baris tidak dapat diteruskan ke perintah set rahasia keyvault az Azure CLI atau cmdlet Azure PowerShell Set-AzKeyVaultSecret melalui baris perintah. Sebagai gantinya, Anda harus terlebih dahulu menyimpan rahasia multi-baris sebagai file teks.

Misalnya, Anda dapat membuat file teks yang diberi nama "secretfile.txt" yang berisi baris berikut:

This is my
multi-line
secret

Mengatur rahasia menggunakan Azure CLI

Anda kemudian dapat meneruskan file ini ke perintah set rahasia Azure CLI az keyvault menggunakan --file parameter.

az keyvault secret set --vault-name "<your-unique-keyvault-name>" --name "MultilineSecret" --file "secretfile.txt"

Anda kemudian dapat melihat rahasia yang disimpan menggunakan perintah Azure CLI az keyvault secret show .

az keyvault secret show --name "MultilineSecret" --vault-name "<your-unique-keyvault-name>" --query "value"

Rahasia akan dikembalikan dengan \n menggantikan baris baru:

"This is\nmy multi-line\nsecret"

Di \n atas adalah \ karakter dan n , bukan karakter baris baru. Tanda kutip " disertakan dalam string.

Mengatur rahasia menggunakan Azure Powershell

Dengan Azure PowerShell, Anda harus membaca file terlebih dahulu menggunakan cmdlet Get-Content, lalu mengonversinya menjadi untai aman menggunakan ConvertTo-SecureString.

$RawSecret =  Get-Content "secretfile.txt" -Raw
$SecureSecret = ConvertTo-SecureString -String $RawSecret -AsPlainText -Force

Terakhir, Anda menyimpan rahasia menggunakan cmdlet Set-AzKeyVaultSecret .

$secret = Set-AzKeyVaultSecret -VaultName "<your-unique-keyvault-name>" -Name "MultilineSecret" -SecretValue $SecureSecret

Anda kemudian dapat melihat rahasia yang disimpan menggunakan perintah az keyvault secret show Azure CLI atau cmdlet Get-AzKeyVaultSecret Azure PowerShell.

az keyvault secret show --name "MultilineSecret" --vault-name "<your-unique-keyvault-name>" --query "value"

Rahasia akan dikembalikan dengan \n menggantikan baris baru:

"This is\nmy multi-line\nsecret"

Di \n atas adalah \ karakter dan n , bukan karakter baris baru. Tanda kutip " disertakan dalam string.

Langkah berikutnya