Feature/entra id groups#195
Conversation
Scorecard Check
📊 meshstack-hub Module Scorecard
📋 Per-Module Category SummaryScore per category per building block.
Core Structure — ✅ all passingBasic module file structure and documentation — applies to 1 modules
Core Structure — Summary
Integration — ✅ all passingmeshstack_integration.tf conventions — applies to 1 modules
Integration — Summary
Azure Backplane — ✅ all passingAzure UAMI-based automation principal conventions — applies to 1 modules
Azure Backplane — Summary
Testing — some checks failingEnd-to-end test coverage — applies to 1 modules
Testing — Summary
|
|
This pull request is automatically being deployed by Amplify Hosting (learn more). |
|
📋 This PR has been linked to the [Feature Shipping Tracker: Self-service Entra SSO (CU-86c7t51na)] (meshcloud/janny#736). It addresses DoD item 6 (Reference Examples and Implementations Updated) — adding a hub reference example for Entra ID groups setup via the meshObject API. |
| @@ -0,0 +1,44 @@ | |||
| resource "azurerm_resource_group" "backplane" { | |||
There was a problem hiding this comment.
f:
| resource "azurerm_resource_group" "backplane" { | |
| resource "azurerm_resource_group" "this" { |
würde das nich doppelt benennen, durch das module hat die resource address schon das wort backplane drin
| location = var.location | ||
| } | ||
|
|
||
| resource "azurerm_user_assigned_identity" "backplane" { |
There was a problem hiding this comment.
| resource "azurerm_user_assigned_identity" "backplane" { | |
| resource "azurerm_user_assigned_identity" "this" { |
| resource_group_name = azurerm_resource_group.backplane.name | ||
| } | ||
|
|
||
| resource "azurerm_federated_identity_credential" "backplane" { |
There was a problem hiding this comment.
| resource "azurerm_federated_identity_credential" "backplane" { | |
| resource "azurerm_federated_identity_credential" "this" { |
| - **Resource Group** — hosts the UAMI in the configured Azure region. | ||
| - **User-Assigned Managed Identity (UAMI)** — the automation principal that runs the building block. No client secrets. |
There was a problem hiding this comment.
f: just swap to have acronum UAMI well defined:
| - **Resource Group** — hosts the UAMI in the configured Azure region. | |
| - **User-Assigned Managed Identity (UAMI)** — the automation principal that runs the building block. No client secrets. | |
| - **User-Assigned Managed Identity (UAMI)** — the automation principal that runs the building block. No client secrets. | |
| - **Resource Group** — hosts the UAMI in the configured Azure region. |
|
|
||
| ## Operational notes | ||
|
|
||
| - The UAMI principal ID maps to a service principal in Entra. The `User.Read.All`, `Group.ReadWrite.All`, and `AdministrativeUnit.ReadWrite.All` app role assignments require **admin consent** — ensure a Global Administrator or Privileged Role Administrator approves the assignments in the Entra portal after the first `apply`. |
There was a problem hiding this comment.
d: I remember having this admin consent thing automated in the past, as this can become really annoying as admins need to approve stuff. maybe worthwhile to discuss this f2f or at least mention it.
| required_providers { | ||
| azuread = { | ||
| source = "hashicorp/azuread" | ||
| version = "~> 3.8.0" |
| location = var.azure_location | ||
|
|
||
| workload_identity_federation = { | ||
| issuer = data.meshstack_integrations.integrations.workload_identity_federation.replicator.issuer |
There was a problem hiding this comment.
n: nice usage of the data source, thank you!
| required_providers { | ||
| meshstack = { | ||
| source = "meshcloud/meshstack" | ||
| version = "~> 0.21.0" |
| } | ||
| azurerm = { | ||
| source = "hashicorp/azurerm" | ||
| version = "~> 4.0" |
| } | ||
| azuread = { | ||
| source = "hashicorp/azuread" | ||
| version = "~> 3.8" |
No description provided.