zoukankan      html  css  js  c++  java
  • 细化Azure RBAC权限

    Azure RBAC权限的细化一直是比较繁琐的事情,以下示例抛砖引玉,供大家参考

    客户需求:

    新用户在指定资源组下权限需求如下:

    一、禁止以下权限

    1、 调整虚拟机大小配置

    2、 删除&停止虚拟机

    3、 扩容磁盘&添加磁盘

    4、 重置密码

    二、容许以下权限

    1、 对应资源组下所有查看类权限

    2、 启动诊断权限(查看屏幕快照)

    3、 监视类权限

    4、 特殊权限:重启虚拟机&标记权限&提交工单权限

    解决方法:

    您可以参考如下操作说明,以实现新用户对指定资源组所具有的特定权限

    1.AAD下创建新用户

     2.在装有Azure Powershell的客户端执行如下操作

    #登陆Azure账号

    Add-AzureRmAccount -EnvironmentName AzureChinaCloud

    #选择指定的订阅

    Select-AzureRmSubscription -Subscription ***

    #获取已有角色“虚拟机参与者”

    $role = Get-AzureRmRoleDefinition -Name 'Virtual Machine Contributor'

    #清空角色Id

    $role.Id = $null

    #给自定义角色命名及添加角色描述

    $role.Name = 'Special Permission'

    $role.Description = '***'

    #清空“虚拟机参与者”的已有actions及notactions权限

    $role.Actions.Clear()

    $role.NotActions.Clear()

    #赋予自定义角色所有资源的只读权限

    $role.Actions.Add("*/read")

    #赋予自定义角色重启虚拟机的权限

    $role.Actions.Add("Microsoft.Compute/virtualMachines/restart/action")

    #赋予自定义角色list存储账号key的权限,以实现查看诊断屏幕快照

    $role.Actions.Add("Microsoft.Storage/storageAccounts/listKeys/action")

    #赋予自定义角色添加诊断规则的权限,以实现监视类功能

    $role.Actions.Add("Microsoft.Insights/AlertRules/*")

    #赋予自定义角色更新虚拟机的权限,以实现标记功能

    $role.Actions.Add("Microsoft.Compute/virtualMachines/write")

    #阻止自定义角色查看虚拟机大小的功能

    $role.NotActions.Add("Microsoft.Compute/virtualMachines/vmSizes/read")

    #清空自定义角色的作用域,并授权指定订阅

    $role.AssignableScopes.Clear()

    $subscriptionid = "***"

    $role.AssignableScopes.Add("/subscriptions/"+$subscriptionid)

    #新建自定义角色

    New-AzureRmRoleDefinition -Role $role

    3.给指定资源组添加基于新用户的自定义角色权限

     

    4.使用新用户登录Azure Portal测试验证

    尝试关闭虚拟机报错

    尝试删除虚拟机报错

     

    不可以显示虚拟机大小,以阻止客户调整虚拟机大小

     

    尝试附加数据磁盘报错

     

    尝试重置密码报错

     

    尝试创建虚拟机报错

    可以成功查看虚拟机信息

    可以成功标记虚拟机

     

    更多有关RBAC的说明,请参考

    https://blogs.technet.microsoft.com/bulentozkir/2016/09/09/azure-resource-manager-rbac-management-practical-tips/

    https://docs.azure.cn/zh-cn/role-based-access-control/resource-provider-operations#microsoftcompute

    https://docs.azure.cn/zh-cn/role-based-access-control/built-in-roles#virtual-machine-contributor

  • 相关阅读:
    18、监听器/国际化
    17、过滤器
    16、连接池/分页技术
    15、Jdbc的优化(BeanUtils组件)
    14、知识回顾
    13、mysql/触发器
    12、Jsp加强/自定义标签/JavaBean
    11、Jsp加强/EL表达式/jsp标签
    10、会话管理/编程实战分析/Jsp
    9、Http回顾/Servlet
  • 原文地址:https://www.cnblogs.com/stonehe/p/10250804.html
Copyright © 2011-2022 走看看