case studies · identity and access

Identity and access, move by move.

Most identity work we get called into is overdue. An IdentityIQ release is about to lose support, two directories survived an acquisition, or an auditor asked who approved a grant and nobody could say. These are the moves we've run, with the connectors, roles and cut-over plans that carried them.

13 case studies7 migrations2 upgrades2 consolidations1 implementation1 modernization16 platforms
featured case study

AD FS federation to Entra ID authentication

Told without the client's name or anything that could identify them.

what happened

A healthcare group's identity team ran an AD FS farm and Web Application Proxy servers on Windows Server 2016, and every token-signing certificate renewal turned into a scramble. Users saw a branded AD FS page for some apps and the Microsoft sign-in page for others, and MFA was enforced in two places. We used the AD FS application activity report and Connect Health to find which relying party trusts still got traffic, backed up the federation settings, and rebuilt access policies as Conditional Access in report-only mode. After staged rollout pilots on password hash sync, domains converted one at a time and the remaining apps moved in waves. The farm was shut down once Connect Health showed no new requests.

what the client got
  • Sign-in runs on Entra ID cloud authenticationWe converted federated domains to managed authentication with password hash sync. That also turned on leaked-credential detection, something AD FS never had.
  • One set of MFA and access rulesAD FS access control policies were rebuilt as Conditional Access policies, legacy authentication is blocked, and federatedIdpMfaBehavior was set explicitly so MFA wasn't skipped during the switch.
  • Every relying party has an owner and a targetWe moved each trust to a gallery app, a custom SAML app or an app registration. Some we simply retired. Nothing went live in a wave until its claims matched the old tokens one for one.
Read the full case study
after / adfs-to-entra-id delivered
beforeAD FS farm and WAP servers afterMicrosoft Entra ID cloud authentication
01 · DIRECTORY 02 · AUTHENTICATION 03 · APPLICATIONS Active Directory: users · groups Active Directory users · groups Entra Connect: password hash sync Entra Connect password hash sync Microsoft Entra ID: managed domains Microsoft Entra ID managed domains Conditional Access: MFA · legacy auth blocked Conditional Access MFA · legacy authblocked ID Protection: leaked-credential detection ID Protection leaked-credentialdetection Microsoft 365: cloud authentication Microsoft 365 cloudauthentication SaaS apps: gallery SAML apps SaaS apps gallery SAMLapps Line-of-business apps: app registrations Line-of-business apps appregistrations Application Proxy: older protocol apps ApplicationProxy older protocolapps
every case study

All 13 in identity and access

Read any of them and you get the story, the before-and-after architecture, the plan phase by phase and the results.

migration Identity and access

AD FS federation to Entra ID authentication

Converting federated domains from AD FS to Entra ID cloud authentication, moving relying parties app by app and retiring the AD FS farm.

read the case study
upgrade Identity and access

Auth0 Rules and Hooks to Actions before end of life

Rewriting Auth0 Rules and Hooks as Actions before their 18 November 2026 end of life, with token claims compared before and after each change.

read the case study
consolidation Identity and access

Consolidating Okta and Entra ID after years of running both

Picking one primary identity provider after years of running Okta and Microsoft Entra ID side by side, then moving apps, MFA and provisioning to it.

read the case study
migration Identity and access

ForgeRock AM/IDM to PingOne Advanced Identity Cloud

Moving self-managed ForgeRock AM and IDM, now called PingAM and PingIDM, to PingOne Advanced Identity Cloud without breaking sign-in or provisioning.

read the case study
implementation Identity and access

Homegrown customer login to Auth0 or Okta Customer Identity

We swap homegrown customer login and its user table for Auth0, move users without forcing password resets, and keep the CRM records in sync.

read the case study
migration Identity and access

IBM ISIM, Oracle OIM or homegrown provisioning to SailPoint or Saviynt

Getting off IBM ISIM, Oracle OIM or homegrown provisioning scripts and onto SailPoint or Saviynt, with provisioning, certifications and audit history intact.

read the case study
consolidation Identity and access

Identity integration after a merger or carve-out

We give people access on day one after a merger or divestiture. Then directories, identity providers and governance get merged or separated, on a plan.

read the case study
upgrade Identity and access

IdentityIQ 8.x to 9.0 upgrade

Upgrading SailPoint IdentityIQ 8.x to 9.0, with the route through 8.5, the iiq-precheck scan, javax to jakarta fixes and a tested rollback.

read the case study
migration Identity and access

On-premises Active Directory to cloud-first Microsoft Entra ID

We shrink on-premises Active Directory one application at a time, moving groups, users and app authentication to Microsoft Entra ID as each app is ready.

read the case study
migration Identity and access

Oracle Access Manager and OIG to a modern identity provider and IGA

Replacing Oracle Access Manager and Oracle Identity Governance 12c with a cloud identity provider and SailPoint or Saviynt before support runs out.

read the case study
modernization Identity and access

RSA SecurID tokens to passwordless MFA with passkeys

Retiring RSA SecurID tokens, hardware and software, in favour of phishing-resistant passkeys while VPN, RADIUS and server logons keep working.

read the case study
migration Identity and access

SailPoint IdentityIQ to Identity Security Cloud

Leaving IdentityIQ for SailPoint Identity Security Cloud (formerly IdentityNow) with custom logic, certifications and audit history carried across.

read the case study
migration Identity and access

SAP Identity Management replacement with Entra ID or SailPoint

Replacing SAP Identity Management before its 2027 end of maintenance, with provisioning to SAP and non-SAP systems moved to Entra ID Governance or SailPoint.

read the case study

Not sure which one fits?

Send us what you run and what's due. An engineer reads it and tells you where we'd start.

start an assessment →
what goes wrong

Risks that keep coming up

One risk from each of these moves, and the case study that shows how we handled it when it hit.

  1. Claim rules with no direct mapping ↗

    Custom claim transforms, attribute stores and issuance rules don't always map to Entra claims mapping. Each one is rebuilt and compared against a real token before cut-over.

  2. Shared state between rules ↗

    A lot of rules hand data to the next rule through the user or context objects. That doesn't carry over. Auth0 says data changed on the event object isn't visible to other Actions, so chained logic gets redesigned.

  3. Provisioning from two sources ↗

    When both platforms push SCIM to the same app, accounts flip between attribute values or get deprovisioned by the wrong side. One source per app is set before any wave starts.

  4. Custom Java nodes with no SaaS equivalent ↗

    Nodes that call internal services or hold state need a design decision before the build starts. Leaving them to the end turns a migration into a rewrite under deadline.

  5. Duplicate accounts by email ↗

    It's common to find the same email in a homegrown store twice, with two different passwords. We settle account linking rules before the import, otherwise those users get two profiles.

  6. Orphan and mismatched accounts ↗

    Years of manual fixes leave accounts that don't correlate to any person. They're reviewed with owners before cut-over, or the first certification fills up with noise.

01Are we moving to Okta or Ping instead?

That works too. We do the same inventory, claim mapping and wave plan, and only the target changes. If Okta or Ping is already your primary identity provider, we plan the move there.

02Can Rules and Actions run side by side?

Yes, during the migration. We move one rule at a time, disabling it and binding its Action in the same deploy, so the tenant is never without the logic.

03What about AI agents already registered in both?

We list every agent with its owner and scopes, decide which platform governs agents from now on, and re-register them there. Agents nobody owns get disabled. If someone needs one back, they claim it.

04Should we upgrade to PingAM 8.x or move to PingOne Advanced Identity Cloud?

It depends on hosting rules, how much custom Java you own and who runs the platform. Strict data residency or heavy custom nodes favor staying self-managed on the 7.5 LTS line or 8.x. A small custom footprint and a team tired of patching DS and Kubernetes favor the SaaS tenant. We count the custom objects and price both paths.

05Auth0 or Okta Workforce Identity for customers?

They're different products. Auth0 is Okta's customer identity platform, with Universal Login, Organizations for business customers and MAU-based pricing. Workforce Identity is built for employees. Customer sign-in, we put on Auth0.

other areas

More case studies by area

The same approach, applied to other parts of the estate.

next step

Facing one of these moves?

Tell us what you're on now and where you need to be. We'll come back with how we'd run the move.

useful to bring
  • The platform and the version you're on
  • Where you need to get to, and by when
  • What's custom: rules, plugins, integrations
  • Any audit finding or deadline driving it