Invoke-AzKeyVaultKeyOperation
Melakukan operasi seperti "Encrypt", "Decrypt", "Wrap" atau "Unwrap" menggunakan kunci tertentu yang disimpan dalam brankas kunci atau hsm terkelola.
Sintaks
Invoke-AzKeyVaultKeyOperation
[-Version <String>]
-Operation <String>
-Algorithm <String>
[-Value <SecureString>]
[-ByteArrayValue <Byte[]>]
[-Name] <String>
[-VaultName] <String>
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Invoke-AzKeyVaultKeyOperation
[-Version <String>]
-Operation <String>
-Algorithm <String>
[-Value <SecureString>]
[-ByteArrayValue <Byte[]>]
[-HsmName] <String>
[-Name] <String>
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Invoke-AzKeyVaultKeyOperation
[-Version <String>]
-Operation <String>
-Algorithm <String>
[-Value <SecureString>]
[-ByteArrayValue <Byte[]>]
[-InputObject] <PSKeyVaultKeyIdentityItem>
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Deskripsi
Cmdlet Invoke-AzKeyVaultKeyOperation mendukung
- Mengenkripsi urutan byte arbitrer menggunakan kunci enkripsi.
- Mendekripsi satu blok data terenkripsi.
- Membungkus kunci konten menggunakan kunci tertentu.
- Membuka bungkus kunci konten menggunakan kunci yang ditentukan yang awalnya digunakan untuk membungkus kunci tersebut.
Contoh
Contoh 1: Mengenkripsi array byte menggunakan kunci enkripsi
$byteArray = [Byte[]]@(58, 219)
$encryptedData = Invoke-AzKeyVaultKeyOperation -Operation Encrypt -Algorithm RSA1_5 -VaultName test-kv -Name test-key -ByteArrayValue $byteArray
$encryptedData
KeyId : https://bez-kv.vault.azure.net/keys/bez-key/c96ce0fb18de446c9f4b911b686988af
RawResult : {21, 39, 82, 56…}
Algorithm : RSA1_5
$byteArray
Mengenkripsi menggunakan kunci uji yang disimpan dalam test-kv.
Contoh 2: Mendekripsi array byte menggunakan kunci enkripsi
$decryptedData = Invoke-AzKeyVaultKeyOperation -Operation Decrypt -Algorithm RSA1_5 -VaultName test-kv -Name test-key -ByteArrayValue $encryptedData.RawResult
$decryptedData
KeyId : https://bez-kv.vault.azure.net/keys/bez-key/c96ce0fb18de446c9f4b911b686988af
RawResult : {58, 219}
Algorithm : RSA1_5
Mendekripsi $encryptedData.RawResult
menggunakan kunci uji yang disimpan dalam test-kv. $decryptedData.RawResult
sama dengan $byteArray
, yang merupakan data asli.
Contoh 3: Mengenkripsi teks biasa menggunakan kunci enkripsi
$encryptedData = Invoke-AzKeyVaultKeyOperation -Operation Encrypt -Algorithm RSA1_5 -VaultName test-kv -Name test-key -Value (ConvertTo-SecureString -String "test" -AsPlainText -Force)
$encryptedData
KeyId : https://test-kv.vault.azure.net/keys/test-key/bd8b77352a2443d4983bd70e9f660bc6
RawResult : {58, 219, 6, 236…}
Algorithm : RSA1_5
Mengenkripsi string "uji" menggunakan kunci pengujian yang disimpan dalam test-kv. RawResult
adalah hasil terenkripsi dalam format array byte, di mana [System.Convert]::ToBase64String($encryptedData.RawResult) sama dengan $encryptedData.Result.
Contoh 4: Mendekripsi data terenkripsi ke teks biasa
$decryptedData = Invoke-AzKeyVaultKeyOperation -Operation Decrypt -Algorithm RSA1_5 -VaultName test-kv -Name test-key -ByteArrayValue $encryptedData.RawResult
$decryptedData
KeyId : https://bez-kv.vault.azure.net/keys/bez-key/c96ce0fb18de446c9f4b911b686988af
RawResult : $byteArray
Algorithm : RSA1_5
Mendekripsi data terenkripsi yang dienkripsi menggunakan kunci pengujian yang disimpan dalam test-kv. $decryptedData.Result
adalah test
. RawResult
adalah hasil yang didekripsi dalam format array byte, di mana [System.Text.UTF8Encoding]::UTF8. GetString($decryptedData.RawResult) sama dengan $decryptedData.Result.
Contoh 5: Membungkus kunci konten menggunakan kunci tertentu
$wrappedResult = Invoke-AzKeyVaultKeyOperation -Operation Wrap -Algorithm RSA1_5 -VaultName test-kv -Name test-key -Value (ConvertTo-SecureString -String "ovQIlbB0DgWhZA7sgkPxbg9H-Ly-VlNGPSgGrrZvlIo" -AsPlainText -Force)
$wrappedResult | Format-List
KeyId : https://test-kv.vault.azure.net/keys/test-key/375cdf20252043b79c8ca0c57b6c7679
RawResult : {58, 219, 6, 236…}
Algorithm : RSA1_5
Membungkus kunci simetris menggunakan kunci bernama test-key yang disimpan dalam test-kv. hasil Result
dibungkus dalam format string Base64.
Contoh 6: Membuka bungkus kunci konten menggunakan kunci tertentu
Invoke-AzKeyVaultKeyOperation -Operation Unwrap -Algorithm RSA1_5 -VaultName test-kv -Name test-key -Value (ConvertTo-SecureString -String $result.Result -AsPlainText -Force)
KeyId : https://test-kv.vault.azure.net/keys/test-key/375cdf20252043b79c8ca0c57b6c7679
RawResult : {58, 219, 6, 236…}
Algorithm : RSA1_5
Membongkar kunci konten menggunakan kunci uji kunci tertentu yang disimpan dalam test-kv. Result
adalah string biasa.
Parameter
-Algorithm
Pengidentifikasi algoritma
Jenis: | String |
Alias: | EncryptionAlgorithm, WrapAlgorithm |
Position: | Named |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | False |
Terima karakter wildcard: | False |
-ByteArrayValue
Nilai yang akan dioperasikan dalam format array byte.
Jenis: | Byte[] |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-Confirm
Meminta Anda mengonfirmasi sebelum menjalankan cmdlet.
Jenis: | SwitchParameter |
Alias: | cf |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-DefaultProfile
Kredensial, akun, penyewa, dan langganan yang digunakan untuk komunikasi dengan Azure.
Jenis: | IAzureContextContainer |
Alias: | AzContext, AzureRmContext, AzureCredential |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-HsmName
Nama HSM.
Jenis: | String |
Position: | 0 |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | False |
Terima karakter wildcard: | False |
-InputObject
Objek kunci
Jenis: | PSKeyVaultKeyIdentityItem |
Alias: | Key |
Position: | 0 |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | True |
Terima karakter wildcard: | False |
-Name
Nama kunci.
Jenis: | String |
Alias: | KeyName |
Position: | 1 |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | False |
Terima karakter wildcard: | False |
-Operation
Pengidentifikasi algoritma
Jenis: | String |
Position: | Named |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | False |
Terima karakter wildcard: | False |
-Value
Nilai yang akan dioperasikan. Parameter ini akan dikonversi ke array byte dengan cara pengodean UTF-8. Jika nilai Anda tidak dapat dikodekan oleh UTF-8, gunakan parameter ByteArrayValue sebagai alternatifnya.
Jenis: | SecureString |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-VaultName
Nama vault.
Jenis: | String |
Position: | 0 |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | False |
Terima karakter wildcard: | False |
-Version
Versi kunci.
Jenis: | String |
Alias: | KeyVersion |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-WhatIf
Menunjukkan apa yang akan terjadi jika cmdlet berjalan. Cmdlet tidak dijalankan.
Jenis: | SwitchParameter |
Alias: | wi |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |