如何使用 Azure PowerShell 获取 Azure KeyVault 的访问策略

Jus*_*dow 4 azure azure-powershell azure-keyvault

我正在编写一个 Azure Powershell 脚本,它比较了两个 Azure KeyVault 的机密和访问策略。

为了比较 Azure KeyVault 的秘密,我使用了Get-AzureKeyVaultSecret运行良好的命令 ,
但是对于访问策略似乎没有任何命令,例如Get-AzKeyVaultAccessPolicy.

那么,有没有办法使用 Azure PowerShell 从 KeyVault 中检索访问策略?

Jus*_*dow 9

这是 Azure Powershell 的解决方案:

$keyVaultName = "KEYVAULT_NAME_HERE"
$keyVault = Get-AzKeyVault -VaultName $keyVaultName
$accessPolicies = $keyVault.AccessPolicies

# Logging the amount of the items
Write-Host "$($keyVault.AccessPolicies.Count)"
Run Code Online (Sandbox Code Playgroud)

注意:如果你想获得 Azure CLI 或 Azure RM 的解决方案,请考虑查看下面Mohit 的回答。


Moh*_*rma 5

如果您使用 AZ cli 来获取访问策略,您可以使用以下命令来获取访问策略:

az keyvault show --name
                 [--resource-group]
                 [--subscription]
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

如果您使用的是 Azure RM 模块,那么您可以简单地调用以下命令:

Get-AzureRMKeyVault -VaultName 'myvault'

Vault Name                       : myvault
Resource Group Name              : myrg
Location                         : westus
Resource ID                      : /subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/myrg/providers
                                   /Microsoft.KeyVault/vaults/myvault
Vault URI                        : https://myvault.vault.azure.net/
Tenant ID                        : xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx
SKU                              : Standard
Enabled For Deployment?          : True
Enabled For Template Deployment? : True
Enabled For Disk Encryption?     : False
Soft Delete Enabled?             : True
Access Policies                  :
                                   Tenant ID                                  : xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx
                                   Object ID                                  : xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx
                                   Application ID                             :
                                   Display Name                               : User Name (username@microsoft.com)
                                   Permissions to Keys                        : get, create, delete, list, update,
                                   import, backup, restore, recover
                                   Permissions to Secrets                     : get, list, set, delete, backup,
                                   restore, recover
                                   Permissions to Certificates                : get, delete, list, create, import,
                                   update, deleteissuers, getissuers, listissuers, managecontacts, manageissuers,
                                   setissuers, recover
                                   Permissions to (Key Vault Managed) Storage : delete, deletesas, get, getsas, list,
                                   listsas, regeneratekey, set, setsas, update

Tags                             :
Run Code Online (Sandbox Code Playgroud)

希望能帮助到你。