Implementation guidance for Australian Essential Eight controls in Microsoft environments - ISM controls with PSPF mappings
| Property | Value |
|---|---|
| ISM Control | ISM-1683 |
| Revision | 2 |
| Updated | Dec-23 |
| Guideline | Not provided |
| Section | Authentication hardening |
| Topic | Multi-factor authentication |
| Essential Eight | ML2, ML3 |
| PSPF Levels | NC, OS, P, S, TS |
Centralized logging of successful and unsuccessful Microsoft Entra MFA events enables auditing, monitoring, and rapid incident response. Entra ID logs can be forwarded to a Log Analytics workspace via Diagnostic Settings for long-term retention and centralized analysis.12
Centralised logging of MFA events is essential for early detection of:
Without centralised retention you have no ability to conduct retrospective forensic investigations or satisfy PSPF auditing obligations. The minimum 1-year retention (requiring Audit Premium / E5 licensing) satisfies the ISM event log requirement. For AFDA Express PSPF record-keeping obligations — typically 7 years for security administration records under class 62625 — the 10-Year Audit Log Retention per-user add-on licence is required in addition to an E5 licence.
[!NOTE] The 7 year retention log policy will be applied to the Microsoft 365 Unified Audit log. The 10-Year Audit Log licences will be enabled and group based assignment will be applied so that all enabled accounts automatically receive these licences, and Entra ID Diagnostic Settings will be configured to save all logs to a log analytics workspace.
License requirements for extended audit-log retention:
| Retention duration | Licensing requirement |
|---|---|
| 180 days (default; was 90 days before October 17, 2023) | Any Microsoft 365 subscription — Audit (Standard) included in all plans |
| Up to 1 year | Microsoft 365 E5 / Office 365 E5 / Microsoft 365 E5 Compliance add-on / E5 eDiscovery & Audit add-on — requires Audit (Premium) |
| 3, 5, 7, or 10 years | Audit (Premium) (E5) plus the Microsoft Purview 10-Year Audit Log Retention per-user add-on licence |
[!WARNING] E3 licensing provides Audit (Standard) only — 180-day retention maximum. E3 does not include Audit (Premium) and cannot be extended beyond 180 days without upgrading to E5 or adding the E5 Compliance / E5 eDiscovery & Audit licences.
E5 without the 10-Year add-on cannot exceed 1-year retention. The 3, 5, and 7-year retention period options in the policy UI all require the 10-Year Audit Log Retention add-on, not just the 10-year option.
Steps to configure 10-year retention:
[!IMPORTANT] Without the 10-Year add-on, the maximum selectable retention period is 1 year. The add-on is required to unlock the 3, 5, 7, and 10-year options in the policy UI. Assign the add-on licence to all in-scope users before creating the retention policy — the policy is not retroactive.
The SigninLogs table in Azure Log Analytics contains detailed MFA authentication data.
Successful MFA events:
SigninLogs
| where TimeGenerated >= ago(30d)
| where ResultType == 0
| where AuthenticationRequirement == "multiFactorAuthentication"
| mv-expand AuthenticationDetails = todynamic(AuthenticationDetails)
| where AuthenticationDetails.succeeded == true
| extend MFA_Method = tostring(AuthenticationDetails.authenticationMethod)
| where MFA_Method != "Previously satisfied"
| project TimeGenerated, UserPrincipalName, IPAddress, MFA_Method, Result = "Success"
Failed MFA events:
SigninLogs
| where TimeGenerated >= ago(30d)
| where ResultType != 0
| where AuthenticationRequirement == "multiFactorAuthentication"
| mv-expand AuthenticationDetails = todynamic(AuthenticationDetails)
| extend MFA_Method = tostring(AuthenticationDetails.authenticationMethod)
| extend FailureReason = tostring(ResultDescription)
| where MFA_Method != "Previously satisfied"
| project TimeGenerated, UserPrincipalName, IPAddress, MFA_Method, FailureReason, Result = "Failure"