Invoke-AzKeyVaultKeyOperation
키 자격 증명 모음 또는 관리형 hsm에 저장된 지정된 키를 사용하여 "암호화", "암호 해독", "래핑" 또는 "래핑 해제"와 같은 작업을 수행합니다.
구문
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>]
Description
Invoke-AzKeyVaultKeyOperation cmdlet 지원
- 암호화 키를 사용하여 임의의 바이트 시퀀스 암호화
- 암호화된 데이터의 단일 블록 암호 해독
- 지정된 키를 사용하여 대칭 키를 래핑합니다.
- 처음에 해당 키를 래핑하는 데 사용된 지정된 키를 사용하여 대칭 키를 래핑 해제합니다.
예제
예제 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
$byteArray
test-kv에 저장된 테스트 키를 사용하여 암호화합니다.
예제 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에 $encryptedData.RawResult
저장된 테스트 키를 사용하여 암호를 해독합니다. 원본 $decryptedData.RawResult
데이터인 와 $byteArray
동일합니다.
예제 3: 암호화 키를 사용하여 일반 텍스트 암호화
$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
test-kv에 저장된 테스트 키를 사용하여 문자열 "test"를 암호화합니다. 바이 RawResult
트 배열 형식의 암호화된 결과입니다. 여기서 [System.Convert]::ToBase64String($encryptedData.RawResult)은 $encryptedData.Result와 같습니다.
예제 4: 암호화된 데이터를 일반 텍스트로 암호 해독
$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
test-kv에 저장된 테스트 키를 사용하여 암호화된 암호화된 데이터의 암호를 해독합니다. $decryptedData.Result
은 test
입니다. 이 값은 RawResult
[System.Text.UTF8Encoding]::UTF8인 바이트 배열 형식의 암호 해독된 결과입니다. GetString($decryptedData.RawResult)은 $decryptedData.Result와 같습니다.
예제 5: 지정된 키를 사용하여 대칭 키 래핑
$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
test-kv에 저장된 테스트 키라는 키를 사용하여 대칭 키를 래핑합니다. 래 Result
핑된 결과는 Base64 문자열 형식입니다.
예제 6: 지정된 키를 사용하여 대칭 키 래프 해제
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
test-kv에 저장된 지정된 키 테스트 키를 사용하여 대칭 키를 래프 해제합니다. 일반 Result
문자열입니다.
매개 변수
-Algorithm
알고리즘 식별자
형식: | String |
별칭: | EncryptionAlgorithm, WrapAlgorithm |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-ByteArrayValue
바이트 배열 형식으로 작동할 값입니다.
형식: | Byte[] |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-Confirm
cmdlet을 실행하기 전에 확인 메시지가 표시됩니다.
형식: | SwitchParameter |
별칭: | cf |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-DefaultProfile
Azure와의 통신에 사용되는 자격 증명, 계정, 테넌트 및 구독입니다.
형식: | IAzureContextContainer |
별칭: | AzContext, AzureRmContext, AzureCredential |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-HsmName
HSM 이름입니다.
형식: | String |
Position: | 0 |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-InputObject
Key 개체
형식: | PSKeyVaultKeyIdentityItem |
별칭: | Key |
Position: | 0 |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-Name
키 이름입니다.
형식: | String |
별칭: | KeyName |
Position: | 1 |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-Operation
알고리즘 식별자
형식: | String |
Position: | Named |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-Value
작동할 값입니다. 이 매개 변수는 UTF-8 인코딩 방식으로 바이트 배열로 변환됩니다. 값을 UTF-8로 인코딩할 수 없는 경우 매개 변수 ByteArrayValue를 대신 사용하세요.
형식: | SecureString |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-VaultName
자격 증명 모음 이름.
형식: | String |
Position: | 0 |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-Version
키 버전입니다.
형식: | String |
별칭: | KeyVersion |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
-WhatIf
cmdlet이 실행될 경우 결과 동작을 표시합니다. cmdlet이 실행되지 않습니다.
형식: | SwitchParameter |
별칭: | wi |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |