RBAC en PIM voor spokes¶
Een spoke krijgt vier Entra ID-groepen (Owners, Contributors, Readers, Support) en een service principal. Deze pagina legt uit hoe die groepen hun Azure-rechten krijgen, welke rechten permanent zijn en welke worden geactiveerd via Privileged Identity Management (PIM), en hoe je dat wijzigt. Het perspectief van de afnemer staat in Toegang, groepen en PIM.
Twee lagen toegang¶
| Laag | Scope | Bepaald door |
|---|---|---|
| Subscription-rollen | De hele subscription | Vastgelegd door de spoke canvas: Owners = Owner, Contributors = Contributor, Readers = Reader. De spoke service principal is permanent lid van Owners. |
| Rolmap | De hele subscription, voor specifieke rollen | Een ingebouwde rolmap die je kunt overschrijven. Gebruikt voor rollen zoals de data-plane-rollen van Key Vault en Storage. |
Het lidmaatschap van het team in elke groep komt uit ProductTeamGroupNames en het PIM-profiel in PIMGroupConfig
(Spoke JSON-naslag).
PIM-profielen¶
Een profiel bepaalt hoe de groep van het team lid wordt van een spoke-groep. Profielen worden gedefinieerd in pim_configurations
(Spoke common settings) en met hun naam aangeroepen.
| Profiel | Lidmaatschap van de teamgroep | Goedkeuring |
|---|---|---|
nopim |
Permanent (actieve toewijzing). Geen aanvraag nodig. | Geen |
self-approve |
Eligible. De gebruiker activeert het in PIM. | Geen |
approval |
Eligible. De gebruiker activeert het in PIM. | Vereist |
PIMGroupConfig stelt één profiel in voor elk van Readers, Contributors en Owners. De Support-groep is niet
configureerbaar: de deploymentlogica stelt die in.
Een typisch patroon, zoals gebruikt in één implementatie (een voorbeeld, geen regel):
| Groep | Dev en test | Acceptatie en productie |
|---|---|---|
| Owners | Eligible, met goedkeuring | Eligible, met goedkeuring |
| Contributors | Eligible, automatische goedkeuring | Eligible, met goedkeuring |
| Readers | Permanent | Permanent |
Support-groep¶
De Support-groep heeft geen eigen rechten. Tijdens supporturen (buiten kantooruren) wordt ze lid gemaakt van de Owners-groep. Mensen in de Support-groep kunnen dan via PIM Owner activeren, maar alleen buiten kantooruren.
De rolmap¶
De rolmap kent Azure-rollen toe via een permanente of PIM-eligible toewijzing op subscriptionscope. Eén toewijzing dekt elke bijpassende resource in de subscription, ongeacht of de resource al bestaat. Ze is niet afhankelijk van de subscription-rollen hierboven. Elke ingebouwde Azure-rol kan worden gebruikt, niet alleen data-plane-rollen.
Standaard:
| Groep | Data plane van Key Vault en Storage Account |
|---|---|
| Readers, Contributors, Owners | Permanente leestoegang (Key Vault Reader, Storage Blob Data Reader) |
| Contributors | PIM-eligible lees-/schrijfrollen (Key Vault Secrets-, Certificate- en Crypto User-rollen, en Storage Blob Data Contributor), self-approve-profiel |
| Owners | PIM-eligible rollen met volledige controle (Key Vault Secrets-, Certificates- en Crypto Officer-rollen, en Storage Blob Data Owner), approval-profiel |
De spoke service principal krijgt ook Key Vault Administrator op de Key Vault en blob-ownerrechten op het storage account
wanneer die zijn uitgerold.
Subscriptionscope, niet per resource
De toewijzing geldt op de subscription. Een Contributor die Storage Blob Data Contributor activeert, kan blobs lezen en schrijven
in elk storage account in die subscription, ook in accounts die het team later heeft aangemaakt. Houd hier rekening mee
bij het bepalen welk profiel een rol krijgt.
De rolmap overschrijven¶
Je kunt de map voor alle spokes wijzigen, of voor één spoke. Een instelling in de spoke gaat voor op de common setting.
| Waar | Instelling | Geldt voor |
|---|---|---|
| Common settings | override_defaults.pim_assignments |
Alle spokes |
| Spoke-bestand | adInfo.PIMAssignments |
Eén spoke |
Beide zijn maps met de exacte Azure-rolnaam als key, bijvoorbeeld Storage Blob Data Contributor. Elk item heeft twee velden:
| Veld | Betekenis |
|---|---|
levels |
De niveaus van spoke-groepen die de rol krijgen, bijvoorbeeld ["Owner"]. |
pim_profile |
De naam van een profiel uit pim_configurations dat bepaalt hoe de rol wordt toegekend. |
Regels:
- Stel één veld in om alleen dat veld te wijzigen. Een veld dat je weglaat, behoudt zijn ingebouwde waarde.
levels: []verwijdert de rol volledig (voor die spoke, of voor alle spokes als het in de common settings staat).- Een rol die niet in de ingebouwde map staat, moet beide velden instellen.
- Om een rol toe te voegen, bijvoorbeeld een SQL- of Cosmos DB-data-rol, hoeven de Terraform-modules niet te worden aangepast.
Voorbeeld in een spoke-bestand: laat Storage Blob Data Owner alleen voor deze spoke goedkeuring vereisen.
"adInfo": {
"PIMAssignments": {
"Storage Blob Data Owner": { "pim_profile": "approval" }
}
}
Voorbeeld dat een rol toevoegt die niet ingebouwd is. Beide velden zijn verplicht:
"PIMAssignments": {
"<exact role name>": { "levels": ["Contributor"], "pim_profile": "self-approve" }
}
Toegang veilig wijzigen¶
| Ik wil | Doe dit |
|---|---|
| Een ander team toegang geven | Voeg de groep toe aan ProductTeamGroupNames (Spoke wijzigen) |
| De toegang van een groep goedkeuring laten vereisen | Wijzig het profiel in PIMGroupConfig |
| Permanente data-plane-toegang voor één spoke verwijderen | "<role>": { "levels": [] } in adInfo.PIMAssignments |
| Een default voor elke spoke wijzigen | override_defaults.pim_assignments in de common settings. Behandel het als een platformwijziging met review. |
Lees na elke wijziging het plan. Het verwijderen van een permanente toewijzing neemt toegang weg voor mensen die er nu mee werken.