0

随机个人尝试使用安全证书访问 Intranet 站点时遇到问题。大多数用户可以简单地选择他们的智能卡/CAC 证书,输入密码,然后就可以访问该站点的页面。

然而,随机个人输入他们的密码,然后立即被 IE 警报对话框重新提示输入他们的域用户名和密码。如果他们不输入他们的网络域用户名和 MS 密码,那么他们会收到 401.1 Unauthorized。

我很困惑为什么会提示这些特定用户(他们选择与成功的证书相同的证书)输入他们的域名/密码。此外,他们能够访问需要 CAC 才能通过安全证书的其他站点。

可能无法通过特定站点的 CAC 卡建立用户令牌,但不确定原因。由于这些用户获得的是 401.1,因此与他们的 CAC 凭证相关联的身份无法验证。

在 IIS 中:不允许匿名用户(未选中)。SSL 需要 128 位加密。已选中集成 Windows 身份验证。接受客户端证书 在站点的 web.config 文件中,所有用户都被允许,只有匿名用户被拒绝。

开发盒上存在完全相同的设置,根本没有任何问题,这表明问题出在生产服务器正确接收/处理来自这些人的 CAC 信息的能力上,或者安全性方面正在发生一些奇怪的事情证书与客户的 CAC x.509 证书有关。

更多可能有用的信息:最初要求 CAC 的浏览器提示与站点代码无关,而是通过将安全证书应用于 IIS 中的站点来启用;因此向我表明,证书中写入了一些内容,通过浏览器查找与 ActivClient 代理绑定的客户端证书???

再说一次,我可能不知道我在说什么,只是在这里扔一根骨头,看看是否有人有同样的问题或有任何想法。

提前感谢您的任何意见、问题或想法。

4

4 回答 4

1

问题是一个臭名昭著的 DLL,它用于帮助解析具有许多别名(点)的长 URL。有缺陷的 DLL 已写入许多人的计算机重新映像中。违规计算机重新刷新包含 Internet Explorer 使用的称为 URLMON.dll 的旧版本 DLL。您需要的 DLL 版本应以“21073”结尾,但上面列出的错误图像中包含的版本应以“19.....”结尾。

您可以通过进入 IE7 并单击帮助 > 关于 Internet Explorer > 系统信息(底部的 btn)> Internet 设置 > Internet Explorer > 文件版本 > urlmon.dll 来确认这一点

更新此 DLL 已显示可以解决安全 SSL 站点在验证具有长 DNS 条目(例如https://something.something.something.something.something.something)的 CAC/pin 条目时出现问题的问题。

对此有一个 IE7 修补程序,但只有在您没有 ServicePack 3 时才会安装。如果您有 SP3,则无法运行所需的修补程序,b/c 它假定 SP3 已经安装了正确的动态链接库。1. 卸载 SP3 2. 重新启动 3. 安装 IE7 修补程序 4. 重新启动 5. 通过 Window MS 更新网站运行 Microsoft 更新

糟透了,但这就是像 IE 这样的蹩脚软件在有缺陷的操作系统上运行的结果,然后再加上与操作系统真正对话的能力有限的软件。

于 2010-03-09T22:28:40.800 回答
0

使用其他应用程序检查卡的功能。

还要检查证书是否有效(未过期)和其他类似的 - 相同的颁发者,PIN 未锁定等。

于 2009-09-09T12:31:19.163 回答
0

我了解您的开发环境可以按您的意愿工作,而您的生产环境则不能。

您是否尝试在另一个环境中重现错误以确认哪种行为是一致的?

于 2009-09-09T12:38:28.493 回答
0

通过绕过代理服务器解决了一个非常相似的问题。尝试将其添加到豁免列表中。

在 IE 中,转到:

工具 | 互联网选项 | 连接 | 局域网设置 | 先进的

将站点添加到豁免列表。

可能不适合你,但值得一试。就像我说的,它对我有一个非常相似的问题。

于 2009-10-22T21:57:57.640 回答