πŸ“‹ Microsoft Entra Documentation Changes

Daily summary for changes since August 11th 2025, 8:24 PM PDT

Report generated on August 12th 2025, 8:24 PM PDT

πŸ“Š Summary

35
Total Commits
5
New Files
10
Modified Files
2
Deleted Files
16
Contributors

πŸ†• New Documentation Files

+989 lines added
Commit: Adding two new articles on expression mapping functions.
+185 lines added
Commit: Adding two new articles on expression mapping functions.
+17 lines added
Commit: 08122025 - Permissions Reference Refresh
+0 lines added
Commit: agent-table-081225
+0 lines added
Commit: agent-table-081225

πŸ“ Modified Documentation Files

+654 / -55 lines changed
Commit: Updating links
Changes:
Before
After
- [Organizational unit (OU) assignment](#organizational-unit-ou-assignment)
- [Random ID generation](#random-id-generation)
- [Name processing](#name-processing)
- [Advanced scenarios](#advanced-scenarios)
 
## String manipulation functions
 
### Basic string operations
 
...
 
### Text case conversion
 
...
 
### Country-specific naming logic
 
...
 
## Email address generation
- [Organizational unit (OU) assignment](#organizational-unit-ou-assignment)
- [Random ID generation](#random-id-generation)
- [Name processing](#name-processing)
 
## String manipulation functions
 
### Basic string operations
 
**Scenario 1**: You want to clean up a phone number value coming from Workday by removing spaces, brackets, and dashes.
 
**Target attribute**: telephoneNumber, mobile
 
```
Replace([PrimaryWorkTelephone], , "[()\\s-]+", , "", , )
Replace([Mobile], , "[()\\s-]+", , "", , )
```
 
**Example:**
- **Input Values**: [PrimaryWorkTelephone] = "+1 (555) 123-4567"
- **Output of Expression**: `+15551234567`
Modified by shlipsey3 on Aug 12, 2025 7:36 PM
πŸ“– View on learn.microsoft.com
+10 / -25 lines changed
Commit: agent-table-081225
Changes:
Before
After
ms.author: joflore
author: MicrosoftGuyJFlo
 
ms.date: 04/25/2025
ms.service: entra-id
ms.subservice: conditional-access
ms.topic: article
 
### Microsoft Entra Conditional Access optimization agent
 
The [Conditional Access optimization agent](../identity/conditional-access/agent-optimization.md) ensures all users are protected by policy. It recommends policies and changes based on best practices aligned with [Zero Trust](/security/zero-trust/deploy/identity) and Microsoft's learnings. In preview, the agent evaluates policies requiring multifactor authentication (MFA), enforces device based controls (device compliance, app protection policies, and Domain Joined Devices), and blocks legacy authentication and device code flow.
 
#### Trigger​
 
The agent runs every 24 hours but can also run manually.
 
#### Permissions​
 
The agent reviews your policy configuration but acts only with your approval of the suggestions.
 
ms.author: joflore
author: MicrosoftGuyJFlo
 
ms.date: 08/12/2025
ms.service: entra-id
ms.subservice: conditional-access
ms.topic: article
 
### Microsoft Entra Conditional Access optimization agent
 
The [Conditional Access optimization agent](../identity/conditional-access/agent-optimization.md) ensures all users are protected by policy. It recommends policies and changes based on best practices aligned with [Zero Trust](/security/zero-trust/deploy/identity) and Microsoft's learnings. The agent evaluates policies requiring multifactor authentication (MFA), enforces device based controls (device compliance, app protection policies, and Domain Joined Devices), and blocks legacy authentication and device code flow.
 
| Attribute | Description |
|---------------------|--------------------------------------------------------------------------------------------------------------------------------------------------|
| Trigger | Runs every 24 hours or manually. |
| Permissions | Reviews policy configuration. Creates new policies in report-only mode. Suggests policy changes that must be approved. |
| Identity | Runs as the administrator who configured the agent. |
| Products | [Microsoft Entra Conditional Access](/entra/identity/conditional-access/), [Security Copilot](/copilot/security/microsoft-security-copilot) |
| Plugins | [Microsoft Entra](/entra/fundamentals/copilot-security-entra) |
| Role-based access | Requires [Security Administrator](../identity/role-based-access-control/permissions-reference.md#security-administrator) or [Global Administrator](../identity/role-based-access-control/permissions-reference.md#global-administrator) to turn on the agent. More roles can be added in Security Copilot role assignments |
+13 / -13 lines changed
Commit: PR reviewer edits
Changes:
Before
After
---
title: 'SuccessFactors expression mapping functions for Microsoft Entra ID provisioning'
description: S comprehensive guide to commonly used expression mapping functions when configuring SuccessFactors to Microsoft Entra ID user provisioning. These functions help transform and map data from SuccessFactors to create appropriate user attributes in Microsoft Entra ID.
 
author: jenniferf-skc
manager: pmwongera
 
### Apostrophe and special character handling
 
**Scenario 1**: You need to remove apostrophes and dashes from email addresses for AAD Connect compatibility.
 
**Target attribute**: mail
 
 
## Best practices
 
1. **Use SelectUniqueValue** for all attributes that require uniqueness (UPN, samAccountName, email).
 
2. **Handle null and empty values** using functions like `IsNullOrEmpty`, `IsPresent`, `Switch`, or `Coalesce`.
 
---
title: 'SuccessFactors Expression Mapping Functions for Microsoft Entra ID Provisioning'
description: A comprehensive guide to commonly used expression mapping functions when configuring SuccessFactors to Microsoft Entra ID user provisioning. These functions help transform and map data from SuccessFactors to create appropriate user attributes in Microsoft Entra ID.
 
author: jenniferf-skc
manager: pmwongera
 
### Apostrophe and special character handling
 
**Scenario 1**: You need to remove apostrophes and dashes from email addresses for Azure AD Connect compatibility.
 
**Target attribute**: mail
 
 
## Best practices
 
- **Use SelectUniqueValue** for all attributes that require uniqueness (UPN, samAccountName, email).
 
- **Handle null and empty values** using functions like `IsNullOrEmpty`, `IsPresent`, `Switch`, or `Coalesce`.
 
+18 / -0 lines changed
Commit: Update identifier-uri-restrictions.md
Changes:
Before
After
[Learn how to check if the protection has been enabled in your organization](https://aka.ms/check-identifier-uri-protection-state)
 
Even though Microsoft is enabling this setting by default, tenant administrators retain control over it. They can turn it on, off, or grant exceptions to it.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
[Learn how to check if the protection has been enabled in your organization](https://aka.ms/check-identifier-uri-protection-state)
 
Even though Microsoft is enabling this setting by default, tenant administrators retain control over it. They can turn it on, off, or grant exceptions to it.
 
### Why am I hitting this error when configuring my SAML application?
 
SAML applications are exempt from the identifier URI restrictions by default. However, they must be explicitly indicated as SAML applications in order for the exemption to apply.
 
If the SAML setup was configured using the 'Single Sign On' page of 'Enterprise applications', then the app will automatically be indicated as a SAML app. If not, you can indicate the app as a SAML app by setting the `preferredSingleSignOn` mode property of the service principal to `SAML`.
 
To do this, make the following request. You can get the object ID of the service principal from the [Enterprise applications experience](https://entra.microsoft.com/#view/Microsoft_AAD_IAM/StartboardApplicationsMenuBlade/~/AppAppsPreview).
 
```http
PATCH https://graph.microsoft.com/v1.0/servicePrincipals/{objectIdOfServicePrincipal}
```
 
```json
{
"preferredSingleSignOnMode": "SAML"
}
Modified by Faith Moraa Ombongi on Aug 12, 2025 5:26 PM
πŸ“– View on learn.microsoft.com
+8 / -3 lines changed
Commit: 08122025 - Permissions Reference Refresh
Changes:
Before
After
---
title: Microsoft Entra built-in roles
description: Describes the Microsoft Entra built-in roles and permissions.
author: barclayn
manager: pmwongera
search.appverid: MET150
ms.service: entra-id
ms.subservice: role-based-access-control
ms.topic: reference
ms.date: 07/25/2025
ms.author: barclayn
ms.reviewer: abhijeetsinha
ms.custom: generated, it-pro, fasttrack-edit, has-azure-ad-ps-ref, azure-ad-ref-level-one-done, sfi-ga-nochange
---
> | [Password Administrator](#password-administrator) | Can reset passwords for non-administrators and Password Administrators.<br/>[![Privileged label icon.](./media/permissions-reference/privileged-label.png)](privileged-roles-permissions.md) | 966707d0-3269-4727-9be2-8c3a10f19b9d |
> | [People Administrator](#people-administrator) | Manage profile photos of users and people settings for all users in the organization. | 024906de-61e5-49c8-8572-40335f1e0e10 |
> | [Permissions Management Administrator](#permissions-management-administrator) | Manage all aspects of Microsoft Entra Permissions Management. | af78dc32-cf4d-46f9-ba4e-4428526346b5 |
> | [Power Platform Administrator](#power-platform-administrator) | Can create and manage all aspects of Microsoft Dynamics 365, Power Apps and Power Automate. | 11648597-926c-4cf3-9c36-bcebb0ba8dcc |
> | [Printer Administrator](#printer-administrator) | Can manage all aspects of printers and printer connectors. | 644ef478-e28f-4e28-b9dc-3fdde9aa0b1f |
> | [Printer Technician](#printer-technician) | Can register and unregister printers and update printer status. | e8cef6f1-e4bd-4ea8-bc07-4b8d950f4477 |
---
title: Microsoft Entra built-in roles
description: Describes the Microsoft Entra built-in roles and permissions.
author: rolyon
manager: pmwongera
search.appverid: MET150
ms.service: entra-id
ms.subservice: role-based-access-control
ms.topic: reference
ms.date: 08/12/2025
ms.author: rolyon
ms.reviewer: abhijeetsinha
ms.custom: generated, it-pro, fasttrack-edit, has-azure-ad-ps-ref, azure-ad-ref-level-one-done, sfi-ga-nochange
---
> | [Password Administrator](#password-administrator) | Can reset passwords for non-administrators and Password Administrators.<br/>[![Privileged label icon.](./media/permissions-reference/privileged-label.png)](privileged-roles-permissions.md) | 966707d0-3269-4727-9be2-8c3a10f19b9d |
> | [People Administrator](#people-administrator) | Manage profile photos of users and people settings for all users in the organization. | 024906de-61e5-49c8-8572-40335f1e0e10 |
> | [Permissions Management Administrator](#permissions-management-administrator) | Manage all aspects of Microsoft Entra Permissions Management. | af78dc32-cf4d-46f9-ba4e-4428526346b5 |
> | [Places Administrator](#places-administrator) | Manage all aspects of the Microsoft Places service. | 78b0ccd1-afc2-4f92-9116-b41aedd09592 |
> | [Power Platform Administrator](#power-platform-administrator) | Can create and manage all aspects of Microsoft Dynamics 365, Power Apps and Power Automate. | 11648597-926c-4cf3-9c36-bcebb0ba8dcc |
> | [Printer Administrator](#printer-administrator) | Can manage all aspects of printers and printer connectors. | 644ef478-e28f-4e28-b9dc-3fdde9aa0b1f |
+2 / -2 lines changed
Commit: Aug 12 shortened alt text
Changes:
Before
After
description: Use Application discovery to detect the applications accessed by users and create separate private applications.
ms.service: global-secure-access
ms.topic: how-to
ms.date: 08/11/2025
ms.author: jayrusso
author: HULKsmashGithub
manager: dougeby
1. Browse to **Identity** > **Overview**.
1. Select the **Recommendations** tab.
1. Select the recommendation for Application discovery: **Onboard new discovered application segments to enterprise applications**.
:::image type="content" source="media/how-to-application-discovery/recommendation-onboard-discovered.png" alt-text="Screenshot of the Recommendations tab in the Microsoft Entra admin center, showing the Application discovery recommendation to onboard new discovered application segments to enterprise applications.":::
1. Review the recommendation details and follow the suggested **Action plan**.
:::image type="content" source="media/how-to-application-discovery/recommendation-action-plan.png" alt-text="Screenshot of the impacted resources and the recommended action plan." lightbox="media/how-to-application-discovery/recommendation-action-plan-expanded.png":::
 
description: Use Application discovery to detect the applications accessed by users and create separate private applications.
ms.service: global-secure-access
ms.topic: how-to
ms.date: 08/12/2025
ms.author: jayrusso
author: HULKsmashGithub
manager: dougeby
1. Browse to **Identity** > **Overview**.
1. Select the **Recommendations** tab.
1. Select the recommendation for Application discovery: **Onboard new discovered application segments to enterprise applications**.
:::image type="content" source="media/how-to-application-discovery/recommendation-onboard-discovered.png" alt-text="Screenshot of the Recommendations tab, showing the recommendation to onboard new discovered application segments to enterprise applications.":::
1. Review the recommendation details and follow the suggested **Action plan**.
:::image type="content" source="media/how-to-application-discovery/recommendation-action-plan.png" alt-text="Screenshot of the impacted resources and the recommended action plan." lightbox="media/how-to-application-discovery/recommendation-action-plan-expanded.png":::
 
Modified by Kenga Derdus on Aug 12, 2025 10:08 AM
πŸ“– View on learn.microsoft.com
+2 / -2 lines changed
Commit: update Metadata
Changes:
Before
After
---
title: Native authentication
description: Learn how to set up native authentication in Microsoft Entra External ID. Customize the user interface for mobile and desktop apps, and provide a seamless sign-in experience.
author: csmulligan
manager: dougeby
ms.service: identity-platform
ms.subservice: external
ms.topic: concept-article
ms.date: 04/28/2025
ms.author: cmulligan
 
#Customer intent: As a developer, devops, I want to learn more how to host the user interface (UI) within the client app by using native authentication so that I can take greater control over the UI and experience of my customer apps.
---
title: Native authentication
description: Learn how to set up native authentication in Microsoft Entra External ID. Customize the user interface for mobile and desktop apps, and provide a seamless sign-in experience.
 
author: csmulligan
manager: dougeby
ms.service: identity-platform
ms.subservice: external
ms.topic: concept-article
ms.date: 08/08/2025
ms.author: cmulligan
 
#Customer intent: As a developer, devops, I want to learn more how to host the user interface (UI) within the client app by using native authentication so that I can take greater control over the UI and experience of my customer apps.
Modified by Marilee Turscak - MSFT on Aug 12, 2025 8:05 PM
πŸ“– View on learn.microsoft.com
+1 / -1 lines changed
Commit: Added clarifying instructions for which certificates to upload
Changes:
Before
After
```openssl req -x509 -new -nodes -newkey rsa:4096 -keyout rootCAchain.key -sha256 -days 370 -out rootCAchain.pem -subj "/C=US/ST=US/O=Self Signed/CN=Self Signed Root CA" -config openssl.cnf -extensions rootCA_ext```
1. Sign the CSR using the following command:
```openssl x509 -req -in <CSR file> -CA rootCAchain.pem -CAkey rootCAchain.key -CAcreateserial -out signedcertificate.pem -days 370 -sha256 -extfile openssl.cnf -extensions signedCA_ext```
1. Upload the signed certificates according to the steps in [Create a CSR and upload the signed certificate for TLS termination](#step-1-global-secure-access-admin-create-a-csr-and-upload-the-signed-certificate-for-tls-termination).
 
## Related content
 
```openssl req -x509 -new -nodes -newkey rsa:4096 -keyout rootCAchain.key -sha256 -days 370 -out rootCAchain.pem -subj "/C=US/ST=US/O=Self Signed/CN=Self Signed Root CA" -config openssl.cnf -extensions rootCA_ext```
1. Sign the CSR using the following command:
```openssl x509 -req -in <CSR file> -CA rootCAchain.pem -CAkey rootCAchain.key -CAcreateserial -out signedcertificate.pem -days 370 -sha256 -extfile openssl.cnf -extensions signedCA_ext```
1. Upload the signed certificates (```signedcertificate.pem```and ```rootCAchain.pem```) according to the steps in [Create a CSR and upload the signed certificate for TLS termination](#step-1-global-secure-access-admin-create-a-csr-and-upload-the-signed-certificate-for-tls-termination).
 
## Related content
 
Modified by Diana Richards on Aug 12, 2025 2:24 PM
πŸ“– View on learn.microsoft.com
+1 / -1 lines changed
Commit: Update docs/identity-platform/single-and-multi-tenant-apps.md
Changes:
Before
After
 
| Audience | Single/multi-tenant | Who can sign in |
| -------- | ------------------- | --------------- |
| Accounts in this directory only | Single tenant | All user and guest accounts in your directory can use your application or API.<br>Use this option if your target audience is internal to your organization. <br> Use if building an app registration for a 3rd party that instructs you to build your own App Registration for their app. |
| Accounts in any Microsoft Entra directory | Multitenant | All users and guests with a work or school account from Microsoft can use your application or API. This includes schools and businesses that use Microsoft 365.<br>Use this option if your target audience is business or educational customers. |
| Accounts in any Microsoft Entra directory and personal Microsoft accounts (such as Skype, Xbox, Outlook.com) | Multitenant | All users with a work or school, or personal Microsoft account can use your application or API. It includes schools and businesses that use Microsoft 365 as well as personal accounts that are used to sign in to services like Xbox and Skype.<br>Use this option to target the widest set of Microsoft accounts. |
 
 
| Audience | Single/multi-tenant | Who can sign in |
| -------- | ------------------- | --------------- |
| Accounts in this directory only | Single tenant | All user and guest accounts in your directory can use your application or API.<br>Use this option if your target audience is internal to your organization. <br> Use if building an app registration for a third party that instructs you to build your own app registration for their app. |
| Accounts in any Microsoft Entra directory | Multitenant | All users and guests with a work or school account from Microsoft can use your application or API. This includes schools and businesses that use Microsoft 365.<br>Use this option if your target audience is business or educational customers. |
| Accounts in any Microsoft Entra directory and personal Microsoft accounts (such as Skype, Xbox, Outlook.com) | Multitenant | All users with a work or school, or personal Microsoft account can use your application or API. It includes schools and businesses that use Microsoft 365 as well as personal accounts that are used to sign in to services like Xbox and Skype.<br>Use this option to target the widest set of Microsoft accounts. |
 
Modified by Chris Werner on Aug 12, 2025 2:09 PM
πŸ“– View on learn.microsoft.com
+1 / -1 lines changed
Commit: Update reference-saml-tokens.md
Changes:
Before
After
> |Name | `unique_name` |Provides a human readable value that identifies the subject of the token. This value is not guaranteed to be unique within a tenant and is designed to be used only for display purposes. | `<Attribute Name="http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name">`<br>`<AttributeValue>[email protected]<AttributeValue>`|
> |Object ID | `oid` |Contains a unique identifier of an object in Microsoft Entra ID. This value is immutable and cannot be reassigned or reused. Use the object ID to identify an object in queries to Microsoft Entra ID. | `<Attribute Name="http://schemas.microsoft.com/identity/claims/objectidentifier">`<br>`<AttributeValue>bbbbbbbb-1111-2222-3333-cccccccccccc<AttributeValue>` |
> |Roles | `roles` |Represents all application roles that the subject has been granted both directly and indirectly through group membership and can be used to enforce role-based access control. Application roles are defined on a per-application basis, through the `appRoles` property of the application manifest. The `value` property of each application role is the value that appears in the roles claim. | `<Attribute Name="http://schemas.microsoft.com/ws/2008/06/identity/claims/role">`|
> |Subject | `sub` |Identifies the principal about which the token asserts information, such as the user of an application. This value is immutable and cannot be reassigned or reused, so it can be used to perform authorization checks safely. Because the subject is always present in the tokens the Microsoft Entra ID issues, we recommended using this value in a general purpose authorization system. <br> `SubjectConfirmation` is not a claim. It describes how the subject of the token is verified. `Bearer` indicates that the subject is confirmed by their possession of the token. | `<Subject>`<br>`<NameID>S40rgb3XjhFTv6EQTETkEzcgVmToHKRkZUIsJlmLdVc</NameID>`<br>`<SubjectConfirmation Method="urn:oasis:names:tc:SAML:2.0:cm:bearer" />`<br>`</Subject>`|
> |Tenant ID | `tid` |An immutable, non-reusable identifier that identifies the directory tenant that issued the token. You can use this value to access tenant-specific directory resources in a multi-tenant application. For example, you can use this value to identify the tenant in a call to the Graph API. | `<Attribute Name="http://schemas.microsoft.com/identity/claims/tenantid">`<br>`<AttributeValue>aaaabbbb-0000-cccc-1111-dddd2222eeee<AttributeValue>`|
> |Token Lifetime | `nbf`, `exp` |Defines the time interval within which a token is valid. The service that validates the token should verify that the current date is within the token lifetime, else it should reject the token. The service might allow for up to five minutes beyond the token lifetime range to account for any differences in clock time ("time skew") between Microsoft Entra ID and the service. | `<Conditions`<br>`NotBefore="2013-03-18T21:32:51.261Z"`<br>`NotOnOrAfter="2013-03-18T22:32:51.261Z"`<br>`>` <br>|
 
> |Name | `unique_name` |Provides a human readable value that identifies the subject of the token. This value is not guaranteed to be unique within a tenant and is designed to be used only for display purposes. | `<Attribute Name="http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name">`<br>`<AttributeValue>[email protected]<AttributeValue>`|
> |Object ID | `oid` |Contains a unique identifier of an object in Microsoft Entra ID. This value is immutable and cannot be reassigned or reused. Use the object ID to identify an object in queries to Microsoft Entra ID. | `<Attribute Name="http://schemas.microsoft.com/identity/claims/objectidentifier">`<br>`<AttributeValue>bbbbbbbb-1111-2222-3333-cccccccccccc<AttributeValue>` |
> |Roles | `roles` |Represents all application roles that the subject has been granted both directly and indirectly through group membership and can be used to enforce role-based access control. Application roles are defined on a per-application basis, through the `appRoles` property of the application manifest. The `value` property of each application role is the value that appears in the roles claim. | `<Attribute Name="http://schemas.microsoft.com/ws/2008/06/identity/claims/role">`|
> |Subject | `sub` |Identifies the principal about which the token asserts information, such as the user of an application. The subject is always present in the SAML token that Microsoft Entra ID issues. Depending on the [NameID format](/entra/identity-platform/saml-claims-customization#nameid-format), this value *may* be used to identify the subject in a general-purpose authorization system (see [risks when using email address for authorization](https://msrc.microsoft.com/blog/2023/06/potential-risk-of-privilege-escalation-in-azure-ad-applications/)).<br> `SubjectConfirmation` is not a claim. It describes how the subject of the token is verified. `Bearer` indicates that the subject is confirmed by their possession of the token. | `<Subject>`<br>`<NameID>S40rgb3XjhFTv6EQTETkEzcgVmToHKRkZUIsJlmLdVc</NameID>`<br>`<SubjectConfirmation Method="urn:oasis:names:tc:SAML:2.0:cm:bearer" />`<br>`</Subject>`|
> |Tenant ID | `tid` |An immutable, non-reusable identifier that identifies the directory tenant that issued the token. You can use this value to access tenant-specific directory resources in a multi-tenant application. For example, you can use this value to identify the tenant in a call to the Graph API. | `<Attribute Name="http://schemas.microsoft.com/identity/claims/tenantid">`<br>`<AttributeValue>aaaabbbb-0000-cccc-1111-dddd2222eeee<AttributeValue>`|
> |Token Lifetime | `nbf`, `exp` |Defines the time interval within which a token is valid. The service that validates the token should verify that the current date is within the token lifetime, else it should reject the token. The service might allow for up to five minutes beyond the token lifetime range to account for any differences in clock time ("time skew") between Microsoft Entra ID and the service. | `<Conditions`<br>`NotBefore="2013-03-18T21:32:51.261Z"`<br>`NotOnOrAfter="2013-03-18T22:32:51.261Z"`<br>`>` <br>|
 

πŸ—‘οΈ Deleted Documentation Files

DELETED docs/fundamentals/zero-trust-protect-networks.md
Deleted by shlipsey3 on Aug 12, 2025 7:39 PM
πŸ“– Was available at: https://learn.microsoft.com/en-us/entra/fundamentals/zero-trust-protect-networks
-0 lines removed
Commit: cleanup
DELETED docs/fundamentals/zero-trust-protect-tenants.md
Deleted by shlipsey3 on Aug 12, 2025 7:39 PM
πŸ“– Was available at: https://learn.microsoft.com/en-us/entra/fundamentals/zero-trust-protect-tenants
-0 lines removed
Commit: cleanup