安全事件日志已满时,用户无法访问网站

本文可帮助你解决用户在安全事件日志已满时无法访问网站的问题。

原始产品版本: Internet Information Services
原始 KB 数: 832981

总结

CrashOnAuditFail 功能是一个注册表项,可以设置为确保所有可审核的事件都记录在安全事件日志中。 如果无法将可审核的事件记录到安全事件日志中,将发生停止错误(STOP 0xC0000244)。 停止错误通常是因为安全事件日志已满。 发生停止错误后,非管理员帐户无法访问网站,Microsoft Internet Information Services (IIS)将返回 HTTP 500 错误消息,直到 CrashOnAuditFail 密钥重置并清除安全事件日志。

现象

访问服务器上的网站时,会收到以下错误消息之一。

  • 错误消息 1

    HTTP 500 - 内部服务器错误

  • 错误消息 2

    HTTP 错误 401.1 - 未经授权的:由于凭据无效,拒绝访问。

  • 错误消息 3

    无法联系本地安全机构。

  • 在浏览器中关闭友好错误消息时,可能还会收到以下错误消息:

    登录失败:不允许用户登录到此计算机。

原因

如果安全事件日志已达到最大日志大小,并且事件日志包装设置设置为覆盖 Older thanXDays 或 Do Not Overwrite Events则会出现此问题。 由于安全事件日志已满,并且 设置了 CrashOnAuditFail 注册表项,Microsoft Windows 不允许非管理员帐户的帐户登录。 配置匿名访问后,对网站的请求会尝试使用 IUSR_computername 和 IWAM_computername 帐户进行身份验证。 这些帐户不是管理员帐户。

解决方法

重要

此部分(或称方法或任务)介绍了修改注册表的步骤。 但是,注册表修改不当可能会出现严重问题。 因此,按以下步骤操作时请务必谨慎。 作为额外保护措施,请在修改注册表之前先将其备份。 如果之后出现问题,您就可以还原注册表。 有关如何备份和还原注册表的详细信息,请参阅:如何备份和还原 Windows 中的注册表

若要解决此问题,请执行以下步骤:

  1. 保存并清除安全事件日志。

  2. 启动“注册表编辑器”。

  3. 找到以下键,然后将此键的值设置为 1

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\CrashOnAuditFail

  4. 重新启动服务器。 在重启服务器之前,注册表更改不会生效。

详细信息

CrashOnAuditFail 注册表项提供可选的安全功能,系统管理员可以使用此功能查看所有安全事件。 CrashOnAuditFail 密钥的有效值为 0、1 和 2。 数据选项包括:

  • 0 - 任何人都可以登录。 这是默认值。

  • 1 - 如果系统可以审核事件并将事件写入安全事件日志,任何人都可以登录。 如果安全事件日志已满,则 CrashOnAuditFail 密钥的值将更改为 2,服务器崩溃。

  • 2 - 只有管理员才能登录。

当安全事件日志已满时,服务器会自行锁定,以免错过可审核的事件。 可以使用以下方法之一来阻止服务器锁定。 但是,请注意,防止服务器锁定会失败 CrashOnAuditFail 密钥的目的

备注

仅以下方法都无法解决问题。 在使用这些方法之一之前,必须遵循“解决方案”部分中的步骤

  • 事件日志包装 设置设置为 根据需要覆盖事件。

  • 限制已审核的事件数或类型,或完全禁用审核。

  • 将以下注册表项的值设置为 0

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\CrashOnAuditFail