Set-KeyVaultAccessPolicy
Azure: Sets a Key Vault access policy
param(
[Parameter(Mandatory = $true)]
[string]$VaultName,
[Parameter(Mandatory = $true)]
[string]$UserPrincipalName,
[Parameter(Mandatory = $false)]
[string[]]$PermissionsToKeys,
[Parameter(Mandatory = $false)]
[string[]]$PermissionsToSecrets,
[Parameter(Mandatory = $false)]
[string[]]$PermissionsToCertificates
)
try {
Import-Module Az.KeyVault -ErrorAction Stop
[hashtable]$cmdArgs = @{ 'VaultName' = $VaultName; 'UserPrincipalName' = $UserPrincipalName; 'ErrorAction' = 'Stop' }
if ($PermissionsToKeys) { $cmdArgs.Add('PermissionsToKeys', $PermissionsToKeys) }
if ($PermissionsToSecrets) { $cmdArgs.Add('PermissionsToSecrets', $PermissionsToSecrets) }
if ($PermissionsToCertificates) { $cmdArgs.Add('PermissionsToCertificates', $PermissionsToCertificates) }
Set-AzKeyVaultAccessPolicy @cmdArgs | Out-Null
Write-Output "Successfully set access policy for '$UserPrincipalName' on vault '$VaultName'."
} catch {
Write-Error $_
exit 1
}The name of the Key Vault.
The user principal name (UPN) to grant access.
Array of key permissions (e.g. get, list, set, delete).
Array of secret permissions (e.g. get, list, set, delete).
Array of certificate permissions (e.g. get, list, delete).