Invoke-AzKeyVaultKeyOperation
키 자격 증명 모음 또는 관리형 hsm에 저장된 지정된 키를 사용하여 "암호화", "암호 해독", "래핑" 또는 "래핑 해제"와 같은 작업을 수행합니다.
구문
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>]
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
test-kv에 저장된 테스트 키를 사용하여 $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에 저장된 테스트 키를 사용하여 $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"를 암호화합니다.
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에 저장된 테스트 키를 사용하여 암호화된 암호화된 데이터의 암호를 해독합니다.
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에 저장된 테스트 키라는 키를 사용하여 대칭 키를 래핑합니다.
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에 저장된 지정된 키 테스트 키를 사용하여 대칭 키를 래프 해제합니다.
RawResult
래핑 해제 결과 바이트 배열 형식입니다.
매개 변수
-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
키 개체
형식: | 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 |
-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 |
입력
출력
Azure PowerShell