Blog Post

Intune Customer Success
6 MIN READ

Support tip: Implementing strong mapping in Microsoft Intune certificates

Intune_Support_Team's avatar
Intune_Support_Team
Silver Contributor
Feb 09, 2024

Updated 11/25/24: Strong mapping for SCEP certificates has now been fully rolled out, with support available on Windows, iOS, macOS, and Android operating systems.

 

With the May 10, 2022 Windows update (KB5014754), changes were made to the Active Directory Kerberos Key Distribution (KDC) behavior in Windows Server 2008 and later versions to mitigate elevation of privilege vulnerabilities associated with certificate spoofing. Windows will enforce these changes on February 11, 2025. If a certificate can't be strongly mapped, authentication will be denied. The option to revert to Compatibility mode will be available until September 10, 2025, after which the StrongCertificateBindingEnforcement registry value will no longer be supported. 

 

We’ve received feedback from customers wanting to understand how this impacts certificates delivered by Intune. In February 2024, we initiated the rollout of strong mapping for SCEP certificates in Intune. However, based on customer feedback, we paused the rollout. Instead, we're now introducing support for a SID variable in SCEP profiles to give more control to customers to choose if they would like to have the SID in the certificate for strong mapping, particularly in scenarios where they authenticate against KDC for certificate-based authentication.

 

This feature has rolled out in the October (2410) service release for Windows, iOS, and Mac with Android support in the November (2411) service release. The variable, OnPremisesSecurityIdentifier, allows customers to test against their infrastructure and roll out at their own pace to ensure other applications or systems they may use support the new certificate format.

 

Enablement of certificate strong mapping in Active Directory

To address security concerns related to certificate spoofing, Windows introduced changes to the KDC that requires certificates for a user or computer object to be strongly mapped to Active Directory. These changes ensure a more robust validation process during certificate-based authentication.

 

Various mapping options are allowed, including manual mapping and automatic mapping using the object identifier (OID) extension with the device or user security identifier (SID) for online certificate templates from Active Directory Certificate Services (AD CS).

 

In case of manual and offline certificates, which is what Intune uses to deliver certificates to devices, a new mapping has been introduced which is a Subject Alternative Name (SAN) tag-based URI with the following format.

 

URL=tag:microsoft.com,2022-09-14:sid:<value>

 

When a user or device presents a certificate for authentication in Active Directory, the KDC will check if the required mappings are present to verify if the certificate is strongly mapped and issued to the specific user or device.

 

Adding SID to SCEP certificates for ADCS/KDC changes

To address the ADCS/KDC changes, we’re introducing the capability for admins to include the On-premises Security Identifier (SID) in SCEP certificates. Admins can either edit existing SCEP profiles or create new ones to incorporate the OnPremisesSecurityIdentifier variable with a URI tag as shown below. Note that URI is the only supported attribute for OnPremisesSecurityIdentifier.

A screenshot of the SID variable added to the SCEP profile in Microsoft Intune admin center.

 

Once you’ve added it to the SCEP profile, Intune will append the SID value along with the tag “tag:microsoft.com,2022-09-14” to the SAN attribute of the certificate. The SAN now includes the object's SID formatted as "tag:microsoft.com,2022-09-14:sid:<OnPremisesSecurityIdentifier>". This URI is included in the SCEP payload and sent through the mobile device management (MDM) channel. 

 

Example screenshot of a certificate that has been issued with a SAN URI.

 

For user certificates, the variable resolves to the user SID, while for device certificates, it resolves to the device SID. Additionally, the KDC logic for evaluating how certificates are mapped has been updated to check a URI based on a Subject Alternative Name (SAN) tag that works with SCEP. This solution works with Windows Server 2019 and above. 

 

Recommendations for safe implementation

Testing

It's essential to thoroughly test new configurations on a select group of devices before rolling them out broadly. Create a profile with the variable "OnPremisesSecurityIdentifier" and apply it to this group. Ensure compatibility with applications, Intune-integrated conditional access, NAC solutions, and any certificate-based authentication in your networking infrastructure.

 

Phased certificate renewal

Renew certificates in phases by creating a new SCEP profile and gradually targeting it to groups of users or devices. This approach helps to avoid overwhelming your certificate authority and minimize disruptions.

 

 

Note: If you notice the tag "tag:microsoft.com,2022-09-14:sid:<value>" in the certificates already issued within your organization, your tenant received the initial KDC change in February 2024. For any certificates that don’t include this SID, they must be reissued before February 2025 to ensure they contain the SID and authentication isn‘t denied. Alternatively, you can enable compatibility mode by adjusting the registry settings to allow for automatic certificate renewal. Specifically, you will need to change the registry key StrongCertificateBindingEnforcement to 1, as defined in the KB5014754.This registry change must be completed before February 2025, and all certificates should be renewed before September 2025 to avoid any disruption.

 

Implementation for PKCS certificates

The implementation of strong mapping in PKCS certificates is now available via certificate connector updates in the version 6.2406.0.1001. For information about the latest version and how to update the certificate connector, review Certificate connector for Microsoft Intune and Update certificate connector for KB5014754 requirements.

For the PKCS changes to take effect, you need to update the connector, make the below registry change, and then restart the connector service in that order.

Important: Before you modify the registry key, review these articles on how to change the registry key and how to back up and restore the registry:

Modify the value for the following registry key:

[HKLM\Software\Microsoft\MicrosoftIntune\PFXCertificateConnector]:(dword)EnableSidSecurityExtension

Value: 1


After modifying the registry key, restart the connector services in order for the changes to take effect. If you would like to revert the changes, restore the registry changes and create new profile such that certificates are re-issued without the SID attribute.

 

Known issue: For Windows, when issuing the PKCS certificate you may see the following exception:

 System.NullReferenceException: CertEnroll::CX509Extension::Initialize: Invalid pointer 0x80004003 (-2147467261 E_POINTER)
   at CERTENROLLLib.IX509Extension.Initialize(CObjectId pObjectId, EncodingType Encoding, String strEncodedData)

This is resolved with the November 12, 2024 Windows update (KB5046616). Note, this fix is only supported for Windows Server version 2019 and above. 

Strong mapping prerequisites for Intune

The changes introduced by Intune apply to Microsoft Entra hybrid joined users and devices that authenticate against Active Directory using Intune-issued certificates. For strong mapping to work for these users and devices, the following prerequisites must be met:

  • User and device SID must be synchronized with Microsoft Entra ID. For more information, read How objects and credentials are synchronized in a Microsoft Entra Domain Services managed domain.
  • For device certificates, only Microsoft Entra hybrid joined devices will have SID information, so strong mapping changes are applicable only to Windows devices that are Microsoft Entra hybrid joined. For other device types, like iOS or Android, strong mapping is not supported for device certificates, and user certificates should be used instead.

Strong mapping is supported for:

  • Windows 10
  • Windows 11
  • Windows Server 2019 and later
  • iOS
  • macOS

Note: Android support is expected to rollout in November 2024.

 

SID support for third-party CA and NAC partners

We are working closely with partners to ensure readiness for all third-party certification authorities (CA) and network access control (NAC) solutions.  


The following CA partners have been verified to be compatible with the SID inclusion from Intune: 

  • Cogito Group
  • DigiCert
  • EasyScep
  • EJBCA
  • Entrust
  • EverTrust
  • HID Global
  • IDnomic
  • Keyfactor Command
  • KeyTalk
  • Keytos
  • Nexus Certificate Manager
  • SCEPman
  • Sectigo
  • Venafi
  • Securew2 

 

If you're using NAC solutions with Intune, it's important to check compatibility with the SID included in certificates. We're working closely with various NAC partners to ensure smooth integration. Here's the current status: 

  • Portnox – Completed
  • Cisco – In progress
    • ISE 3.2 P7 – Released in October 2024

    • ISE 3.3 P4 – Planned for October 2024

    • ISE 3.4 P1 – Planned for November 2024

    • ISE 3.1 P10 – Planned for January 2025

  • Citrix – In progress
  • F5 – In progress
  • Ivanti – In progress
  • Forescout – In progress
  • Aruba Clearpass – Completed, Intune extension version 6.3.3  

We recommend thorough testing of any applications, Intune-integrated CAs, NAC solutions and networking infrastructure where clients may utilize certificates for authentication to ensure optimal functionality. 

 

If you have any questions, leave a comment below or reach out to us on X @IntuneSuppTeam.

 

Post updates:

03/18/24: Based on customer feedback, we paused the rollout for this update. More information can be found above.

10/10/24: Added steps to implement SID in SCEP and PKCS certificates, along with information on SID support for third-party CA and NAC partners.
10/29/24: Updated status of NAC partners.
11/14/24: Updated to include a PKCS known issue with resolution (KB5046616).
11/25/24: Strong mapping for SCEP certificates has now been fully rolled out, with support available on Windows, iOS, macOS, and Android operating systems.

Updated Dec 09, 2024
Version 11.0

104 Comments

  • BBFroggy's avatar
    BBFroggy
    Copper Contributor

    Kev_Chan : It makes sense to do that in the time frame between the Intune Release that adds the SIDs (expected in September 2024) and the time that strong mapping is enforced (at latest February 11, 2025 according to https://support.microsoft.com/en-us/topic/kb5014754-certificate-based-authentication-changes-on-windows-domain-controllers-ad2c23b0-15d8-4340-a468-4d4f3b188f16). It is only required if you are actually using your certificates for on-prem AAD authentication.

     

    You can trigger a revocation and re-enrollment centrally be changing specific values in your Intune SCEP Configuration profile. Here is a list that shows which properties a re-enrollment and which do not: https://docs.scepman.com/other/troubleshooting/re-enrollment-trigger. If you do that, your clients will request new certificates all at once, within a few seconds. I have heard that it delays some requests if it is  more than 5000 clients, but I am not certain. 5000 requests within a few seconds might be too much for your PKI/SCEP Service, so make sure that it can handle this many requests at once or use another technique to enroll new certificates.

     

    For example, you could create a new SCEP enrollment profile and move users in smaller batches from your existing SCEP enrollment profile to the new one.

  • Kev_Chan's avatar
    Kev_Chan
    Copper Contributor

    With the move to strong mapping, wouldn't this mean that we need to revoke our existing certificates, make sure the certificate includes SANs for the SID, and then deploy new certificates for existing users?

  • MeijuXing's avatar
    MeijuXing
    Copper Contributor

    Hi Guys, 

    Our production issues certificates using offline template too. To support certificate mapping strong , can I add URL=tag:microsoft.com,2022-09-14:sid:<value> to my CSR then the generated certificate will contains user's ObjectSid? does it support certificate mapping strong mentioned in https://support.microsoft.com/en-us/topic/kb5014754-certificate-based-authentication-changes-on-windows-domain-controllers-ad2c23b0-15d8-4340-a468-4d4f3b188f16 ?

     

    The following screenshots is captured from My CA server :

     

    Looks forward your reply . 

    Thanks in advance !

  • Joachim83's avatar
    Joachim83
    Copper Contributor

    By delaying this update to Intune certificates until september, you are not given the certificates enough time to renew themselves with strong mapping by February 2025 when the strong mapping Full Enforcement mode is activated in Windows and the old Intune certificates will be rejected.

    You need to also delay the Full Enforcement mode by 6 months so the default 1 year Intune certificates are able to renew in time. If not, then thousands of phones will fail to connect in February 2025 and they will have to reenroll their devices to get a new certificate. That will be a fun day for customer support.

    https://support.microsoft.com/en-us/topic/kb5014754-certificate-based-authentication-changes-on-windows-domain-controllers-ad2c23b0-15d8-4340-a468-4d4f3b188f16

  • Umm... I did sync the Security IDentifier ... I thought I had to format the request to the CA.

     

    Thanks

  • BBFroggy's avatar
    BBFroggy
    Copper Contributor

    To the best of my knowledge, there is no variable that evaluates to the SID AndresMoralesamf5979.

     

    Instead, the new SAN extension is automatically added to all certificates when the user has the On-premises security identifier property set (or accordingly for devices). You cannot turn off this behavior.

  • Igalfsg's avatar
    Igalfsg
    Brass Contributor

    For Keytos EZCA Users, this is already supported on the CA without any changes on your side. In addition to This mapping, EZCA will keep automatically adding SID extension to all certificates https://www.keytos.io/blog/2023/09/18/kb5014754-update

  • BBFroggy's avatar
    BBFroggy
    Copper Contributor

    For those using SCEPman, it works without problems and nothing needs to be configured: https://docs.scepman.com/other/faqs/intune-implementing-strong-mapping-for-scep-and-pkcs-certificates

     

    When using SCEPman, you can also add the SID extension like the on-prem ADCS and this works on all platforms since July 2023, so you don't have to wait for the Intune implementation if you want to have this on Android.

  • AriLehtimaki's avatar
    AriLehtimaki
    Copper Contributor

    Hi. We have been having issues with Android SCEP profile for couple of weeks. If we deploy a SCEP profile to the device we'll end up in an error and the device cannot sign-in anymore.
    The profiles have worked previously for years without change. Can this be related?