TMAegis
More rules for m365

Microsoft 365

TMA-M365-USER-CONSENT

Ensure users cannot consent to applications accessing company data

HighLevel 2Automatedm365

Description

Illicit consent grants let malicious OAuth apps read mail and files without a password. Compliant when no self-service permission grant policy (ManagePermissionGrantsForSelf.*) is assigned to the default user role. Requires an already-connected Microsoft Graph session: Install-Module Microsoft.Graph; Connect-MgGraph -Scopes Policy.Read.All,Directory.Read.All,RoleManagement.Read.Directory (read-only scopes). The audit throws if no session exists.

How it is checked

Audit method: Shell command

shell
$ErrorActionPreference = 'Stop'; if (-not (Get-Command Get-MgContext -ErrorAction SilentlyContinue) -or -not (Get-MgContext)) { throw 'Not connected: run Connect-MgGraph first' }; $p = Get-MgPolicyAuthorizationPolicy -ErrorAction Stop; $self = @($p.DefaultUserRolePermissions.PermissionGrantPoliciesAssigned | Where-Object { $_ -like 'ManagePermissionGrantsForSelf.*' }); if ($self.Count -eq 0) { 'compliant' } else { 'noncompliant' }
Expected output
compliant

How it is fixed

Fix method: Guidance or infrastructure patch

Entra admin center > Enterprise applications > Consent and permissions > User consent settings > Do not allow user consent, and enable the admin consent workflow.

Properties

Operating systems
Any
Tags
m365identity
Reference
CIS Microsoft 365 Foundations Benchmark v7.0.0 - Microsoft Entra ID / Enterprise applications - user consent (verify section number for your release)

Check this host

Run this on a machine you are allowed to audit. The scan is read-only.

shell
tmaegis scan --target m365 --level 2