【问题标题】:Azure PIM for VM Admin Role用于 VM 管理员角色的 Azure PIM
【发布时间】:2021-02-02 14:09:55
【问题描述】:

我是 Azure PIM 的新手,正在探索它的功能。 我手头有一个用例,我需要通过 PIM 使 VM Admin 角色可请求。我正在尝试构建一个自定义角色,以便我可以在角色中附加单个 VM 作为范围的一部分,但我无法这样做。订阅/资源组中存在的所有 VM 都附加到不需要的角色。 因此,简而言之,尽管订阅和(或)资源组中有多个虚拟机,但是否可以创建一个仅针对单个虚拟机定义范围的自定义角色。

【问题讨论】:

  • 大家好,有什么建议吗?
  • 您好,您检查我的答案了吗?有用吗?
  • 是的。谢谢。

标签: azure azure-active-directory


【解决方案1】:

是的。您可以使用 Az PowerShell cmdlet New-AzRoleDefinition 来做到这一点。

请参考第二个例子here。 (修改$subs = '/subscriptions/{subscription_id}/resourceGroups/{resourceGroup_name}/providers/Microsoft.Compute/virtualMachines/{VM_name}'

$role = [Microsoft.Azure.Commands.Resources.Models.Authorization.PSRoleDefinition]::new()
$role.Name = 'Virtual Machine Operator 2'
$role.Description = 'Can monitor and restart virtual machines.'
$role.IsCustom = $true
$perms = 'Microsoft.Storage/*/read','Microsoft.Network/*/read','Microsoft.Compute/*/read'
$perms += 'Microsoft.Compute/virtualMachines/start/action','Microsoft.Compute/virtualMachines/restart/action'
$perms += 'Microsoft.Authorization/*/read'
$perms += 'Microsoft.ResourceHealth/availabilityStatuses/read'
$perms += 'Microsoft.Resources/subscriptions/resourceGroups/read'
$perms += 'Microsoft.Insights/alertRules/*','Microsoft.Support/*'
$role.Actions = $perms
$role.NotActions = (Get-AzRoleDefinition -Name 'Virtual Machine Contributor').NotActions
$subs = '/subscriptions/{subscription_id}/resourceGroups/{resourceGroup_name}/providers/Microsoft.Compute/virtualMachines/{VM_name}'
$role.AssignableScopes = $subs
New-AzRoleDefinition -Role $role

然后您可以将此自定义角色分配给 Azure 门户 -> 此 VM -> 访问控制 (IAM) 中的用户。

您也可以使用 cmdlet New-AzRoleAssignment 来分配角色。

New-AzRoleAssignment -ObjectId {objectID of the user} -RoleDefinitionName 'Virtual Machine Operator 2' -Scope /subscriptions/{subscription_id}/resourceGroups/{resourceGroup_name}/providers/Microsoft.Compute/virtualMachines/{VM_name}

确保此处-Scope 的值与第一个脚本中的AssignableScopes 相同。

顺便说一句:

事实上,我认为没有必要在角色中附加单个 VM 作为范围的一部分。

当您将角色分配给用户时,您需要将范围指定为上面显示的第二个脚本。您可以创建自定义角色,订阅/资源组中存在的所有 VM 都已附加。分配角色时,您只需将一个特定的 VM 指定为作用域。那么用户只能管理这个虚拟机,不能管理其他虚拟机。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-05-25
    • 1970-01-01
    • 2011-09-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多