We value your privacy

We use cookies to analyze site traffic and improve your experience. You can accept all cookies or reject non-essential ones. See our Privacy Policy for details.

GR IT SERVICES
  • Contact
Get a quote
  1. Microsoft security
  2. Workload identities
Entra workload identities for US businesses

Every control you built was designed to protect people. Attackers have moved on to the identities that are not people at all.

The documentation puts it plainly enough: recent attacks show adversaries increasingly going after non-human identities in preference to human ones. Applications, service principals and managed identities hold genuine access, carry multiple credentials each, and almost nobody in the business ever reviews them.

Book a workload identity reviewSee what we assess
Entra workload identities for US organizations
  • 3 typesApplications, service principals, managed identities
  • No MFABecause there is nobody to prompt
  • Multiple credsPer workload, unlike a human user
  • Rarely revokedBecause nobody knows when they should be
What we assess and control

Eight things that bring the non-human half of your directory under control.

This is the population where every control you already own stops applying. No MFA to enforce. No user to train. No offboarding process to trigger when something ends. What remains is inventory, credential hygiene, policy and review, and most estates run none of those four.

Knowing what you actually have

Within Entra, a workload identity means an application, a service principal or a managed identity. The application object is the global representation spanning all tenants, while the service principal is the local instance inside one specific tenant defining what that application is actually able to do there. Producing the inventory almost always surprises somebody.

Credential sprawl, which is structural rather than careless

The documentation captures the difference neatly. A human user typically holds one identity used across a broad range of resources. A software workload may be handling multiple credentials for different resources, every one of which has to be stored securely somewhere. That asymmetry is exactly why credential hygiene is harder for this population than for your staff.

Conditional Access for service principals you own

Conditional Access policies can be applied to the service principals your organization owns, which brings location and risk conditions to bear on non-human sign-ins. One scoping detail matters a great deal here: that covers service principals you own, and not every third-party application sitting in your tenant.

Real-time enforcement through continuous access evaluation

Continuous access evaluation for workload identities gives you real-time enforcement of Conditional Access location and risk policies. It closes precisely the gap it closes for people, being the window between a condition changing and the session genuinely stopping, and for a workload that window can otherwise stretch a very long way.

Risk detection, including leaked credentials

Risks including leaked credentials on workload identities are detected by Entra ID Protection, which then contains the threat and reduces the risk. Leaked credentials is the detection carrying the most weight in this population, because a service principal secret committed into a repository is among the most common routes by which one of these gets compromised.

Removing secrets entirely where you can

A managed identity is a special kind of service principal that removes the need for developers to manage any credentials at all, and it applies to workloads running on Azure. Workload identity federation covers everything else in the supported scenarios, which includes GitHub Actions, workloads on Kubernetes, and compute platforms sitting outside Azure entirely.

Reviewing the privileged ones

Access reviews for service principals cover the service principals and applications assigned to privileged directory roles. Nobody runs this review, and it is the one that turns up an application granted a directory role during a project three years ago which nothing has used since.

Agent identities, the newest population

Entra Agent ID supplies identity constructs built for AI agents, bringing enforced human sponsorship, lifecycle governance running from provisioning through to deactivation, and management at scale applying centralized policy across every agent instance of a given type. Design for it now rather than retrofitting it later.

Why this population is different

Nobody can reliably tell when a workload identity was created, or when it ought to be revoked.

That specific difficulty is named in the documentation, and it explains why non-human identities pile up in a way human accounts never do.

  • Behind every human account sits a creation event somebody requested and a revocation event somebody eventually triggers, because a person arrived and a person departed. A service principal comes into existence through a developer, a deployment or a consent prompt, and nothing whatsoever changes in the organization on the day the thing it served stops being used.
  • Credentials make it worse still. Your human users typically hold one identity spanning many resources. A software workload may be carrying several credentials for different resources, each requiring secure storage, each with an expiry date that somebody has to notice before it passes.
  • Which is why the assessment opens with inventory rather than policy. Applying Conditional Access to the service principals you own, or reviewing the ones holding privileged directory roles, is impossible until somebody knows which exist and what each of them was created to do.
  • The direction everything is heading is removing credentials rather than getting better at managing them. Managed identities take credential management away entirely for workloads running on Azure, and workload identity federation covers the supported scenarios outside it, GitHub Actions, Kubernetes and other compute platforms among them. Each workload moved across is one fewer secret anybody has to rotate.
Ask us to inventory your service principals
How we approach it

Four things that make this a program rather than a clean-up.

Deleting unused service principals feels productive on the day and changes nothing structural at all. What genuinely moves the position is ownership, eliminating credentials, and a review that keeps recurring.

We attribute ownership before we change anything

The documentation acknowledges how hard it is to track when a workload identity was created or when it should be revoked. Attribution is the work that fixes it, and attribution comes from conversations rather than from queries. An identity carrying a named owner can be reviewed, reduced and eventually retired. One without an owner cannot safely be touched at all.

We remove secrets rather than rotating them better

For workloads running on Azure, a managed identity removes the need to manage credentials altogether, while workload identity federation handles the supported scenarios beyond it including GitHub Actions, Kubernetes and compute outside Azure. Each workload moved across is one fewer secret capable of leaking or expiring at exactly the wrong moment.

We apply policy where it genuinely applies

Conditional Access for workload identities reaches the service principals your organization owns, with continuous access evaluation adding real-time enforcement of location and risk on top. Being precise about that scope heads off a common and dangerous assumption, which is that the policy covers every application present in the tenant.

We start the review with the privileged subset

Access reviews for service principals cover the applications assigned to privileged directory roles, and that subset is where the risk actually concentrates. Reviewing a hundred privileged workload identities thoroughly is a far better use of the available effort than skimming several thousand, and it is also where the uncomfortable findings turn out to be.

How an engagement runs

Four phases across roughly six to eight weeks.

Inventory takes up most of the early phases, for two reasons. The population is genuinely unknown in most tenants, and attributing each identity to an owner requires conversations rather than queries.
  1. 01
    Weeks 1 to 2

    Inventory and attribute ownership

    We list every application, service principal and managed identity, together with what each can reach, which credentials it holds and when those expire. Then comes the harder half: who owns it and what it exists to do. Any identity nobody can attribute is itself the finding rather than an inconvenience delaying the report.

    • Full workload identity inventory
    • Permissions and directory roles mapped per identity
    • Credential inventory with expiry dates
    • Unattributable identities listed separately
  2. 02
    Weeks 3 to 4

    Reduce permissions and remove secrets

    Identities holding more permission than they use get brought down to what they actually consume, and credentials get eliminated wherever the workload can move onto a managed identity or onto workload identity federation. Every secret removed is a secret that cannot leak, cannot expire at an awkward moment, and never needs rotating again.

    • Excess permissions identified and reduced
    • Managed identity migration candidates confirmed
    • Federation candidates identified for GitHub Actions and Kubernetes
    • Remaining secrets moved to proper storage with rotation
  3. 03
    Weeks 5 to 6

    Apply policy and detection

    Conditional Access goes onto the service principals your organization owns, continuous access evaluation is enabled so location and risk are enforced in real time, and ID Protection risk detection gets reviewed so that a leaked credential finding reaches somebody who will actually do something about it.

    • Conditional Access policies for owned service principals
    • Continuous access evaluation enabled where supported
    • Risk detection reviewed and routed to an owner
    • Custom security attributes applied for classification
  4. 04
    Weeks 7 to 8

    Establish review and lifecycle

    Access reviews get configured for the service principals and applications holding privileged directory roles, a creation process captures ownership at the moment each identity is created, and a decommission path exists so identities are removed when whatever they served gets retired.

    • Access reviews configured for privileged service principals
    • Creation process capturing owner and purpose
    • Decommission path defined and tested
    • An agreed approach to agent identity wherever AI workloads fall in scope
Where this matters

Six situations where non-human identity is the exposure.

What these share is a business that did the human identity work properly and has never once examined the other half of its directory.

A business that found a secret in source control

This triggers more of these engagements than anything else, and Entra ID Protection detects leaked credentials on workload identities specifically. Rotation is the immediate response. The genuinely useful response is asking how many other secrets exist, where each of them lives, and which of those workloads could stop using secrets altogether.

A regulated firm asked to evidence privileged access review

A SOC 2 auditor, a HIPAA assessor or an NYDFS Part 500 review typically covers your people and goes no further. Applications and service principals holding privileged directory roles carry comparable access and are almost never in scope. Access reviews for service principals close that gap, and they produce evidence in the same form as the human review it sits beside.

An organization with years of accumulated integrations

Every project leaves a service principal behind, and nothing ever removes them, because nothing about the organization changes on the day a project ends. Inventory and attribution reliably turn up a meaningful proportion that nobody can account for at all, which is simultaneously a risk finding and the opening of a licensing conversation.

A company running CI/CD pipelines into Azure

A pipeline authenticating with a long-lived secret is a well understood risk, and an entirely avoidable one. Workload identity federation supports scenarios including GitHub Actions and workloads running on Kubernetes, which takes the stored credential out of the pipeline altogether.

An operator whose outage was a credential expiry

A client secret expires, an integration stops working, and nobody saw it coming because nobody owned that identity. What you have there is an availability incident produced by an identity governance gap. The fix is an inventory with expiry tracking behind it, or better still, moving the workload off secrets entirely so the question never arises.

A business starting to deploy AI agents

Agent identities form a distinct category carrying governance requirements of their own, and Entra Agent ID supplies enforced human sponsorship, lifecycle governance running from provisioning to deactivation, and centralized policy applied across agent instances. Designing that in now is considerably less work than retrofitting it later.

Three positions

How US organizations govern non-human identity.

The right column is simply the norm. The middle column is where most businesses arrive after one incident has concentrated attention. The left column is a program rather than a project, and it should be scoped as one.
Complete inventory
Governed as a populationMaintained
Reactive after an incidentPoint in time
UngovernedNone
Ownership attributable
Governed as a populationPer identity
Reactive after an incidentFor some
UngovernedNo
Permissions right sized
Governed as a populationYes
Reactive after an incidentFor the ones examined
UngovernedNo
Secrets eliminated where possible
Governed as a populationManaged identity and federation
Reactive after an incidentPartly
UngovernedNo
Conditional Access applied
Governed as a populationTo owned service principals
Reactive after an incidentNo
UngovernedNo
Real-time enforcement
Governed as a populationContinuous access evaluation
Reactive after an incidentNo
UngovernedNo
Leaked credential detection acted on
Governed as a populationRouted to an owner
Reactive after an incidentSometimes
UngovernedUnseen
Privileged ones reviewed
Governed as a populationAccess reviews
Reactive after an incidentNo
UngovernedNo
Decommission path exists
Governed as a populationYes
Reactive after an incidentNo
UngovernedNo
AI agent identities planned for
Governed as a populationYes
Reactive after an incidentNo
UngovernedNo
Feature
Governed as a population
Reactive after an incident
Ungoverned
Complete inventory
MaintainedPoint in timeNone
Ownership attributable
Per identityFor someNo
Permissions right sized
YesFor the ones examinedNo
Secrets eliminated where possible
Managed identity and federationPartlyNo
Conditional Access applied
To owned service principalsNoNo
Real-time enforcement
Continuous access evaluationNoNo
Leaked credential detection acted on
Routed to an ownerSometimesUnseen
Privileged ones reviewed
Access reviewsNoNo
Decommission path exists
YesNoNo
AI agent identities planned for
YesNoNo
Human against non-human

Why the controls you already built do not transfer.

Every row here is a control that works perfectly well for people and either does not exist for workloads or does not apply to them. That gap is exactly why this population needs a program of its own rather than an extension of the existing one.

Control

Multifactor authentication

Human identities
Standard
Workload identities
Not applicable, nobody to prompt

Control

Number of credentials

Human identities
Typically one identity
Workload identities
Potentially many, per resource

Control

Creation trigger

Human identities
A person joins
Workload identities
A developer, deployment or consent

Control

Revocation trigger

Human identities
A person leaves
Workload identities
Frequently nothing at all

Control

Conditional Access

Human identities
Full policy set
Workload identities
Service principals your organization owns

Control

Continuous access evaluation

Human identities
Supported
Workload identities
Supported for workload identities

Control

Risk detection

Human identities
ID Protection
Workload identities
ID Protection, including leaked credentials

Control

Periodic review

Human identities
Access reviews
Workload identities
Access reviews for service principals in privileged roles

Control

Credential elimination

Human identities
Passwordless methods
Workload identities
Managed identities and workload identity federation

Control

Security awareness training

Human identities
Applicable
Workload identities
Not applicable
ControlHuman identitiesWorkload identities
Multifactor authenticationStandardNot applicable, nobody to prompt
Number of credentialsTypically one identityPotentially many, per resource
Creation triggerA person joinsA developer, deployment or consent
Revocation triggerA person leavesFrequently nothing at all
Conditional AccessFull policy setService principals your organization owns
Continuous access evaluationSupportedSupported for workload identities
Risk detectionID ProtectionID Protection, including leaked credentials
Periodic reviewAccess reviewsAccess reviews for service principals in privileged roles
Credential eliminationPasswordless methodsManaged identities and workload identity federation
Security awareness trainingApplicableNot applicable
How an engagement runs

Five steps, and the first invariably takes longer than anybody plans for.

Producing the inventory is quick. Attributing every identity to an owner and a purpose is what consumes the time, and it is also what makes everything that comes afterwards possible.
  1. 1

    Inventory applications, service principals and managed identities

    We establish what exists, what each one can reach, which of them hold privileged directory roles, and which are yours as opposed to belonging to a third party. That final distinction carries real weight, because Conditional Access for workload identities applies to the service principals your organization owns rather than to every application in the tenant.

  2. 2

    Attribute ownership and purpose

    Every identity gets a named owner and a stated purpose. This is the step converting a list into something anybody can act on. Identities nobody can attribute are flagged rather than quietly deleted, because deleting an unattributed identity is precisely how an outage happens.

  3. 3

    Reduce permissions and eliminate credentials

    Permissions come down to what is genuinely being used, and workloads move onto managed identities where they run on Azure or onto workload identity federation where they run anywhere else. Whatever secrets remain afterwards go into proper storage with their expiry tracked and a named owner responsible for rotating them.

  4. 4

    Apply policy and route the detections

    Conditional Access goes onto the service principals your organization owns, continuous access evaluation enforces location and risk in real time, and ID Protection workload identity risk detections get routed to somebody who will act on them, with leaked credential findings treated as the priority.

  5. 5

    Establish review and lifecycle

    Access reviews cover the service principals and applications holding privileged directory roles, a creation process captures ownership at the moment of creation rather than years afterwards, and a decommission path ensures that retiring a system retires its identity alongside it.

Straight answers

What US organizations ask about workload identities.

It is an identity assigned to a piece of software rather than a person, whether that software is an application, a service, a script or a container, allowing it to authenticate and reach other services and resources. Inside Entra specifically, that means applications, service principals and managed identities.

The application object is the global representation spanning every tenant, describing how tokens get issued, which resources the application needs and what actions it is able to take. The service principal is the local instance inside one particular tenant, defining what that application can genuinely do there, who is able to access it and what it can reach.

Because the attackers moved. Recent cyber attacks are documented as showing adversaries increasingly targeting non-human identities in preference to human ones. Businesses that invested heavily in phishing-resistant authentication succeeded in making human identity hard, while the other half of their directory stayed exactly as it was.

The reason is named directly: tracking when a workload identity is created, or when it ought to be revoked, is hard. A human account has a hire date and a departure date bracketing it. A service principal gets created by a developer or by a deployment, and nothing organizational happens at all on the day the thing it served is retired.

You can, using Conditional Access for workload identities, applied to the service principals your organization owns. That scope matters a great deal. It reaches your own service principals rather than every third-party application sitting in your tenant, which is why the inventory has to distinguish between the two in the first place.

It does. Continuous access evaluation for workload identities gives real-time enforcement of Conditional Access location and risk policies. In some respects it matters more here than it does for people, because a workload session never gets interrupted by somebody closing a laptop and going home.

A managed identity is a special type of service principal that eliminates the need for developers to manage credentials, for workloads that run on Azure. Where a workload qualifies, yes. It removes an entire class of problem rather than making it easier to manage.

Workload identity federation covers supported scenarios including GitHub Actions, workloads running on Kubernetes, and workloads running in compute platforms outside Azure. It gives access to Entra protected resources without needing to manage secrets, which is the same benefit reached a different way.

Entra ID Protection detects risks including leaked credentials for workload identities. The detection existing is only half of it, though. The other half is somebody receiving the finding and having the authority to rotate or disable the identity, which is an ownership question.

For the important subset, yes. Access reviews cover service principals and applications assigned to privileged directory roles in Entra ID. Starting there is the right call, because reviewing a hundred privileged workload identities properly beats skimming several thousand of every kind.

Flag them rather than deleting them. An unattributed service principal might be running something genuinely important that nobody has had cause to think about for two years. The safe route is disabling it with a documented rollback and a waiting period behind that, instead of a deletion that turns into an incident.

As a distinct category of their own. Entra Agent ID gives agent identities enforced human sponsorship, lifecycle governance covering provisioning through to deactivation, and management at scale that applies centralized security policy across every agent instance of a given type. Design for that before agents start proliferating rather than afterwards.

Start with the inventory, then narrow to the privileged subset. Count the service principals, identify which of them hold privileged directory roles, and try naming an owner for each one in that group. Businesses doing only that much have usually turned up something worth acting on before they reach the end of the list.

Both count as machine identities. A workload identity represents software, meaning an application, a service, a script or a container. A device identity represents hardware, meaning a desktop, a phone or an IoT sensor. Each needs different controls, and confusing the two is precisely why workload identity so often falls into the gap between two teams.

There is, using custom security attributes on an application. That capability is what makes prioritization possible at all inside a tenant holding hundreds of service principals, because it separates the ones supporting a critical system from the ones supporting a reporting job somebody wrote three years ago and forgot.

Because the shape of the problem is genuinely different. A human user typically holds one identity used across a broad range of resources. A software workload may be handling multiple credentials to reach different resources, every one needing secure storage, and tracking when any of them was created or when it should be revoked is hard.

Scoping happens per engagement, driven by tenant size and the number of integrations, since the attribution effort scales with those rather than with how many users you have. A first step that costs nothing: count the service principals in your tenant, then count how many hold a privileged directory role. Both numbers usually come back higher than anybody expected.
Self assessment

Fifteen questions covering the non-human half of your tenant.

Being unable to answer the first three is itself the engagement. Very few businesses can, and it says nothing about the quality of the team.

Inventory

  • How many service principals exist?
    A number, not an impression.
  • How many hold a privileged directory role?
    This is the critical subset.
  • Can we name an owner for each?
    Usually not.
  • How many managed identities do we run?
    And what do they access.
  • Which are third party rather than ours?
    Policy scoping depends on it.

Credentials

  • How many client secrets are in use?
    And where are they stored.
  • When does the next one expire?
    Expiry causes outages.
  • Has any secret ever been in source control?
    Check, do not assume.
  • Could this workload use a managed identity?
    It eliminates credential management.
  • Could this pipeline use federation?
    GitHub Actions is supported.

Control

  • Any Conditional Access on service principals?
    For ones we own.
  • Is continuous access evaluation enabled?
    For real-time enforcement.
  • Who sees workload identity risk detections?
    Leaked credentials especially.
  • Do we review privileged service principals?
    Access reviews support this.
  • Do we have AI agents in the tenant?
    Agent ID governs them.
Related reading

The pages around this one.

Privileged Identity Management

The equivalent discipline for human privileged access.

Learn more

Entra ID Protection

Where leaked credential detections for workloads surface.

Learn more

Entra access reviews

The recurring review that covers privileged service principals as well as people.

Learn more
Next step

Count the service principals in your tenant. Then count how many carry a privileged directory role.

After that, try naming an owner for every entry in the second group. Most businesses work part way down that list and come to a halt, and that halt is precisely the finding worth acting on.

Book a workload identity reviewSee Microsoft Entra services

Related Services

Explore more solutions that work great with this service

Microsoft Entra Privileged Identity Management

Privileged Identity Management deployment for US organizations:

Learn more

Microsoft Entra ID Protection

Entra ID Protection deployment for US organizations: establishing

Learn more

Microsoft Entra Access Reviews

Entra access review programs for US organizations: entitlement

Learn more

Microsoft Entra Conditional Access Design

Conditional Access design and review for US organizations:

Learn more

Microsoft Entra ID Governance

Entra ID Governance implementation for US organizations: automating

Learn more

Microsoft Entra

Identity and access management solutions

Learn more
GR IT SERVICES

IT services for US businesses,
delivering enterprise-grade solutions
remotely, coast to coast.

Microsoft CSP PartnerApple Jamf PartnerCISGuard

Microsoft 365

  • Microsoft 365 Administration
  • M365 Reporting & Auditing
  • Microsoft 365 Licensing
  • Microsoft Copilot
  • Microsoft 365 Apps
  • Windows 365 Cloud PC
  • Microsoft SharePoint
  • Outlook & Exchange

Security

  • Microsoft Defender
  • Microsoft Purview
  • Microsoft Intune
  • Microsoft Entra
  • Compliance Manager
  • Cybersecurity Audits
  • Copilot for Security
  • Microsoft Sentinel
  • Microsoft Priva

Infrastructure

  • Google Workspace
  • Cloud Migration Services
  • Data Analytics & BI
  • Active Directory
  • Server Management
  • Apple Business
  • Apple Jamf Pro
  • IP Telephone
  • Data Backup
  • Website Development

IT Services

  • Managed IT Services
  • IT Support USA
  • IT AMC USA
  • New Office IT Setup
  • IT Relocation
  • Remote IT Support
  • On-Call IT Support
  • Startup IT Business Kit
  • Disaster Recovery & BC

Company

  • About Us
  • Careers
  • Contact
  • Blog

Contact

  • hello@gritservices.io
  • gritservices.io

© 2026 GR IT Services. All rights reserved.

Privacy PolicyTerms of UseCookie PolicyCCPA/CPRA