active-directory - 以编程方式将 RoleAssignment 添加到资源组
问题描述
我正在用 Java 实现一个应用程序,该应用程序可以通过安全主体访问 Azure 并创建一些资源组。我想,给定通过配置指定的 AD 组名称,将该 AD 组的特定角色分配添加到资源组。通过 Azure Java SDK 是否可行,或者我需要使用 REST API?服务主体需要哪些权限:
- 读取给定名称的 AD 组
- 为该 AD 组新创建的资源组分配 RolePermission
我需要向我们的 ActiveDirectory 团队询问必须为我的服务主体启用哪些权限。
TIA 最好的问候
解决方案
我不知道我们是否可以使用 java sdk 来实现这个要求,但我知道我们可以请求 rest api 来做到这一点。请参考以下步骤:
1.我们需要通过请求这个api获取角色定义的id:GET https://management.azure.com/{scope}/providers/Microsoft.Authorization/roleDefinitions?api-version=2015-07-01
URI 参数{scope}
应该类似于/subscriptions/{your subscription id}/resourceGroups/{your resource group name}
2.然后请求此api:PUT https://management.azure.com/{scope}/providers/Microsoft.Authorization/roleAssignments/{roleAssignmentName}?api-version=2015-07-01
创建角色分配(将资源组贡献者的角色分配给您的广告组)。
{scope} 应该是/subscriptions/{your subscription id}/resourceGroups/{your resource group name}
,您可以根据需要指定 a {roleAssignmentName}
(应该是有效的 GUID)。
请求正文应如下所示:
{
properties: {
"roleDefinitionId": "{the id of Contributor role which we get in step 1}",
"principalId": "{the object id of your AD group}"
}
}
推荐阅读
- html - 背景不要填满整个部分
- java - 我应该使用哪种设计模式来通知更改?Java/Kotlin 安卓
- r - 在分组散点图中水平抖动点
- javascript - JavaScript if 语句替代语法
- byte - 我们可以用 1 位存储多少个数字?
- excel - excel 365 vba 中没有评论线程数属性
- html - 需要帮助使用 CSS 将 HTML 子元素放在父元素后面
- java - 无法构建 gradle 项目:无效类型代码:B3 使用 Java 11
- python - 将 django 项目上传到 heroku 时出现问题:配置 Postgres
- javascript - 如何从多维数组推送到数组单个对象?