我有一个第三方 Web 应用程序,现在我的经理想要将智能卡身份验证添加到某些页面(而不是整个应用程序)并返回证书信息。我的想法是向这些页面添加按钮,并在onclick
事件中,我将进行客户端证书身份验证(其中将出现一个证书选择窗口,后跟“PIN”窗口)并返回证书对象以供进一步处理。
我最初考虑使用 Web 服务来执行客户端证书身份验证并返回证书信息,这会很棒,因为我们可能会考虑在其他 Web 应用程序(在不同平台上)中使用该 Web 服务。但是,我找不到任何执行此操作的代码示例。然后我找到了IIS解决方案.
我现在创建了一个单独的文件夹,其中包含需要客户端证书的页面。在按钮单击事件中,我重定向到该页面。然后在该页面上,我使用以下命令检索证书信息X509Certificate
班级。我认为这对我想做的事情没有帮助,或者至少我不知道它有什么帮助。
所以我的问题是(抱歉冗长的背景描述)
- 如何从该页面重定向回包含认证结果的页面?
- 如果可能的话,是否有关于如何构建一个 Web 服务的参考,该服务以与 IIS 相同的方式进行客户端证书身份验证?
Thanks
Update我环顾四周,仍然不知道如何实现这一目标。我不确定如何在 Web 服务的 SSL/TLS 握手阶段进行编码。我也不知道如何将认证返回到我调用此函数的页面。所以我现在想做的是从需要客户端身份验证的受保护页面进行重定向。看来网络服务器缓存了身份验证结果。这是我的第三个问题,希望有人能解答。
如何在页面会话结束时清除身份验证结果,以便每次访问该页面时都请求客户端身份验证(其中将出现一个证书选择窗口,后跟“PIN”窗口)?
如果您的应用程序托管在 IIS 中,则只需添加(在 web.config 中)一个部分,说明这些页面需要客户端证书。然后浏览器将要求用户提供证书。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)