Invoke-AzKeyVaultKeyOperation
Executa operações como "Encrypt", "Decrypt", "Wrap" ou "Unwrap" usando uma chave especificada armazenada em um cofre de chaves ou hsm gerenciado.
Sintaxe
ByVaultName (Predefinição)
Invoke-AzKeyVaultKeyOperation
[-Name] <String>
[-VaultName] <String>
-Operation <String>
-Algorithm <String>
-ByteArrayValue <Byte[]>
[-Version <String>]
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
ByHsmName
Invoke-AzKeyVaultKeyOperation
[-HsmName] <String>
[-Name] <String>
-Operation <String>
-Algorithm <String>
-ByteArrayValue <Byte[]>
[-Version <String>]
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Invoke-AzKeyVaultKeyOperation
[-InputObject] <PSKeyVaultKeyIdentityItem>
-Operation <String>
-Algorithm <String>
-ByteArrayValue <Byte[]>
[-Version <String>]
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
Invoke-AzKeyVaultKeyOperation cmdlet suporta
Encriptação de uma sequência arbitrária de bytes utilizando uma chave de encriptação.
Desencriptar um único bloco de dados encriptados.
Encapsulamento de uma chave simétrica usando uma chave especificada.
Desembrulhar uma chave simétrica usando a chave especificada que foi usada inicialmente para encapsular essa chave.
Exemplos
Exemplo 1: Criptografa a matriz de bytes usando uma chave de criptografia
$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
Criptografa $byteArray usando a chave de teste armazenada em test-kv.
Exemplo 2: Descriptografa a matriz de bytes usando uma chave de criptografia
$encryptedData = [pscustomobject]@{ RawResult = [byte[]]@(58,219) }
$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
Descriptografa $encryptedData.RawResult usando a chave de teste armazenada em test-kv. O $decryptedData.RawResult mesmo acontece com $byteArrayo , que são dados originais.
Exemplo 3: Criptografa texto sem formatação usando uma chave de criptografia
$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
Criptografa a cadeia de caracteres "test" usando a chave de teste armazenada em test-kv. O RawResult é o resultado criptografado no formato de matriz de bytes.
Exemplo 4: Desencriptar dados encriptados para texto simples
$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
Descriptografa dados criptografados que são criptografados usando a chave de teste armazenada em test-kv. O RawResult é o resultado desencriptado no formato de matriz de bytes.
Exemplo 5: Encapsula uma chave simétrica usando uma chave especificada
$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
Encapsula uma chave simétrica usando a chave chamada test-key armazenada em test-kv. O RawResult resultado é encapsulado no formato de matriz de bytes.
Exemplo 6: Desembrulha uma chave simétrica usando uma chave especificada
$wrappedResult = [pscustomobject]@{ RawResult = [byte[]]@(58,219) }
$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
Desembrulha uma chave simétrica usando uma chave de teste de chave especificada armazenada em test-kv. O RawResult resultado é desempacotado no formato de matriz de bytes.
Parâmetros
-Algorithm
Identificador do algoritmo
Propriedades dos parâmetros
Tipo: String
Default value: None
Suporta carateres universais: False
NãoMostrar: False
Aliases: EncryptionAlgorithm, WrapAlgorithm
Conjuntos de parâmetros
(All)
Position: Named
Obrigatório: True
Valor do pipeline: False
Valor do pipeline por nome de propriedade: False
Valor dos restantes argumentos: False
-ByteArrayValue
O valor a ser operado no formato de matriz de bytes.
Propriedades dos parâmetros
Tipo: Byte [ ]
Default value: None
Suporta carateres universais: False
NãoMostrar: False
Conjuntos de parâmetros
(All)
Position: Named
Obrigatório: True
Valor do pipeline: False
Valor do pipeline por nome de propriedade: False
Valor dos restantes argumentos: False
-Confirm
Solicita confirmação antes de executar o cmdlet.
Propriedades dos parâmetros
Tipo: SwitchParameter
Default value: None
Suporta carateres universais: False
NãoMostrar: False
Aliases: Cf.
Conjuntos de parâmetros
(All)
Position: Named
Obrigatório: False
Valor do pipeline: False
Valor do pipeline por nome de propriedade: False
Valor dos restantes argumentos: False
-DefaultProfile
As credenciais, conta, inquilino e subscrição usados para comunicação com o Azure.
Propriedades dos parâmetros
Tipo: IAzureContextContainer
Default value: None
Suporta carateres universais: False
NãoMostrar: False
Aliases: AzContext, AzureRmContext, AzureCredential
Conjuntos de parâmetros
(All)
Position: Named
Obrigatório: False
Valor do pipeline: False
Valor do pipeline por nome de propriedade: False
Valor dos restantes argumentos: False
-HsmName
Nome HSM.
Propriedades dos parâmetros
Tipo: String
Default value: None
Suporta carateres universais: False
NãoMostrar: False
Conjuntos de parâmetros
ByHsmName
Position: 0
Obrigatório: True
Valor do pipeline: False
Valor do pipeline por nome de propriedade: False
Valor dos restantes argumentos: False
Objeto-chave
ByKeyInputObject
Position: 0
Obrigatório: True
Valor do pipeline: True
Valor do pipeline por nome de propriedade: False
Valor dos restantes argumentos: False
-Name
Nome da chave.
Propriedades dos parâmetros
Tipo: String
Default value: None
Suporta carateres universais: False
NãoMostrar: False
Aliases: Nome da chave
Conjuntos de parâmetros
ByVaultName
Position: 1
Obrigatório: True
Valor do pipeline: False
Valor do pipeline por nome de propriedade: False
Valor dos restantes argumentos: False
ByHsmName
Position: 1
Obrigatório: True
Valor do pipeline: False
Valor do pipeline por nome de propriedade: False
Valor dos restantes argumentos: False
-Operation
Identificador do algoritmo
Propriedades dos parâmetros
Tipo: String
Default value: None
Suporta carateres universais: False
NãoMostrar: False
Conjuntos de parâmetros
(All)
Position: Named
Obrigatório: True
Valor do pipeline: False
Valor do pipeline por nome de propriedade: False
Valor dos restantes argumentos: False
-VaultName
Nome do cofre.
Propriedades dos parâmetros
Tipo: String
Default value: None
Suporta carateres universais: False
NãoMostrar: False
Conjuntos de parâmetros
ByVaultName
Position: 0
Obrigatório: True
Valor do pipeline: False
Valor do pipeline por nome de propriedade: False
Valor dos restantes argumentos: False
-Version
Versão chave.
Propriedades dos parâmetros
Tipo: String
Default value: None
Suporta carateres universais: False
NãoMostrar: False
Aliases: Versão Principal
Conjuntos de parâmetros
(All)
Position: Named
Obrigatório: False
Valor do pipeline: False
Valor do pipeline por nome de propriedade: False
Valor dos restantes argumentos: False
-WhatIf
Mostra o que aconteceria se o cmdlet fosse executado.
O cmdlet não é executado.
Propriedades dos parâmetros
Tipo: SwitchParameter
Default value: None
Suporta carateres universais: False
NãoMostrar: False
Aliases: Wi
Conjuntos de parâmetros
(All)
Position: Named
Obrigatório: False
Valor do pipeline: False
Valor do pipeline por nome de propriedade: False
Valor dos restantes argumentos: False
CommonParameters
Este cmdlet suporta os parâmetros comuns: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Para obter mais informações, consulte about_CommonParameters .
Saídas