Microsoft Entra ID
Microsoft Entra ID (formerly Azure Active Directory) is Microsoft's enterprise identity platform. Mandaitor integrates with Entra ID for organizations in the Microsoft ecosystem, supporting multi-tenant applications, On-Behalf-Of delegation, and Workload Identity Federation.
When to Use Entra ID
Entra ID is the right choice when your customers use Microsoft 365, Azure, or Teams. Typical scenarios:
- Enterprise customers with Entra ID as their corporate directory
- Organizations using Microsoft 365 where employees delegate to AI agents
- Multi-tenant SaaS applications serving Microsoft-ecosystem customers
- AI agents running on Azure that need corporate identity context
Configuration
1. Register Mandaitor in Entra ID
Register as a multi-tenant application in the Azure portal:
az ad app create \
--display-name "Mandaitor Delegation Registry" \
--sign-in-audience "AzureADMultipleOrgs" \
--web-redirect-uris "https://app.mandaitor.eu/auth/callback"
2. Configure Mandaitor
curl -X PUT https://api.mandaitor.io/v1/tenants/{tenantId}/identity-providers \
-H "Authorization: Bearer $TOKEN" \
-d '{
"enabled_providers": ["API_KEY", "COGNITO", "ENTRA_ID"],
"entra": {
"tenant_id": "your-azure-ad-tenant-uuid",
"client_id": "your-application-client-uuid"
}
}'
Token Validation
- Provider detection: Authorizer detects
login.microsoftonline.comissuer - JWKS verification: Signature verified against tenant-specific JWKS endpoint
- Tenant validation:
tidclaim verified against configured tenant ID - Claims extraction:
oid(Object ID),tid(Tenant ID),roles,scp,amr - Identity resolution: Mapped to
oidc:entra:<oid>@<tid>canonical subject ID
The oid@tid format ensures uniqueness across Entra ID tenants — a user in Tenant A can never be confused with a user in Tenant B.
Agents acting for a user
Mandaitor does not exchange Entra ID tokens for delegation tokens. A person signs in with Entra ID and issues mandates. An AI agent authenticates with its own registered key and acts only on the mandates that name it (Agent Identity Registry). Acting with the user's own token, on their behalf, is not available.
Workload Identity Federation
For AI agents running outside Azure (AWS, GCP, on-premises), Workload Identity Federation allows authentication without managing secrets:
- Configure a federated credential in Entra ID
- The agent presents its native identity token
- Entra ID exchanges it for an Azure token
- Mandaitor verifies the Azure token and resolves the agent's identity
App Roles
Entra ID App Roles map to delegation authority:
| App Role | Mandaitor Mapping |
|---|---|
Delegation.Create | Can create mandates |
Delegation.Approve | Can approve pending mandates |
Agent.Manage | Can register and manage AI agents |
Delegation.Admin | Full delegation administration |
Roles are extracted from the roles claim in the Entra ID token.
Multi-Tenant Security
When operating as a multi-tenant application:
- The
tid(Tenant ID) claim is validated on every request - Mandates are scoped to the authenticated tenant
- A user from Tenant A cannot create mandates referencing resources in Tenant B
- Conditional Access policies are respected via the
amrclaim (MFA enforcement, device compliance)
SCIM Provisioning
Entra ID supports SCIM provisioning through the same /scim/v2/Users endpoints as Okta. Configure in Azure Portal:
- Go to Enterprise Applications > Mandaitor > Provisioning
- Set provisioning mode to Automatic
- Set Tenant URL:
https://api.mandaitor.io/v1/scim/v2 - Set Secret Token: Your API key
User deprovisioning automatically revokes all active mandates.