Keycloak (self-hosted) vs. Microsoft Entra ID (managed) for Finance, Tech, Pharma, Aerospace & DACH Public Sector
Clients in regulated, non-hyperscale industries — mid-size financial institutions, tech companies, pharma, aerospace, and (German/DACH) public or state agencies — need a production-grade identity provider (IdP) as part of a solution package, but cannot or will not absorb the cost profile of a full enterprise IAM estate built for hundreds of millions of identities (the customer-IAM/e-commerce case is explicitly out of scope here).
Two credible options exist at opposite ends of the build-vs-buy spectrum:
The strategic question this document answers: which of these two representative options should anchor a low-budget IdP solution package for a given client, and why — evaluated on compliance posture and on cost/licensing transparency, since for Microsoft specifically the two are inseparable.
Excluded from scope: a large enterprise standing up its own private "Azure-like" stack; a very cost-sensitive legal entity trying to resell Keycloak-based cloud offerings commercially. Both are real but are separate business models, not IdP selection questions.
| Dimension | Entra ID (Buy) | Keycloak (Build) |
|---|---|---|
| Compliance model | Inherited: SOC2/ISO27001/EU Data Boundary come with the service | Constructed: FIPS 140-2 requires the Red Hat build on a FIPS-enabled RHEL host; upstream community build has no FIPS validation and no CVE SLA |
| Jurisdiction / sovereignty | US CLOUD Act exposure persists regardless of EU data residency; a local datacenter changes the address, not the legal control | Full data locality and control by design; no foreign-vendor dependency if self-hosted on EU/domestic infrastructure |
| Governance features (PIM, risk-based CA, access reviews) | Mature, largely "configure not build" — but gated behind the P2 tier specifically, not "Entra" generically | Not built in; must be assembled from custom authenticators/flows — real engineering cost |
| Licensing complexity | Five interacting SKUs (Free/P1/P2/Suite/Workload Identities/External ID) threaded through whichever M365/EMS bundle was negotiated; audits found 30–55% of P2 seats over-licensed and 15–25% of standalone P1/P2 seats duplicating suite entitlements already owned | Software itself is free; real cost is DevOps labor or a subscription (Red Hat) or managed-hosting fee, not a per-seat license tax |
| Price trajectory | P1 rising ~16% from 1 July 2026; tiers renegotiated at every EA cycle | Cost is a function of chosen support/hosting model, set by contract, not by Microsoft's global pricing calendar |
| Cost predictability for a non-specialist | Low — requires an entitlement map against the client's existing M365/EA position to know the real marginal cost | High — cost is (labor hours) or (flat subscription/hosting fee), independent of any other vendor relationship |
| Best organizational fit | Client already deep in M365/Azure estate; Entra ID is close to marginal cost there | Client needs sovereignty, cost independence from a Microsoft estate, or has none to begin with |
| DACH public-sector fit | Weak and worsening — current political climate treats Microsoft dependency as a documented liability (near-500M EUR/year federal spend, "Deutschland-Stack" and GWB sovereignty amendment pushing the other way) | Strong — open-source, self-hostable, aligns with "Public Money, Public Code" and the BSI C3A sovereignty framework |
| Finance / pharma / aerospace fit | Strong where the auditor wants pre-packaged attestations and the client already trusts Microsoft's compliance chain | Strong where the auditor wants demonstrable control over crypto, retention, and access logs, and the client can fund a Red Hat subscription + hardened hosts |