如何使用Azure RBAC限制虚拟机大小?

时间:2016-08-09 09:55:09

标签: azure azure-virtual-machine rbac

作为管理员,我需要限制最终用户可以通过Azure门户配置的VM的大小。我正在寻找类似于我可以使用AWS IAM执行的操作,确保用户只能配置特定大小的VM。

2 个答案:

答案 0 :(得分:2)

Garuav钉了它 - 你想使用一个政策定义。

https://azure.microsoft.com/en-us/documentation/articles/resource-manager-policy/

你基本上会有这样的东西:

$policyJSON = @'
    {
      "if" : {
      "not" : {
        "field" : "vmSize",
        "in" : ["Standard_D1", "Standard_D2"]
      }
    },
      "then" : {
        "effect" : "deny"
      }
    }
'@

$policy = New-AzureRmPolicyDefinition -Name 'VMSizeRestriction' -DisplayName 'VM Size Restrictions' -Policy $policyJSON

New-AzureRmPolicyAssignment -Name 'VMSizeRestriction-SubscriptionA' -PolicyDefinition $policy -Scope '/subscriptions/########-####-####-####-############'

您也可以为其分配其他范围(例如resourceGroups),并将其与RBAC(允许用户仅访问一个RG,然后将策略应用于该RG)组合在一起。上面的文档链接还有一些。

答案 1 :(得分:1)

要限制最终用户可以从azure门户配置的Vms的大小,您可以创建一个" Azure开发测试实验室"并直接设置您要允许的vm大小。然后,您可以授予客户RBAC权限以访问开发测试实验室。

enter image description here

另一种选择是创建ressource policy并将其应用于您的客户订阅。

问候,