Invoke-AzKeyVaultKeyOperation
キー コンテナーまたはマネージド HSM に格納されている指定されたキーを使用して、"Encrypt"、"Decrypt"、"Wrap"、"Unwrap" などの操作を実行します。
構文
Invoke-AzKeyVaultKeyOperation
[-Version <String>]
-Operation <String>
-Algorithm <String>
[-ByteArrayValue <Byte[]>]
[-Name] <String>
[-VaultName] <String>
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Invoke-AzKeyVaultKeyOperation
[-Version <String>]
-Operation <String>
-Algorithm <String>
[-ByteArrayValue <Byte[]>]
[-HsmName] <String>
[-Name] <String>
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Invoke-AzKeyVaultKeyOperation
[-Version <String>]
-Operation <String>
-Algorithm <String>
[-ByteArrayValue <Byte[]>]
[-InputObject] <PSKeyVaultKeyIdentityItem>
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
説明
Invoke-AzKeyVaultKeyOperation コマンドレットでサポートされる
- 暗号化キーを使用して任意のバイト シーケンスを暗号化する。
- 暗号化されたデータの 1 つのブロックの暗号化を解除する。
- 指定したキーを使用して対称キーをラップする。
- 最初にそのキーをラップするために使用された指定したキーを使用して、対称キーのラップを解除します。
例
例 1: 暗号化キーを使用してバイト配列を暗号化する
$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
test-kv に格納されている test-key を使用して $byteArray
を暗号化します。
例 2: 暗号化キーを使用してバイト配列を復号化する
$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
test-kv に格納されている test-key を使用して、 $encryptedData.RawResult
を復号化します。 $decryptedData.RawResult
は、元のデータである$byteArray
と同じです。
例 3: 暗号化キーを使用してプレーン テキストを暗号化する
$plainText = "test"
$byteArray = [system.Text.Encoding]::UTF8.GetBytes($plainText)
$encryptedData = Invoke-AzKeyVaultKeyOperation -Operation Encrypt -Algorithm RSA1_5 -VaultName test-kv -Name test-key -ByteArrayValue $byteArray
$encryptedData
KeyId : https://test-kv.vault.azure.net/keys/test-key/bd8b77352a2443d4983bd70e9f660bc6
RawResult : {58, 219, 6, 236…}
Algorithm : RSA1_5
test-kv に格納されている test-key を使用して文字列 "test" を暗号化します。 RawResult
は、バイト配列形式で暗号化された結果です。
例 4: 暗号化されたデータをプレーン テキストに復号化する
$decryptedData = Invoke-AzKeyVaultKeyOperation -Operation Decrypt -Algorithm RSA1_5 -VaultName test-kv -Name test-key -ByteArrayValue $encryptedData.RawResult
$plainText = [system.Text.Encoding]::UTF8.GetString($decryptedData.RawResult)
$plainText
test
test-kv に格納されている test-key を使用して暗号化された暗号化されたデータを復号化します。 RawResult
は、復号化された結果をバイト配列形式で示します。
例 5: 指定したキーを使用して対称キーをラップする
$key = "ovQIlbB0DgWhZA7sgkPxbg9H-Ly-VlNGPSgGrrZvlIo"
$byteArray = [system.Text.Encoding]::UTF8.GetBytes($key)
$wrappedResult = Invoke-AzKeyVaultKeyOperation -Operation Wrap -Algorithm RSA1_5 -VaultName test-kv -Name test-key -ByteArrayValue $byteArray
$wrappedResult | Format-List
KeyId : https://test-kv.vault.azure.net/keys/test-key/375cdf20252043b79c8ca0c57b6c7679
RawResult : {58, 219, 6, 236…}
Algorithm : RSA1_5
test-kv に格納されている test-key という名前のキーを使用して対称キーをラップします。 RawResult
がラップされた結果はバイト配列形式になります。
例 6: 指定したキーを使用して対称キーのラップを解除する
$unwrappedResult = Invoke-AzKeyVaultKeyOperation -Operation Unwrap -Algorithm RSA1_5 -VaultName test-kv -Name test-key -ByteArrayValue $wrappedResult.RawResult
$key = [system.Text.Encoding]::UTF8.GetString($unwrappedResult.RawResult)
$key
ovQIlbB0DgWhZA7sgkPxbg9H-Ly-VlNGPSgGrrZvlIo
test-kv に格納されている指定されたキー test-key を使用して、対称キーのラップを解除します。 RawResult
はラップ解除された結果をバイト配列形式で返します。
パラメーター
-Algorithm
アルゴリズム識別子
型: | String |
Aliases: | EncryptionAlgorithm, WrapAlgorithm |
配置: | Named |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-ByteArrayValue
バイト配列形式で操作される値。
型: | Byte[] |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Confirm
コマンドレットの実行前に確認を求めるメッセージが表示されます。
型: | SwitchParameter |
Aliases: | cf |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-DefaultProfile
Azure との通信のために使用される資格情報、アカウント、テナント、サブスクリプションです。
型: | IAzureContextContainer |
Aliases: | AzContext, AzureRmContext, AzureCredential |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-HsmName
HSM 名。
型: | String |
配置: | 0 |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-InputObject
キー オブジェクト
型: | PSKeyVaultKeyIdentityItem |
Aliases: | Key |
配置: | 0 |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | False |
-Name
キー名。
型: | String |
Aliases: | KeyName |
配置: | 1 |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Operation
アルゴリズム識別子
型: | String |
配置: | Named |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-VaultName
コンテナー名。
型: | String |
配置: | 0 |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Version
キーのバージョン。
型: | String |
Aliases: | KeyVersion |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-WhatIf
コマンドレットの実行時に発生する内容を示します。 このコマンドレットは実行されません。
型: | SwitchParameter |
Aliases: | wi |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |