permissions - 使用 Terraform 在 appRegistration azure 中赋予所有者角色的问题
问题描述
我正在使用 Terraform 在 Azure 中创建应用注册。
之后,我尝试将所有者权限授予其他人(我自己),但它不允许我这样做。
我正在使用的命令序列是:
resource "azurerm_azuread_application" "service_principal" {
name = "${var.departamentoCamel}-${var.appnameCamel}-${var.entorno}"
homepage = "https://${lower("${var.appnameCamel}")}.asisa.es"
available_to_other_tenants = false
oauth2_allow_implicit_flow = true
}
resource "azurerm_azuread_service_principal" "service_principal" {
application_id = "${azurerm_azuread_application.service_principal.application_id}"
}
resource "azurerm_azuread_service_principal_password" "service_principal" {
service_principal_id = "${azurerm_azuread_service_principal.service_principal.id}"
value = "${random_string.password.result}="
end_date = "2020-01-01T01:02:03Z"
}
resource "azurerm_role_assignment" "test" {
scope = "${azurerm_azuread_application.service_principal.id}"
role_definition_name = "Owner"
principal_id = "8c7b71b3-cf32-4da5-9bbb-5e5dd249c607"
}
但我收到以下错误消息:
* azurerm_role_assignment.test: authorization.RoleAssignmentsClient#Create: Failure responding to request: StatusCode=404 -- Original Error: autorest/azure: Service returned an error. Status=404 Code="MissingSubscription" Message="The request did not have a provided subscription. All requests must have an associated subscription Id."
有谁知道如何将所有者角色赋予 ObjectID 8c7b71b3-cf32-4da5-9bbb-5e5dd249c607 的人?
谢谢,胡安拉
解决方案
AFAIK,azurerm_role_assignment
用于将给定的委托人(用户或应用程序)分配给给定的角色。
应该是你的azure订阅下的azure资源的scope
资源id,服务主体属于Azure AD,不是订阅中的资源。
如果您想将所有者添加到您的服务主体,它似乎不支持通过 terraform。
解决方法:
1.导航到 Azure 门户,Azure AD -> 企业应用程序 - 所有应用程序 -> 您的服务主体 -> 所有者 -> 添加。
2.使用天蓝色的PowerShell Add-AzureADServicePrincipalOwner
。
推荐阅读
- c++ - 如何在不污染缓存的情况下读取大量数据?
- hadoop - 为什么hadoop对于一个简单的hello world工作很慢
- xaml - Xamarin Forms:我可以制作一个可以由不同页面动态更改的自定义模板吗?
- python - 将永久参数添加到日志记录
- tcl - 期望 - 期望输出比较
- java - tilepane javafx中相同大小的按钮
- c# - 打开表单时,DataGridView 的 DataEnter 被击中两次?
- google-cloud-datastore - 使用自身来计算其值的计算属性?
- python-3.7 - 在课堂上分配之前引用的局部变量?用python,不和谐
- kubernetes - 找不到 Kubectl 等待命令