Information
Administrator audit logging is used to provide a log of the settings that are changed by administrators anywhere in the system.
This recommendation incorporates the following parameters into one setting:
AdminAuditLogEnabled
AdminAuditLogCmdlets
AdminAuditLogParameters
AdminAuditLogExcludedCmdlets
AdminAuditLogAgeLimit
LogLevel
Note: Changes to the audit log configuration may take up to 60 minutes to be applied on computers that have the Exchange Management Shell open at the time a configuration change is made. For changes to apply immediately, close and reopen the Exchange Management Shell on each computer.
Rationale:
Administrators may be able to reconfigure the system to expose a vulnerability with no record of the changes made.
Impact:
Additional storage space will be required when setting LogLevel to verbose, but the increase is minimal even for very large environments.
Solution
To implement the recommended state, execute the following PowerShell script:
$params = @{
AdminAuditLogEnabled = $True
AdminAuditLogCmdlets = '*'
AdminAuditLogParameters = '*'
AdminAuditLogExcludedCmdlets = $null
AdminAuditLogAgeLimit = '90.00:00:00'
LogLevel = 'Verbose'
}
Set-AdminAuditLogConfig @params
Default Value:
AdminAuditLogEnabled - True
AdminAuditLogCmdlets - *
AdminAuditLogParameters - *
AdminAuditLogExcludedCmdlets - None
AdminAuditLogAgeLimit - 90 days
LogLevel - None The CmdletName, ObjectName, Parameters (values), and the Caller, Succeeded and RunDate properties are included in log entries.