我正在开发一个项目,我们必须在服务器上部署两个不同的应用程序,一个是Cognos网站,另一个是.NET网站。
现在,当请求来到Web服务器(IIS)时,它应该要求客户端证书选择,一旦您选择了客户端证书,它应该返回并检查它与任何Active Directory用户的连接位置。
基本上我想使用.NET实现使用Active Directory和客户端证书的身份验证。
感谢任何建议/方向。
答案 0 :(得分:0)
这应该是开箱即用的,没有代码。
首先,关闭网站的匿名访问和基本身份验证,然后启用集成的Windows身份验证和证书集成。
然后,在您的asp.net应用程序中,将auth模式设置为windows。
然后,为网站启用SSL并选中“需要客户端证书”选项。
http://technet.microsoft.com/pl-pl/library/cc753983%28v=ws.10%29.aspx
从现在开始,当浏览器支持证书集成身份验证并且客户端计算机在用户存储(IE)或浏览器存储(其他浏览器)中具有证书时,浏览器将自动要求用户选择证书。
我的建议是从SSL上的集成Windows身份验证开始,但不带证书(不要选中“需要客户端证书”)。使用IE进行测试并配置IIS,直到您的用户自动进行身份验证,而不会提示输入凭据。
这是最麻烦的部分。如果你有它工作,你只需打开客户证书的要求。