Как создать appRoles с провайдером Azurerm на Terraform - PullRequest
0 голосов
/ 07 сентября 2018

Я пытаюсь настроить свою лазурную инфраструктуру с помощью Terraform, которая до сих пор была довольно успешной. Наша группа разработчиков приложений должна определить роли, специфичные для приложения, в манифесте приложения AzureAD, который мы сейчас обрабатываем с помощью портала Azure, просто изменив манифест:

"appRoles": [
    {
        "allowedMemberTypes": [
        "Application"
        ],
        "displayName": "SurveyCreator",
        "id": "1b4f816e-5eaf-48b9-8613-7923830595ad",
        "isEnabled": true,
        "description": "Creators can create Surveys",
        "value": "SurveyCreator"
    }
]

Используя Terraform, я создал azurerm_azuread_application и теперь хочу соответствующим образом изменить манифест.

resource "azurerm_azuread_application" "test" {
  name                       = "APP"
  homepage                   = "http://APPHOMEPAGE"
  identifier_uris            = ["http://APPHOMEPAGE"]
  reply_urls                 = ["http://APPHOMEPAGE/REPLYURL"]
  available_to_other_tenants = false
  oauth2_allow_implicit_flow = false
}

Есть ли способ достичь этого, используя только Terraform?

1 Ответ

0 голосов
/ 10 сентября 2018

Чтобы назначить роли для приложения AD, вы можете обратиться к azurerm_role_assignment .

Пример использования (пользовательская роль и принципал обслуживания)

data "azurerm_subscription" "primary" {}

data "azurerm_client_config" "test" {}

resource "azurerm_role_definition" "test" {
  role_definition_id = "00000000-0000-0000-0000-000000000000"
  name               = "my-custom-role-definition"
  scope              = "${data.azurerm_subscription.primary.id}"

  permissions {
    actions     = ["Microsoft.Resources/subscriptions/resourceGroups/read"]
    not_actions = []
  }

  assignable_scopes = [
    "${data.azurerm_subscription.primary.id}",
  ]
}

resource "azurerm_role_assignment" "test" {
  name               = "00000000-0000-0000-0000-000000000000"
  scope              = "${data.azurerm_subscription.primary.id}"
  role_definition_id = "${azurerm_role_definition.test.id}"
  principal_id       = "${data.azurerm_client_config.test.service_principal_object_id}"
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...