我在Windows 2008服务器上成功安装并配置了带有LDAP支持的Subversion Edge 3.1.2.我已经配置了LDAP用户,并且能够使用LDAP凭据来处理存储库.没有任何问题.效果很好!
我想做的事:
我一直在搜索几个小时,希望找到一些有关如何配置Subversion Edge服务器以要求客户端证书进行LDAP环境的用户身份验证的信息.我还没有找到任何可以告诉我如何做的事情.我知道有SVN客户端能够提示CAC证书,但我无法弄清楚如何将我的服务器设置为需要它.
注意:CAC身份验证已在Windows环境中设置并运行.我有TortoiseSVN客户端,它启用了CAC支持.
期望的结果:
当运行需要对我的Subversion边缘服务器进行身份验证的svn命令时,我希望它提示我输入我的CAC证书而不是我的Active Directory用户名和密码.
如果有人对此有任何信息,我会非常感激.
编辑:我还在挖掘,如果我发现任何东西,我会用我发现的东西更新这个问题.我已经取得了一些进展,我相信我一直在寻找错误的信息.这显然是Apache配置问题.我将示例Apache配置中看到的SSLVerifyClient需求添加到我的httpd.conf中,现在我的SVN客户端提示我输入证书文件而不是用户名和密码.
更新2012年9月14日
好吧,我有点工作了.这不是一个颠覆问题,因为它是一个Apache配置问题.我已经走上了使用SSPI模块的道路,而且我已经按照我想要的方式工作了. Internet Explorer查看受SSL保护的站点以浏览svn存储库时仍存在一些问题.它会提示我的CAC证书很好,然后我得到一个页面,说Internet Explorer无法查看该网站.我在网上找到了一些可能解决这个问题的信息,但还没有让它发挥作用.此外,我现在遇到一些问题,AnkhSVN Visual Studio插件没有缓存客户端证书凭据.当我做各种SVN相关的事情时,我被提示太多次了.
资源:
http://www.eperezdesigns.com/blog/articles/enable-dod-cac-authentication-on-apache/
为DOD CAC配置Apache(这主要适用于我,但显然仍然存在SSL配置的Internet Explorer问题,但在Firefox中工作正常).
http://tortoisesvn.net/docs/release/TortoiseSVN_en/tsvn-serversetup-apache.html
这有用于配置Apache的各种配置信息,以便您可以使其与Windows域通信.
从FBCA Cross-Certificate Remover Tool User Guide的DISA’s guidance:
The Federal Bridge Certification Authority (FBCA) Cross-Certificate
Remover Tool is designed to help DoD organizations address the
Microsoft cross-certificate chaining issue. The issue may manifest
itself in several ways:
- Users may be unable to access DoD web sites normally accessible using certificates on their Common Access Cards (CACs)
- DoD signed emails in Outlook may appear invalid
- Users may experience extensive delays with Outlook or Internet Explorer during validation
- Users’ CAC certificates may appear to chain to a root beyond/other than DoD Root 2
- Users may receive a prompt to install the Common Policy Root Certification Authority (CA) or other roots cross-certified with the
Federal Bridge when opening a signed email from a DoD sender whose
workstation is misconfigured
运行FBCA Cross-Certificate Remover Tool以解决错误.用户指南介绍了您可能需要执行的一些其他步骤.