Skip to content

azuread/service_principal

Overview

This page documents the Terraform module implementation, key configuration surfaces, and how it integrates with CAF.

Dependency diagram (Mermaid)

graph TD azuread_service_principal.app["azuread_service_principal.app"] null_resource.grant_admin_consent["null_resource.grant_admin_consent"] time_sleep.propagate_to_azuread["time_sleep.propagate_to_azuread"] null_resource.grant_admin_consent --> azuread_service_principal.app null_resource.grant_admin_consent --> time_sleep.propagate_to_azuread time_sleep.propagate_to_azuread --> azuread_service_principal.app

Module Reference

Category: azuread
Path: modules/azuread/service_principal
Azure Resources: azuread_service_principal, null_resource, time_sleep

Inputs

Name Description Type Required Default Validation
"global_settings" any no {} -
"settings" any no {} -
"client_config" "Client configuration object (see module README.md)." any yes - -
"client_id" "Client ID of the service principal to create." any yes - -
"azuread_api_permissions" any no {} -
"user_type" any no - -

Outputs

Name Description Sensitive Value
"tenant_id" - var.client_config.tenant_id
"id" - azuread_service_principal.app.id
"client_id" - azuread_service_principal.app.client_id
"object_id" - azuread_service_principal.app.object_id
"display_name" - azuread_service_principal.app.object_id
"rbac_id" "This attribute is used to set the role assignment" - azuread_service_principal.app.object_id

Sources

  • modules/azuread/service_principal/grant_api_permissions.tf
  • modules/azuread/service_principal/module.tf
  • modules/azuread/service_principal/outputs.tf
  • modules/azuread/service_principal/variables.tf