Udostępnij za pośrednictwem


Przechowywanie wpisu tajnego wielowierszowego w usłudze Azure Key Vault

Przewodnik Szybki start interfejsu wiersza polecenia platformy Azure lub przewodnik Szybki start dla programu Azure PowerShell przedstawia sposób przechowywania wpisu tajnego z jednym wierszem. Możesz również użyć usługi Key Vault do przechowywania wpisu tajnego wielowierszowego, takiego jak plik JSON lub klucz prywatny RSA.

Nie można przekazać wpisów tajnych wielowierszowych do polecenia az keyvault secret set interfejsu wiersza polecenia platformy Azure lub polecenia cmdlet Set-AzKeyVaultSecret programu Azure PowerShell za pośrednictwem wiersza polecenia. Zamiast tego należy najpierw zapisać wpis tajny wielowierszowy jako plik tekstowy.

Można na przykład utworzyć plik tekstowy o nazwie "secretfile.txt" zawierający następujące wiersze:

This is my
multi-line
secret

Ustawianie wpisu tajnego przy użyciu interfejsu wiersza polecenia platformy Azure

Następnie możesz przekazać ten plik do polecenia az keyvault secret set interfejsu wiersza polecenia platformy Azure przy użyciu parametru --file .

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

Następnie możesz wyświetlić przechowywany wpis tajny przy użyciu polecenia az keyvault secret show interfejsu wiersza polecenia platformy Azure.

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

Wpis tajny zostanie zwrócony \n zamiast nowego wiersza:

"This is\nmy multi-line\nsecret"

Powyższe \n jest znakiem in, a nie znakiem \ nowego wiersza. Cudzysłowy " są uwzględniane w ciągu.

Ustawianie wpisu tajnego przy użyciu programu Azure PowerShell

Za pomocą programu Azure PowerShell należy najpierw odczytać plik przy użyciu polecenia cmdlet Get-Content, a następnie przekonwertować go na bezpieczny ciąg przy użyciu funkcji ConvertTo-SecureString.

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

Na koniec należy zapisać wpis tajny przy użyciu polecenia cmdlet Set-AzKeyVaultSecret .

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

Następnie możesz wyświetlić przechowywany wpis tajny przy użyciu polecenia az keyvault secret show interfejsu wiersza polecenia platformy Azure lub polecenia cmdlet Get-AzKeyVaultSecret programu Azure PowerShell.

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

Wpis tajny zostanie zwrócony \n zamiast nowego wiersza:

"This is\nmy multi-line\nsecret"

Powyższe \n jest znakiem in, a nie znakiem \ nowego wiersza. Cudzysłowy " są uwzględniane w ciągu.

Następne kroki