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