If your organization has its own internal certificate authorities, you'll need to configure PKI in Entra ID so your tenant trusts certificates issued by those internal CAs. Without this setup, Entra ID will reject your internal certificates as untrusted, which means certificate-based authentication won't work for your users.
Part 1: Configuring Public Key Infrastructure (PKI)
Prerequisites
- Global Administrator or Authentication Policy Administrator role
- Valid X.509 certificates from your Certificate Authority
- CRL distribution points properly configured (if using CRL validation)
When you have a certificate hierarchy (root CA with intermediate/issuing CAs), you need to provide Entra ID with the complete certificate chain in a single file.
If you simply provide the “root” certificate then the chain will be incomplete and verification will not work because it will not trust the intermediary authority certificate servers - we therefore need to create this correct certificate chain in a single file.
The format should be:
- Base64 encoded
- Root certificate at the top
- Followed by intermediate certificates in order (closest to root first)
So your certificate stack would look like:
-----BEGIN CERTIFICATE-----
[Root CA certificate in base64]
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
[Intermediate CA 1 certificate in base64]
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
[Intermediate CA 2 certificate in base64]
-----END CERTIFICATE-----
This gives Entra ID the full chain of trust from your root down to the issuing certificate authorities, allowing it to properly validate certificates issued by any CA in your hierarchy.
Step 1: Access the PKI Section
- Sign in to the Microsoft Entra admin center (https://entra.microsoft.com)
- Navigate to Protection > Authentication methods
- Select Certificate-based authentication
- Click on the Public key infrastructure tab
Step 2: Create a New PKI Configuration
- Click + New PKI
- Provide a descriptive name for your PKI configuration
- Click Create
Step 3: Upload Certificate Authorities
For each Certificate Authority in your chain (Root CA and any Intermediate CAs):
Prepare the certificate in Base64 format:
- Export your CA certificate as Base64 encoded X.509 (.CER)
- Open the certificate file in a text editor
- Copy the entire content including the BEGIN/END CERTIFICATE lines
Upload the certificate:
- Click + Add certificate authority
- Certificate Authority Name: Enter a descriptive name
- Certificate: Paste the Base64 encoded certificate content
- Issuer: This will auto-populate from the certificate
- Subject: This will auto-populate from the certificate
Configure CRL Distribution Point (if applicable):
- CRL Distribution Point URL: Enter the HTTP URL where the CRL is published
- Example:
http://crl.pokebearswithsticks.com/contoso-ca.crl - Ensure the CRL is accessible via HTTP (not HTTPS for compatibility)
Validation Settings:
- Delta CRL supported: Enable if your CA supports delta CRLs
- CRL offline tolerance: Set the acceptable time window for CRL staleness
Click Add to save the certificate authority
Step 4: Verify PKI Configuration
- Review all uploaded certificate authorities
- Ensure the certificate chain is complete (Root → Intermediate → End-entity)
- Verify CRL distribution points are accessible and functional
Part 2: Enabling Certificate-Based Authentication
Step 1: Enable the Authentication Method
- In the Certificate-based authentication settings
- Set Enable to Yes
- Configure the target users/groups who can use this method
Step 2: Configure Certificate Revocation List (CRL) Validation
Require CRL validation (recommended):
- Enable: Turn this ON for enhanced security
- Impact: Every certificate will be checked against the CRL
- Failure condition: Authentication fails if CRL is unreachable or certificate is revoked
CRL Validation Exemptions:
- Use sparingly and only for trusted internal CAs
- Click Add exemption to exclude specific certificate authorities
- Select the CA from your configured PKI list
Step 3: Configure Issuer Hints
Enable issuer hints:
- Purpose: Shows only valid certificates in the certificate picker
- User Experience: Reduces confusion during authentication
- Recommendation: Enable for better user experience
Setting: Enable issuer hints = Yes
Step 4: Configure Authentication Binding
Default Authentication Strength:
- Single-factor: Certificate alone counts as one factor
- Multi-factor: Certificate alone counts as two factors
Required Affinity Binding:
- Low: Less restrictive certificate-to-user binding
- High: Stricter certificate-to-user binding requirements
Custom Authentication Binding Rules: Create specific rules for different certificate issuers:
- Click + Add rule
- Certificate issuer: Select from your configured PKI
- Policy OID: Enter specific OID if required (optional)
- Authentication strength: Override default setting
- Affinity binding: Override default affinity level
Step 5: Configure Username Binding
This determines how certificate fields map to user attributes:
Default Bindings:
PrincipalName → userPrincipalName (Low affinity)
- Maps certificate principal name to UPN
- Most common binding method
RFC822Name → userPrincipalName (Low affinity)
- Maps certificate email field to UPN
- Useful for email-based certificates
SKI → CertificateUserIDs (High affinity)
- Maps Subject Key Identifier to certificate user IDs
- Highest security binding
Custom Username Binding:
- Click + Add binding
- Certificate field: Choose from available X.509 fields
- User attribute: Select corresponding Entra ID attribute
- Affinity binding: Set Low or High based on trust level
Step 6: Configure Certificate Issuer Scoping Policy
- Click + Add scoping rule
- PKI: Select your configured PKI
- Certificate issuer: Choose specific CA
- SKI: Subject Key Identifier of the issuer
- Target group: Select Entra ID group for authorization
- Validity Status: Enable/Disable the rule
Part 3: Troubleshooting Common Issues
Certificate Not Appearing in Picker
- Verify certificate chain is complete in PKI configuration
- Check issuer hints configuration
- Ensure certificate is not expired or revoked
CRL Validation Failures
- Verify CRL distribution point URL is accessible
- Check CRL is current and not expired
- Consider CRL exemptions for internal CAs (carefully)
Username Binding Issues
- Verify certificate fields contain expected values
- Check user attribute mappings in Entra ID
- Review affinity binding settings
Authentication Strength Not Applied
- Check authentication binding rules
- Verify policy OID matches (if specified)
- Review conditional access policies
This should then give you an trusted public key infrastructure (PKI) which when complete can be trusted by Entra and not marked as "untrusted"