首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >尝试将秘密从一个Kv存储到另一个Kv

尝试将秘密从一个Kv存储到另一个Kv
EN

Stack Overflow用户
提问于 2021-01-26 03:06:15
回答 1查看 43关注 0票数 0

面临以下代码的问题,用于将密钥从一个KV复制到另一个KV。secrets值始终检索null。

代码语言:javascript
复制
$keyvaultName = 'kv1'
$secrets = Get-AzKeyVaultSecret -VaultName $keyvaultName
$kvname='bkpkv2'

$keys =@{}
foreach ($secret in $secrets)
    {
        $secretName = $secret.name
        
        $key = (Get-AzKeyVaultSecret -VaultName $keyvaultName -name $secretName).SecretValueText
        $keys.Add("$secretName", "$key")


        $hashed = ConvertTo-SecureString -String $key -AsPlainText -Force
        Set-AzKeyVaultSecret -VaultName $kvname -Name $secret.name -Secretvalue $hashed


    }
EN

回答 1

Stack Overflow用户

发布于 2021-01-26 03:50:12

在当前版本的Az中,SecretValueText已被弃用。如果要查看密钥的解密文本,可以在Get-AzKeyVaultSecret上使用-AsPlainText开关。

代码语言:javascript
复制
$secretText = Get-AzKeyVaultSecret -VaultName $keyvaultName -name $secretName -AsPlainText

您可能会遇到这样一种情况,即删除SecretValueText属性是一项破坏性的更改。然后,另一种选择是将SecretValueText属性添加回Microsoft.Azure.Commands.KeyVault.Models.PSKeyVaultSecretIdentityItem对象。

代码语言:javascript
复制
# Update the PSKeyVaultSecretIdentityItem object type at the beginning of the session
$Script = { Get-AzKeyVaultSecret -VaultName $this.VaultName -Name $this.Name -AsPlainText }
Update-TypeData -TypeName 'Microsoft.Azure.Commands.KeyVault.Models.PSKeyVaultSecretIdentityItem' -MemberName 'SecretValueText' -MemberType ScriptProperty -Value $Script

# SecretValueText property will contain decrypted secret for remainder of the session
$secretText = (Get-AzKeyVaultSecret -VaultName $keyvaultName -name $secretName).SecretValueText
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65890888

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档