我需要使用 powershell 授予和删除对 Keyvault for Managed Instances 中 TDE 密钥的访问权限。根据以下文档,Microsoft 建议使用以下代码获取托管实例的 objectid 并使用它来设置密钥保管库中的策略
$managedInstance = Get-AzSqlInstance -Name 'ContosoManagedInstanceName' -ResourceGroupName 'ContosoResourceGroup' Set-AzKeyVaultAccessPolicy -VaultName ContosoVault -ObjectId $managedInstance.Identity.PrincipalId -PermissionsToKeys get, wrapKey, unwrapKey
但是上面的命令对我不起作用,因为我用红色标记的身份属性是空的
我检查了我们库存中的所有 MI 并且它们都是空的,但是我可以使用 Azure 门户轻松地为保管库中的密钥分配权限,该门户还显示了在选择主体时托管实例的 GUID(对象 ID)。有谁知道为什么 Get-AzSqlInstance 的标识属性为空,有没有其他方法可以使用 PowerShell 完成此操作?