管理员审核日志记录概述

 

适用于: Exchange Server 2010 SP2, Exchange Server 2010 SP3

上一次修改主题: 2015-03-09

您可以使用 Microsoft Exchange Server 2010 中的管理员审核日志记录功能来记录由用户或管理员执行的在您的组织中进行更改的操作。 通过实施更改日志,您可以从更改追踪到进行更改的人员。 您还可以使用实施更改时的详细更改记录来补充您的更改日志,使用这些记录来满足法规要求和披露请求,等等。

默认情况下,在新安装的 Microsoft Exchange Server 2010 Service Pack 1 (SP1) 中会启用审核日志记录。

审核内容

对直接在 Exchange 命令行管理程序 中运行的 cmdlet 会进行审核。 此外,还会记录使用 Exchange 管理控制台 (EMC) 和 Exchange Web 管理界面执行的操作,因为这些操作在后台运行 cmdlet。

如果某个 cmdlet 位于 cmdlet 审核列表上并且该 cmdlet 的一个或多个参数位于参数审核列表上,则无论 cmdlet 在何处运行,都会对其进行审核。 不记录 Get-Search- cmdlet。 审核日志记录旨在显示为修改 Exchange 组织中的对象而执行了哪些操作,而不是显示查看了哪些对象。

重要重要说明:
如果某个 cmdlet 调用管理审核日志 cmdlet 扩展代理之前发生错误,则可能不会记录该 cmdlet。 如果在调用管理审核日志代理之后发生了错误,则会记录该 cmdlet 以及相关错误。 有关详细信息,请参阅本主题后面的管理审核日志代理一节。
不会记录使用 Microsoft Exchange Server 2007 管理工具进行的更改。
在打开了命令行管理程序的计算机上,在对审核日志配置进行更改之后,所做的更改会每隔 60 分钟刷新一次。 如果想要立即应用所做的更改,请在每台计算机上关闭并重新打开命令行管理程序。

审核日志记录配置

默认情况下,如果启用了审核日志记录,则每次运行任何 cmdlet(除了 Get-Search- cmdlet)时,都会创建一个日志条目。 如果不想对所运行的每个 cmdlet 进行审核,则可以将审核日志记录配置为仅对您感兴趣的 cmdlet 和参数进行审核。请用 Set-AdminAuditLogConfig cmdlet 配置审核日志记录。 以下各部分中引用的参数可与此 cmdlet 配合使用。

重要重要说明:
无论 Set-AdministratorAuditLog cmdlet 是否包括在要审核的 cmdlet 列表中,也无论是启用还是禁用了审核日志记录,始终都会记录对管理员审核日志配置进行的更改。

运行命令后,Exchange 将检查所使用的 cmdlet。 如果所运行的 cmdlet 与随 AdminAuditLogConfigCmdlets 参数提供的任何 cmdlet 匹配,则 Exchange 随后将检查在 AdminAuditLogConfigParameters 参数中指定的参数。 如果参数列表中至少有一个或多个参数匹配,则 Exchange 将记录在使用 AdminAuditLogMailbox 参数指定的邮箱中运行的 cmdlet。

备注

对于 Exchange 2010 正式发布 (RTM) 版,您可以指定管理员审核日志邮箱。 Exchange 2010 SP1 中的管理员审核日志记录使用专用邮箱。 不能更改或配置此专用邮箱。

以下各部分详细介绍审核日志记录配置的各个方面。

有关如何管理审核日志记录配置的详细信息,请参阅配置管理员审核日志记录

Cmdlet

通过提供要记录的 cmdlet 及其参数的列表,可以控制要审核哪些 cmdlet。 配置审核日志记录时,可以指定审核每个 cmdlet,也可以使用 AdminAuditLogConfigCmdlets 参数指定要审核的 cmdlet。 可以指定完整 cmdlet 名称(如 New-Mailbox),也可以指定部分 cmdlet 名称并在通配符(如星号 *)中包含这些名称。 例如,如果要记录任何包含字符串 Transport 的 cmdlet 何时运行,可以指定一个 *Transport* 值。 可以同时混合使用完整 cmdlet 名称和部分 cmdlet 名称,以使审核日志记录符合您的需要。

参数

除了指定要记录哪些 cmdlet 之外,还可以指明只有在使用这些 cmdlet 中的某些参数时才应记录这些 cmdlet。 使用 AdminAuditLogConfigParameters 参数指定应记录哪些参数。 与 cmdlet 一样,可以指定完整参数名称(如 Database),也可以将部分参数名称包含在通配符 (*) 中(如 *Address*)或采用二者的组合形式。

审核日志期限

默认情况下,审核日志记录配置为将审核日志条目存储 90 天。 90 天后将删除审核日志条目。 您可以使用 AdminAuditLogAgeLimit 参数更改审核日志期限。 可以指定审核日志条目应保留的天数、小时数、分钟数和秒数。 若要指定值,请使用 dd.hh:mm:ss 格式,其中应用了以下条件:

  • dd   保留审核日志条目的天数。

  • hh   保留审核日志条目的小时数。

  • mm   保留审核日志条目的分钟数。

  • ss   保留审核日志条目的秒数。

您必须使用 dd 字段指定多年时间。 例如,365 天等于一年;730 天等于两年;913 天等于两年零六个月。 例如,若要将审核日志期限设置为两年零六个月,请使用语法 913.00:00:00

警告

可以将审核日志期限设置为小于当前期限的值。 如果执行此操作,则会删除寿命超过新期限的所有审核日志条目。
如果将期限设置为 0,则 Exchange 会删除审核日志中的所有条目。
建议您仅向高度信任的用户授予配置审核日志期限的权限。

测试 cmdlet

默认情况下,不记录以谓词 Test 开头的 cmdlet。 可以通过将 TestCmdletLoggingEnabled 参数设置为 $true,来指示应记录 Test cmdlet。 虽然可以启用测试 cmdlet 的日志记录,但是建议您只在短时间内执行此操作。 这是因为测试 cmdlet 可能会生成大量信息。

审核日志

每次记录 cmdlet 时,都会创建审核日志条目。 审核日志存储在一个隐藏的专用仲裁邮箱中,该邮箱只能使用 Exchange 控制面板 (ECP)“审核报告”页或者 Search-AdminAuditLogNew-AdminAuditLogSearch cmdlet 进行访问。 无法使用 Microsoft Office Outlook Web App 或 Microsoft Outlook 打开审核日志。 以下各节提供了有关以下内容的信息:

  • 日志中包含的内容

  • ECP“审核报告”页上的可用报告

  • 审核日志搜索 cmdlet

备注

对于 Exchange 2010 正式发布 (RTM) 版,您可以指定管理员审核日志邮箱。 Exchange 2010 SP1 中的管理员审核日志记录使用专用邮箱。 不能更改或配置此专用邮箱。
ECP“审核报告”页以及 Search-AdminAuditLogNew-AdminAuditLogSearch cmdlet 仅适用于 Exchange 2010 SP1 管理员审核日志。 若要查看 Exchange 2010 RTM 审核日志邮箱的内容,您必须使用 Outlook Web App 或电子邮件客户端(如 Outlook)打开该邮箱。

审核日志内容

每个审核日志条目都包含下表所述的信息。 审核日志包含一个或多个审核日志条目。 审核日志条目数是由使用 Set-AdminAuditLog cmdlet 指定的审核日志期限控制的。 超过期限的任何审核日志条目都会被删除。

审核日志条目字段

字段 说明

RunspaceId

此字段由 Exchange 在内部使用。

ObjectModified

此字段包含由 CmdletName 字段中指定的 cmdlet 修改的对象。

CmdletName

此字段包含由 Caller 字段中的用户运行的 cmdlet 的名称。

CmdletParameters

此字段包含在运行 CmdletName 字段中的 cmdlet 时指定的参数。 使用参数指定的值(如果有)也存储在此字段中,但是在默认输出中不可见。 有关如何访问此字段中的其他信息的详细信息,请参阅搜索管理员审核日志

ModifiedProperties

此字段包含在 ObjectModified 字段中的对象上修改的属性。 属性的旧值和存储的新值也存储在此字段中,但是在默认输出中不可见。 有关如何访问此字段中的其他信息的详细信息,请参阅搜索管理员审核日志

Caller

此字段包含运行 CmdletName 字段中的 cmdlet 的用户的用户帐户。

Succeeded

此字段指定是否成功运行了 CmdletName 字段中的 cmdlet。 值为 TrueFalse

Error

此字段包含在 CmdletName 字段中的 cmdlet 未能成功完成时生成的错误消息。

RunDate

此字段包含运行 CmdletName 字段中的 cmdlet 时的日期和时间。 日期和时间存储为协调世界时 (UTC) 格式。

Identity

此字段由 Exchange 在内部使用。

IsValid

此字段由 Exchange 在内部使用。

ECP 审核报告

ECP 中的“审核报告”页包括若干个报告,提供有关各种类型的遵从性和管理配置更改的信息。 以下报告提供有关您组织中的配置更改的信息:

  • 管理员角色更改   使用此报告可以搜索在指定时间段内对指定管理角色组所做的更改。 返回的结果包括已更改的角色组、更改这些角色组的人员和时间以及进行了哪些更改。 最多可以返回 3,000 个条目。 如果搜索返回的条目可能超过 3,000 个,请使用“导出配置更改”报告或 Search-AdminAuditLog cmdlet。

  • 导出配置更改   使用此报告可以将指定时间段内记录的审核日志条目导出到一个 XML 文件,然后通过电子邮件将该文件发送给您指定的收件人。 有关 XML 文件内容的详细信息,请参阅管理员审核日志结构

有关如何使用这些报告的信息,请参阅搜索管理员审核日志

“审核报告”页上还包括针对诉讼保留、邮箱配置更改和非所有者邮箱访问的报告。 有关这些报告的详细信息,请参阅:

Search-AdminAuditLog cmdlet

在运行 Search-AdminAuditLog cmdlet 时,会返回与指定的搜索条件匹配的所有审核日志条目。 可以指定以下搜索条件:

  • Cmdlet   指定要在管理员审核日志中搜索的 cmdlet。

  • 参数   指定要在管理员审核日志中搜索的参数。 仅当指定了要搜索的 cmdlet 时,才能搜索参数。

  • 结束日期   将管理员审核日志结果的范围限定为在指定日期当天或之前生成的日志条目。

  • 开始日期   将管理员审核日志结果的范围限定为在指定日期当天或之后生成的日志条目。

  • 对象 ID   指定仅返回包含指定更改对象的管理员审核日志条目

  • 用户 ID   指定仅返回包含运行 cmdlet 的用户的指定 ID 的管理员审核日志条目。

  • 成功完成   指定是应该仅返回指示成功的管理员审核日志条目,还是仅返回指示失败的管理员审核日志条目。

返回的每个审核日志条目都包含审核日志内容中的表所述的信息。 默认情况下,仅返回与指定条件匹配的前 1,000 个日志条目。 不过,可以使用 ResultSize 参数覆盖此默认设置并返回更多或更少的条目。 可以使用 ResultSize 参数指定值 Unlimited,以返回与指定条件匹配的所有日志条目。

有关如何使用 Search-AdminAuditLog cmdlet 的信息,请参阅搜索管理员审核日志

New-AdminAuditLogSearch cmdlet

New-AdminAuditLogSearch cmdlet 如同 Search-AdminAuditLog cmdlet 一样,用于搜索审核日志。 然而,New-AdminAuditLogSearch cmdlet 会执行搜索,然后通过电子邮件将搜索结果发送给指定的收件人,而不是在命令行管理程序中显示审核日志搜索的结果。 结果作为 XML 附件包含在电子邮件中。

可以对 New-AdminAuditLogSearch cmdlet 使用与 Search-AdminAuditLog cmdlet 相同的搜索条件。 有关搜索条件的列表,请参阅 Search-AdminAuditLog cmdlet。

在运行 New-AdminAuditLogSearch cmdlet 之后,Exchange 可能最多需要 15 分钟将报告传递给指定收件人。 附加了 XML 文件的报告最大可以为 10 MB。 XML 文件包含审核日志内容中的表所述的相同信息。 有关 XML 文件结构的详细信息,请参阅管理员审核日志结构

备注

默认情况下,Outlook Web App 不允许你打开 XML 附件。您可以将 Exchange 配置为允许使用 Outlook Web App 查看 XML 附件,也可以使用其他电子邮件客户端(例如,Microsoft OfficeOutlook)查看该附件。有关如何配置 Outlook Web App 以允许您查看 XML 附件的信息,请参阅查看或配置 Outlook Web 应用程序虚拟目录

有关如何使用 New-AdminAuditLogSearch cmdlet 的信息,请参阅搜索管理员审核日志

手动审核日志条目

除了在 Exchange cmdlet 运行时对其进行记录以外,Exchange 2010 SP1 还允许您将日志条目手动写入审核日志。 Exchange 2010 SP1 使用 Write-AdminAuditLog cmdlet 支持此功能。 可能需要添加手动日志条目的情况包括以下几种:

  • 自定义脚本进入和退出

  • 更改控制信息

  • 维护开始和结束时间

对于 Write-AdminAuditLog cmdlet,您可以使用 Comment 参数指定要包括在审核日志中的文本字符串。 Comment 参数接受的字母数字字符串最多可包含 500 个字符。 手动审核日志条目中包含的内容以及注释字符串便是在记录 Exchange cmdlet 时捕获的信息。 有关审核日志中包括的每个字段的描述,请参阅审核日志内容中的表。

可以使用 ECP“审核报告”页或者使用 Search-AdminAuditLogNew-AdminAuditLogSearch cmdlet,按照与检索任何其他日志条目相同的方式来检索手动审核日志条目。

若要查看手动审核日志条目中 Write-AdminAuditLog cmdlet 的 Comment 参数的内容,请参阅搜索管理员审核日志

Active Directory 复制

管理员审核日志记录依赖 Active Directory 复制功能将指定的配置设置复制到组织的域控制器中。 根据复制设置,所做的更改可能无法立即应用于组织中所有运行 Exchange 2010 的服务器。

管理审核日志代理

Admin Audit Log 内置 cmdlet 扩展代理执行对 Exchange 2010 中 cmdlet 操作的管理员审核日志记录。 此代理读取审核日志配置,然后对组织中运行的每个 cmdlet 执行评估。 如果您在审核日志配置中指定的条件与所运行的 cmdlet 匹配,则代理会生成审核日志。

默认情况下启用 Admin Audit Log 代理,此代理对于审核日志记录正常工作至关重要。 不能将其禁用,并且不能更改其优先级。 有关 cmdlet 扩展代理的详细信息,请参阅了解 Cmdlet 扩展代理

管理审核日志如何会导致数据库快速增长

默认情况下,Exchange Server 2010 中启用了管理审核日志。日志结果存储在 AdminAuditLogs 文件夹中的仲裁邮箱中。 如果频繁地在 Exchange 命令行管理程序中执行 cmdlet,则会生成大量日志条目,并且可能导致数据库的大小快速增长。 即使不存在用户邮箱,也可能会发生此行为。

要确定 AdminAuditLogs 文件夹的大小,请在 Exchange 命令行管理程序中运行以下 cmdlet: Get-MailboxFolderstatistics “仲裁邮箱的 Guid” -FolderScope RecoverableItems –IncludeAnalysis。 接下来,查看 AdminAuditLogs 文件夹的项数和大小。

如果 AdminAuditLogs 文件夹的项数和大小很高,请运行以下 cmdlet 以删除该文件夹中的项: Search-Mailbox 仲裁邮箱的 Guid -Dumpsteronly -deletecontent

频繁执行的 cmdlet 可能会导致数据库增长。 通常,该 cmdlet 在安排为定期运行的脚本中。 请查明正在导致管理审核日志增长的 cmdlet。 在确认可以从管理审核日志中排除该 cmdlet 后,在 Exchange 命令行管理程序中运行以下 cmdlet: Set-AdminAuditLogConfig AdminAuditLogExcludedCmdlets cmdlet 名称。 例如,运行以下 cmdlet: Set-AdminAuditLogConfig AdminAuditLogExcludedCmdlets Add-DistributionGroupMember。在运行该 cmdlet 后,您必须等待复制完成。