首页 > 解决方案 > 通过 Powershell 通过 Azure Key Vault 管理的密钥访问 Azure 存储

问题描述

我在访问托管密钥保管库中的存储帐户密钥时遇到问题。这是我的代码:

$secret = Get-AzKeyVaultManagedStorageAccount -VaultName $keyVaultName -Name $storageAccountName
$ctx =New-AzStorageContext -StorageAccountName $storageAccountName -StorageAccountKey $secret.SecretValueText

似乎 $secret.SecretValueText 为空/空。如何正确检索存储帐户密钥?这是出现的错误。

New-AzStorageContext : Cannot validate argument on parameter 'StorageAccountKey'. The argument is null or empty. Provide an argument that is not null or empty, and then try the command again.

标签: powershellazure-functionsazure-storageazure-table-storageazure-keyvault

解决方案


肯定会是空的, is 的输出,没有这样的属性,is 的一个属性。Get-AzKeyVaultManagedStorageAccountPSKeyVaultManagedStorageAccountSecretValueTextPSKeyVaultSecret

而且我认为您不能通过 获取存储帐户密钥Get-AzKeyVaultManagedStorageAccount,如果您想获取存储帐户密钥,可以使用下面的命令,确保您登录的用户帐户/服务主体具有 RBAC 角色,例如,Storage Account Key Operator Service Role在您的存储帐户。ContributorOwner

$key = (Get-AzStorageAccountKey -ResourceGroupName <group-name> -Name <storageaccount-name>).Value[0]
New-AzStorageContext -StorageAccountName <storageaccount-name> -StorageAccountKey $key

在此处输入图像描述


推荐阅读