Authentication, first security perimeter
Choosing an inadequate authentication mechanism directly exposes an application to identity compromises. In Microsoft 365 and Azure environments, this choice conditions both regulatory compliance and end-user experience. Here is a structured overview of the nine approaches to know, from the most fundamental to the most advanced.
The building blocks: password, MFA and JWT
Password authentication
Username/password authentication remains the foundation of the vast majority of existing applications. Its simplicity of implementation has a downside: used alone, it is the most common attack vector (phishing, brute force, credential stuffing). In Microsoft Entra ID, password protection policies allow you to block weak or known values, but this is not sufficient in isolation.
Multi-Factor Authentication (MFA)
MFA (Multi-Factor Authentication) requires the presentation of at least two distinct verification factors:
- What the user knows (password, PIN)
- What they have (OTP code via Microsoft Authenticator, FIDO2 key)
- What they are (biometrics)
In Entra ID, MFA is activated via Conditional Access policies. Its deployment drastically reduces the risk of account compromise, even in case of password leak.
Beware of SMS OTP
Codes sent by SMS remain vulnerable to SIM-swapping attacks. Prefer an authentication application or a FIDO2 hardware key for privileged accounts.
JSON Web Token (JWT)
JWT (JSON Web Token) structures a token in three parts encoded in Base64 and separated by dots: Header, Payload and Signature. This compact format allows transmitting identity claims between services without re-querying a directory on each request. In Microsoft Entra ID, access tokens issued for Microsoft Graph are JWTs signed by the Microsoft identity platform.
Example of decoding the payload of an Entra ID token:
1{2 "oid": "<object-id>",3 "upn": "user@contoso.com",4 "roles": ["Mail.Read"],5 "exp": 17000000006}The exp field indicates the Unix expiration date — verify it systematically on the server side.
Delegation and API access: OAuth 2.0, OIDC and API Key
OAuth 2.0
OAuth 2.0 is a delegated authorization framework, not authentication. The client obtains an access token from an authorization server (in Azure: the Microsoft identity platform) without ever handling the user's credentials. Scopes declare precisely the accessible resources.
The four main grants:
authorization_code(web and mobile applications)client_credentials(machine-to-machine services)device_code(devices without browser)on_behalf_of(delegation between services)
Implicit grant deprecated
The implicit grant is deprecated in the Microsoft identity platform. Migrate to authorization_code with PKCE (Proof Key for Code Exchange) for SPAs and mobile applications.
OpenID Connect (OIDC)
OpenID Connect (OIDC) is an identity layer built on top of OAuth 2.0. It introduces the ID Token — a JWT signed by the OIDC Provider — which contains user attributes (sub, email, name). This is the protocol used by default in Microsoft Entra ID for authenticating users in modern applications.
API Key
The API Key (header X-API-KEY or query parameter) authenticates an application client to an API without OAuth flow. Simple to implement, it is suitable for internal integrations or webhooks. Its limitations are well known: no native automatic rotation, no fine-grained scope, manual revocation. In Azure API Management, subscriptions integrate this mechanism with centralized key management.
Advanced mechanisms: mTLS, SAML and biometrics
mTLS — Mutual TLS
mTLS (Mutual Transport Layer Security) requires bidirectional authentication via digital certificate: the server presents its certificate to the client, and the client presents its own to the server. This mechanism ensures that neither party can usurp the identity of the other. In Azure, Azure API Management supports mTLS to secure communications between services.
| Mechanism | Direction | Typical use case | Operational complexity |
|---|---|---|---|
| Standard TLS | Server → Client | Classic HTTPS | Low |
| mTLS | Bidirectional | Service-to-service, Zero Trust | High (certificate management) |
SAML 2.0
SAML (Security Assertion Markup Language) version 2.0 is an XML standard for identity federation between a Service Provider (SP) and an Identity Provider (IdP). It remains dominant in enterprises with legacy applications or partners who have not migrated to OIDC. Microsoft Entra ID supports SAML 2.0 as an IdP, which allows integrating SaaS applications that do not yet support OIDC.
SAML vs OIDC
For a new application, prefer OIDC: lighter protocol, JSON tokens instead of bulky XML, and better compatibility with API-first architectures. SAML remains relevant for existing applications and inter-company federations.
Biometric authentication
Biometric authentication verifies identity via unique biological traits: fingerprint, facial recognition, voice. In the Microsoft ecosystem, Windows Hello for Business implements biometrics on the client side with local data storage — they never transit to a remote server. On mobile, Android and iOS SDKs expose these capabilities to applications via standardized APIs. Microsoft Entra ID recognizes Windows Hello logins as passwordless authentications.
Choosing the right combination based on context
No single method covers all scenarios. Robustness comes from their combination:
- Internal business applications: OIDC + MFA + Conditional Access
- Machine-to-machine APIs: OAuth 2.0
client_credentialsor mTLS - Legacy SSO integrations: SAML 2.0 federated via Entra ID
- Managed workstations: Windows Hello for Business (passwordless)
- Public or partner APIs: API Key via Azure API Management with scheduled rotation
In a Zero Trust architecture, identity becomes the perimeter. Each access is evaluated continuously — regardless of whether the request originates from the internal or external network.
Key points to remember
- JWT: always validate the signature and
expfield on the server side. - OAuth 2.0: the
implicitgrant is deprecated — useauthorization_code+ PKCE. - OIDC to be preferred over SAML for any new integration.
- mTLS provides bidirectional authentication essential in Zero Trust service-to-service architectures.
- Windows Hello for Business eliminates the password without sacrificing security.
- SMS MFA is less robust than an authentication application or FIDO2 key.
The reference documentation on protocols supported by Microsoft Entra ID is available on Microsoft Learn — Authentication Protocols.



