Description
The directory setting Consent Policy Settings keeps BlockUserConsentForRiskyApps set to
True. When Microsoft detects a risky user consent request (for example a newly registered,
unverified multitenant application asking for non-basic permissions), the request steps up to
admin consent instead of being granted by the user.
If the Consent Policy Settings object was never created in the tenant, the template value
(True) applies. The setting has no admin center page: it is read and changed with Microsoft
Graph only.
Rationale
The protection is on by default and only matters while user consent is allowed
(CB-M365-APPS-002 with low-risk). Turning it off removes Microsoft's detection of malicious
consent requests, which is an effective layer against consent phishing campaigns that use fresh
applications.
Impact
None known. Users who hit a risky request see that admin approval is needed and can send a request through the admin consent workflow (CB-M365-APPS-005).
Setting
| Location | Microsoft Graph directory setting "Consent Policy Settings" (template dffd5d46-495d-40a9-8e21-954ff55e198a), value BlockUserConsentForRiskyApps |
| Default | True |
| Recommended | True |
Audit
- Connect to Microsoft Graph PowerShell (beta module) as at least a Global Reader with the
Directory.Read.Allscope. - Run:
Get-MgBetaDirectorySetting -All | Where-Object TemplateId -eq 'dffd5d46-495d-40a9-8e21-954ff55e198a' | Select-Object -ExpandProperty Valuesor call GraphGET https://graph.microsoft.com/beta/settings. - If no object is returned, the default applies (
True) and the control passes. - Fail if
BlockUserConsentForRiskyAppsisFalse.
Remediation
- Connect to Microsoft Graph PowerShell (beta module) as a Privileged Role Administrator with
the
Directory.ReadWrite.Allscope. - Read the existing Consent Policy Settings object and keep its other values
(
EnableGroupSpecificConsent,ConstrainGroupSpecificConsentToMembersOfGroupId,EnableAdminConsentRequests...). - Set
BlockUserConsentForRiskyAppstoTruewithUpdate-MgBetaDirectorySetting -DirectorySettingId <id> -BodyParameter <values>, passing every value of the object.
Rollback
Set BlockUserConsentForRiskyApps back to its previous value.
References
- Configure risk-based step-up consent Microsoft, vendor-doc, accessed 2026-10-24
Mappings
| Framework | ID | Relation |
|---|---|---|
| NIST SP 800-53 Rev. 55.1.1 | CM-11 | related |
| NIST SP 800-53 Rev. 55.1.1 | SI-4 | related |
How this control relates to the other framework's: equivalent, stricter, looser, partial or related.
Threats mitigated
| Taxonomy | ID |
|---|---|
| MITRE ATT&CK | T1528 |
Related controls
- related
CB-M365-APPS-002Restrict user consent to applications - related
CB-M365-APPS-005Enable the admin consent request workflow
People and lifecycle
| Authors |
|
| Introduced in | v0.1.0 |
| Created, updated | 2026-10-24, 2026-10-24 |
| Translations | fr |