CODE OF CONSOLE

Wat verandert er als je tenant in Git leeft.

TerraProvider beheert Intune en Entra ID als Terraform-code in je repository, zodat elke wijziging een plan is dat je team kan beoordelen voordat het de tenant bereikt. Hier zie je hoe dat zich verhoudt tot klikken in de Microsoft Intune- en Microsoft Entra-beheercentra, en wanneer een beheerconsole beter bij je team past.

  • terraprovider/microsoft365wp
  • Terraform and OpenTofu
  • Business Source License 1.1
terraform plan
  # microsoft365wp_conditional_access_policy.require_mfa_admins will be updated in-place  ~ resource "microsoft365wp_conditional_access_policy" "require_mfa_admins" {      ~ conditions = {          ~ users = {              ~ exclude_users = [                  - "7c1e4a90-3f2b-4d8e-9a61-0b5c2e8f1d47",                ]                # (8 unchanged attributes hidden)            }            # (6 unchanged attributes hidden)        }        id           = "2b7f9c3e-8d41-4f6a-b0e2-5c9a1d7e3f80"        # (3 unchanged attributes hidden)    }Plan: 0 to add, 1 to change, 0 to destroy.

Voorbeelddata.

NAAST ELKAAR

Dezelfde wijziging in de beheercentra en in code

Een Conditional Access-beleid, een complianceregel, een tweede tenant: wat gebeurt er met elk onderdeel als je klikt, en wat als het een bestand in je repository is.

Dezelfde wijziging in de beheercentra en in code
SituatieIn de beheercentraMet TerraProvider
Voordat een wijziging live gaatEen Conditional Access-wijziging is live zodra iemand op Opslaan drukt.De wijziging is een pull request. Het plan laat zien welk attribuut van welke waarde naar welke waarde gaat, voordat er iets in de tenant verandert.
Wie akkoord gaf, en waaromHet auditlog vermeldt het account dat het beleid heeft opgeslagen. Het ticket en de reden staan ergens anders, als ze al ergens staan.Commitbericht, pull request en goedkeuring staan naast de wijziging. Terugdraaien is een revert.
Test en productieElke tenant wordt apart doorgeklikt, en de twee lopen in de loop van de maanden uiteen.Één module, toegepast op beide tenants. Waar ze van elkaar afwijken, geeft een variabele dat aan.
Een wijziging buiten het proces omDe documentatie blijft de tenant beschrijven zoals die ervoor was.Het volgende plan somt het op, inclusief instellingen die je bestanden nooit vermelden. Je neemt ze over of zet ze terug.
Een nieuwe tenantElk beleid wordt opnieuw doorgeklikt, met de oude tenant open in het volgende tabblad.Importeer de tenant die je hebt (de export van de quickstart is een startpunt) en pas daarna dezelfde code toe op de nieuwe.
Wijzigingen vanuit een pipelineIemand logt in via een browser en voert de wijziging handmatig door.GitHub Actions en Azure DevOps loggen in via OpenID Connect, zonder een opgeslagen secret.
Waar de configuratie staatIn de tenant zelf.In je eigen Git-repository, als HCL die zowel Terraform als OpenTofu uitvoeren. De broncode van de provider is openbaar onder de Business Source License 1.1.
WAT PAST

Code past bij teams die wijzigingen al beoordelen in pull requests

Welke aanpak past, hangt minder af van de tenant dan van het team: wie een wijziging doorvoert, en waar die wordt beoordeeld.

  • TerraProvider past wanneer

    • Je team schrijft al Terraform voor Azure en beoordeelt het in pull requests.
    • Een Conditional Access-wijziging een tweede paar ogen nodig heeft voordat die live gaat.
    • Test en productie gelijk moeten blijven, en waar ze van elkaar afwijken leesbaar moet zijn.
    • Wijzigingen moeten draaien vanuit GitHub Actions of Azure DevOps, niet vanuit iemands browser.
  • Een beheerconsole past beter wanneer

    • Niemand in het team HCL schrijft, en niemand dat van plan is.
    • Wijzigingen worden doorgevoerd door mensen in een browser, en het team wil dat zo houden.
TENANTTEAMS EN MSP'S

Één provider voor je eigen tenant en voor de tenants van je klanten

Een team dat zijn eigen tenant beheert, plaatst test en productie onder één module. Een managed service provider geeft elke klanttenant zijn eigen provider-blok en roept voor alle tenants dezelfde basismodule aan; de uitzonderingen zijn variabelen die een reviewer kan lezen.
  • Je eigen tenant: de Community Edition is gratis voor organisaties met maximaal 99 gebruikers, en Enterprise voegt ondersteuning toe vanaf 100 gebruikers.
  • Klanttenants: de Community Edition dekt die niet, dus die hebben een eigen plan nodig. Neem contact op met sales
main.tf
provider "microsoft365wp" {  alias     = "contoso"  tenant_id = "8a1f3c2e-5b7d-4e90-a6c4-2d9e7f1b0c35"}provider "microsoft365wp" {  alias     = "fabrikam"  tenant_id = "e4c27b91-0d3a-4f86-b5e2-7a1c9d0f6b48"}module "baseline_contoso" {  source    = "./baseline"  providers = { microsoft365wp = microsoft365wp.contoso }}module "baseline_fabrikam" {  source     = "./baseline"  providers  = { microsoft365wp = microsoft365wp.fabrikam }  allow_byod = true}

Voorbeelddata.

Bekijk je eigen tenant als een plan.

Vraag een proefversie van Enterprise aan, of begin met de Community Edition, gratis voor organisaties met maximaal 99 gebruikers.