![如何在 Windows 事件中记录 IIS 8 客户端身份验证错误?](https://linux22.com/image/619575/%E5%A6%82%E4%BD%95%E5%9C%A8%20Windows%20%E4%BA%8B%E4%BB%B6%E4%B8%AD%E8%AE%B0%E5%BD%95%20IIS%208%20%E5%AE%A2%E6%88%B7%E7%AB%AF%E8%BA%AB%E4%BB%BD%E9%AA%8C%E8%AF%81%E9%94%99%E8%AF%AF%EF%BC%9F.png)
我们有一个托管在 IIS 8 上的内部 Web 应用程序,它通过 HTTPS 公开一些 REST 服务。由于它被其他应用程序访问,因此我们需要客户端证书。由于客户端证书缺失或错误,我们遇到了一些身份验证失败的情况,但我们需要将它们记录为 Windows 事件,以便我们可以使用我们的监控基础架构。我们如何正确配置在 Windows Server 2012 上运行的 IIS 8,以转发客户端证书身份验证失败错误,以便它们出现在 Windows 事件中?是否需要安装和运行任何特殊的服务器功能才能使其正常工作?
答案1
据我所知,没有内置方法将任何与 IIS 请求相关的错误转发到 Windows 事件日志。
与证书相关的错误应以特殊子代码 (403.7,403.13,403.16,403.17) 的形式显示在 http 日志中,因此您可以编写一个简短的 PowerShell 脚本,每小时运行一次,浏览所有日志文件并查找这些子代码。然后针对每个匹配的请求或汇总摘要,将条目写入 Windows 事件日志。