我无法访问托管密钥库中的存储帐户密钥。 这是我的代码:
$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.
答案 0 :(得分:0)
肯定是空的,Get-AzKeyVaultManagedStorageAccount
的{{3}}是output,它没有这样的属性,SecretValueText
是{{3}的属性}。
我认为您无法通过Get-AzKeyVaultManagedStorageAccount
获取存储帐户密钥,如果要获取存储帐户密钥,可以使用以下命令,确保您登录的用户帐户/服务主体具有RBAC的角色,例如您存储帐户中的Storage Account Key Operator Service Role
,Contributor
,Owner
。
$key = (Get-AzStorageAccountKey -ResourceGroupName <group-name> -Name <storageaccount-name>).Value[0]
New-AzStorageContext -StorageAccountName <storageaccount-name> -StorageAccountKey $key