Join our Newsletter — 33% off our NHI Course

Why do onboarding workflows create risk when they depend on custom code?

Custom code makes onboarding harder to change when business rules shift, and it often pushes key identity decisions outside the IAM platform. That weakens governance because the organization loses a single place to enforce validation, proofing, MFA enrollment, and account creation timing across systems.

Why custom onboarding code weakens change control

Onboarding is not just a workflow, it is a control point. When teams build it in custom code, the logic becomes harder to update when business rules change, and the organization loses the IAM platform’s built-in guardrails for consistency, review, and auditability. That makes the onboarding path less adaptable and more dependent on application-specific fixes.

Custom logic also tends to fragment responsibility. Instead of one governed place to manage identity decisions, the workflow can spread checks across scripts, service endpoints, and local application rules, which makes it easier for validation gaps to survive unnoticed.

That matters because onboarding is where access is first created, shaped, or denied. If the code is brittle or distributed, the organization may approve the right person but still create the wrong account state, timing, or policy outcome.

Where identity decisions drift outside the platform

The main governance problem is not that custom code exists, but that it often becomes the place where proofing, MFA enrollment, account creation, and policy exceptions are decided. Once those decisions move outside the IAM platform, control becomes harder to standardize and harder to evidence.

This is especially risky when the code contains business-rule shortcuts, one-off exceptions, or hidden dependencies on upstream systems. A workflow may still “work,” but it no longer enforces the same validation path every time, which undermines consistency across users, roles, and connected applications. The IAM and IGA Basics guide is useful here because it frames provisioning and access governance as separate but linked controls.

When onboarding logic is embedded too deeply in custom integrations, organizations also lose the clean joiner/mover/leaver model that makes identity lifecycle controls manageable. That is why a structured Joiner-Mover-Leaver (JML) Guide matters for practitioners trying to keep lifecycle decisions auditable and repeatable.

Why this increases operational and security exposure

Custom onboarding code creates exposure when it outlives the rules it was written for. Business units change, assurance expectations change, and authentication requirements evolve, but the code may still be enforcing an older pattern. That creates drift between policy and execution, which is where onboarding defects usually become security defects.

The exposure grows further when onboarding is tied to secrets, tokens, keys, or other identity material that must be created, stored, or handed off during setup. If the workflow does not treat those handoffs as governed lifecycle events, the result can be orphaned credentials, inconsistent MFA enrollment, or access being activated before validation is complete. The lifecycle failure mode is similar to what NHIMG has documented in NHI Lifecycle Management Guide: if provisioning and offboarding are not controlled centrally, visibility and revocation both suffer.

A second exposure is resilience. Custom code often depends on specific API behavior, internal data fields, or fragile timing assumptions. When any of those change, onboarding may fail open, fail closed, or silently create partial accounts, all of which can become governance or access problems rather than mere implementation bugs.

Standards & Framework Alignment

This section maps relevant standards and security frameworks to the operational risks and controls described in this guidance.

NIST SP 800-53 Rev 5 sets the technical controls, while ISO/IEC 27001:2022 defines the regulatory obligations.

Framework Control / Reference Relevance
NIST SP 800-53 Rev 5 IA-2 — Identification and Authentication (Organizational Users) Onboarding workflows decide how users are identified and authenticated.
IA-5 — Authenticator Management Custom onboarding often creates and hands off passwords, tokens, or other authenticators.
AC-2 — Account Management Onboarding creates accounts and access states that need consistent governance.
Recommendation — Centralize onboarding authentication decisions under IA-2 controls. Manage onboarding credential lifecycle under IA-5 instead of custom code. Route account creation and changes through AC-2 governed workflows.
ISO/IEC 27001:2022 A.5.16 — Identity management Onboarding is an identity lifecycle process that needs consistent management.
A.5.18 — Access rights Onboarding grants access that should remain controlled and reviewable.
Recommendation — Standardize onboarding identity handling under A.5.16. Apply A.5.18 to ensure onboarding grants are approved and tracked.

Practitioner Guidance

What to verify: Confirm that onboarding decisions such as proofing, MFA enrollment, role assignment, and account activation are enforced in one governed control plane, not reimplemented differently across applications.

What to prioritise: Treat any custom onboarding step that can create access as a control boundary. Review it first for policy drift, exception handling, and whether it can be replaced with standard IAM workflow logic.

Common mistake: Teams often optimize for delivery speed and leave identity decisions in code because the workflow “only” runs at onboarding. In practice, that is exactly when weak validation, bad sequencing, or silent exceptions do the most damage.

Practitioner takeaway: The safest onboarding design is the one that minimizes bespoke logic at the point where identity is first trusted, because that is where inconsistent decisions become persistent access risk.