解决Contributor role无法添加Endpoint问题

最近根据老板要求梳理了公司Azure账号的权限,为每个人单独创建了一个资源组,然后赋予了contributor的权限,这属于很标准的一种做法,contributor这个role理论上来说,根据微软的说明,除了不能分配权限以外,其实可以做的操作是和owner基本差不多的,结果发现原来有些地方还是不一样

给用户分配了contributor role之后,创建了一个虚拟网络,然后在尝试为虚拟网络添加endpoint的时候,就发现遇到了问题,至于endpoint是什么,可以翻阅之前的博客

Azure Endpoint 解析

https://blog.51cto.com/mxyit/2347623

尝试创建endpoint时,发现会提示以下信息,也就是说权限不够了

clip_image002

这种问题一般来说加权限就够了,但是要加什么权限呢?多了可能会产生其他影响,少了肯定解决不了问题。其实这时候可以通过RBAC中自定义Role的方式解决,方法很简单,首先尝试获取到contributor这个role的定义

clip_image004

其实每个role对应可以执行的任务都会写在actions这个属性里,比如contributor可以执行的任务是*,代表都可以执行,当然还会有notactions这个属性来做黑名单,以限制一些不允许的操作

clip_image006

之后我们可以看下如果需要添加endpoint的话,需要添加什么样的actions,可以通过PowerShell Get-AzureRmProviderOperation 来进行查询,和网络相关的可以尝试查找 ,发现可以查询到很多信息

clip_image008

可以再进一步针对endpoint关键字进行筛选,直接就找到结果了

clip_image010

清除其他的action, 然后为Role添加这个操作

clip_image012

为一些基本信息赋值

clip_image014

定义Role的范围

clip_image016

创建Role

clip_image018

将角色assign 给用户,然后重新登陆后再次尝试发现已经可以正常添加endpoint了!

clip_image020

猜你喜欢

转载自blog.51cto.com/mxyit/2354302
今日推荐