我有一个颠覆服务器,有几个人在某个存储库上工作。我正在添加一个新用户,但对于这个新用户,我只希望他只能从“特定 IP”访问 SVN 服务器。
如果我可以通过 IP 地址限制访问,不仅特定于某个用户而且特定于存储库,每个存储库,但不是必需的,那就更好了。
我做了一些阅读,似乎应该有一些“LocationMatch”的东西我可以在SVN的httpd.conf中编辑或者添加一个关于拒绝任何然后允许来自某些IP的声明,但这会影响我认为的“所有用户”。
我想我可以为这个新用户等克隆存储库,但我宁愿让它们都在同一个“存储库”上工作,这样我就不必在存储库之间合并同步提交。
除非您的用户访问的 URL 在某种程度上与其他用户访问的 URL 不同,否则似乎没有办法在不影响其他用户的情况下阻止网络服务器/网络级别的访问。您是正确的,配置拒绝/允许会影响所有用户的网站访问。
我没有发现任何表明 SVN 支持基于每个用户的内部网络访问配置。
一些快速研究提出了一些类似的问题,如果您可以找到单个用户请求识别它们的组件,那么这个有趣的黑名单选项列表 https://perishablepress.com/eight-ways-to-blacklist-with-apaches- mod_rewrite/
我认为应该确认我很久以前已经解决的问题是公认的答案。我一直在使用 svn_access 规则和 svn_auth 的组合来解决问题并且完美地工作,这样当从某些 IP 地址访问时,访问被拒绝,而从其他 IP 地址访问被允许。此配置是使用 svn/subversion 配置文件完成的。(我正在使用 collabnet edge subversion,但我认为这不会在任何使用 apache 提供文件的 subversion 服务器上工作。)