Stop Identifying Users by Display Name

By Sandra Saluti Feb 18, 2026
Minimalist illustration of a corporate employee ID badge showing a name, employee ID number, and barcode on a light background.

Why Modern Lifecycle Automation Requires a Real Attribute Strategy

Many identity environments still rely on display name or email address as primary identifiers in automation logic.
It is common.
It is convenient.
And it is a structural mistake.
If your lifecycle workflows depend on displayName, mail, or userPrincipalName as core targeting attributes, you are building automation on presentation data — not identity data.
That worked within limited boundaries.
It does not scale in modern governance-driven organizations.

This is not a minor technical nuance.
It is an architectural decision.


The Illusion of Stability

Display names feel unique.
They are not.
Two people can share the same name. Names change. HR corrects spelling. Local formats differ between countries. Consultants are reclassified. Formatting standards evolve.
Email addresses feel stable.
They are not.
Domains migrate. UPN formats change. Aliases are added. Companies merge. External users follow different naming patterns. Cloud migrations expose inconsistencies.
Display name and email are communication and presentation attributes.
They were never designed to function as lifecycle anchors.

When automation relies on them, governance becomes dependent on data that was never meant to carry structural meaning.


What Breaks When You Use the Wrong Attributes

In iIn isolation, using display name or email may appear harmless.
At scale, it becomes operational risk.
When lifecycle workflows depend on weak identifiers, organizations introduce:

  • Incorrect onboarding
  • Missed offboarding
  • Broken provisioning flows
  • Misaligned access assignments
  • Difficult-to-diagnose automation failures
  • Compliance exposure

Modern identity environments are ecosystems:

  • HR systems
  • Provisioning engines
  • SaaS integrations
  • Access governance platforms
  • Conditional Access policies
  • Cross-tenant collaboration

Automation does not fail loudly.
It fails quietly — and repeatedly — when its assumptions are wrong.


Why It Seemed to Work

It is common to hear that attributes like email address or userPrincipalName “have always worked.”
In reality, they were designed with specific scope and purpose.
In traditional Active Directory environments, userPrincipalName was intended to be unique within a forest. That uniqueness worked well inside a defined boundary.

But uniqueness is not the same as immutability.

userPrincipalName could be changed:

  • During domain migrations
  • When standardizing naming conventions
  • After mergers or rebranding
  • When correcting formatting or HR data

It was unique at a given moment within a given forest.
It was never designed to be a permanent, cross-system identity anchor over time.

Another pattern emerged alongside this: operational meaning was added directly into presentation attributes.
Administrative accounts were labeled by modifying userPrincipalName or displayName:

This made accounts visually distinguishable — but it blurred the boundary between identity and role.

A role is not an identity.

When administrative context is embedded into attributes meant for presentation or communication, automation begins to rely on string patterns rather than structural properties.
That approach does not scale.
It also introduces unnecessary security exposure.
Encoding privileged status into visible attributes makes high-value accounts easier to identify, both internally and externally.

Privileged access should be governed through role assignments, group membership, and policy controls — not naming conventions.

Identity should describe who the account belongs to.
Authorization should describe what the account can do.

Blending the two weakens both governance and security posture.

As organizations expanded beyond a single forest, consolidated domains, or synchronized identities to Entra ID, design limitations became visible:

  • Duplicate usernames had to be corrected
  • Some accounts required renaming
  • Domain changes created conflicts
  • Cleanup efforts revealed inconsistent data

These were not new weaknesses. They were the natural result of using attributes beyond the scope they were designed for.
The question is not whether these attributes worked within a forest.
The question is whether they are structurally suitable for enterprise-scale lifecycle automation.


The Real Issue Is Attribute Depth

This is not simply about avoiding displayName.
It is about designing attribute strategy intentionally.

Mature lifecycle automation is built on:

  • Immutable system identifiers (such as Object ID)
  • Authoritative HR identifiers
  • Structured attributes like employeeType or companyName
  • Purpose-built extension attributes for governance targeting

Instead of building logic like:

“If mail ends with company.com”

Build logic like:

“employeeType equals External
AND companyName equals Vendor Managed Services
AND accountEnabled equals true”

That logic is explicit.
Auditable.
Deterministic.

Executives may not care about attribute names — but they should care about predictability.
Predictability reduces operational risk.


Identity vs. Presentation

A useful model:

System identity
– Object ID
– Immutable identifiers

Business identity
– Employee ID
– HR system ID

Communication
– Email address

Presentation
– Display name

Lifecycle workflows should operate on system and business identity layers.
Not on communication and presentation layers.
When those layers are mixed, governance becomes fragile.


Closing Thoughts

Using display name or email address as the foundation for lifecycle automation is not just a technical shortcut.
It is a design decision.
And design decisions scale.
In smaller environments, weak identifiers can survive because humans compensate. Someone notices the mismatch. Someone corrects the access. Someone fixes the naming conflict.
Automation removes that safety net.
It executes exactly what it is told to execute.
If lifecycle workflows depend on attributes that were never meant to serve as structural identity anchors, you are not building governance. You are automating assumptions.
The difference between immature and mature identity governance is not how many workflows exist.
It is the quality and intentionality of the data those workflows depend on.
Before adding more automation, ask a simpler question:

Are we building on presentation data — or on structural identity?

Automation will faithfully amplify whichever foundation you choose.

Author

  • Sandra has over 10 years of experience in IT, specializing in Identity and Governance within Microsoft Entra. She is passionate about using PowerShell, automation, and optimizing processes with advanced functions.

    View all posts

Discover more from Agder in the cloud

Subscribe to get the latest posts sent to your email.

By Sandra Saluti

Sandra has over 10 years of experience in IT, specializing in Identity and Governance within Microsoft Entra. She is passionate about using PowerShell, automation, and optimizing processes with advanced functions.

Leave a Reply