我在 Windows 服务器上使用 Tortoise SVN,并尝试不存储用户名/密码。我发现如果我更改启用%appdata%\Subversion\config
以下功能,则会出现以下问题:
store-passwords = no
store-auth-creds = no
但这是用户层面的。
我想应用这个,但在服务器级别我该怎么做?当我对文件进行相同的更改时servers.config
-%appdata%\Subversion\servers
更改不会应用。有什么原因吗?我这里漏掉了什么步骤吗?
我将以下更改应用到文件servers.config
:
store-passwords = no
store-auth-creds = no
store-plaintext-passwords = no
我想在服务器级别应用这些更改,以便任何尝试使用 Tortoise SVN 保存其凭据的用户都禁用所有用户的保存选项。
答案1
不,这不可能。Subversion 服务器无法控制客户端操作、如何存储和显示凭据等等。
除此之外,即使您设法以某种方式限制 TortoiseSVN(例如通过在客户端操作系统上设置限制),其他 SVN 客户端也存在,它们有自己的设置。用户可以简单地使用另一个客户端,如工具svn
(官方 Subversion 客户端)来绕过您的限制。该客户端还包括--config-dir
使用其他位置存放配置文件的选项,因此尝试锁定其默认配置目录不会有帮助。
您必须重新考虑您的安全方法。 每次与存储库同步时输入凭据确实很烦人,前提是您经常同步,这是现代开发建议;必须可以采用一些机制来简化这一过程,减轻用户的负担。例如,通过 SSH 的 SVN 可以使用基于 SSH 密钥的身份验证和密钥代理;SVN over HTTPS 能够使用客户端证书认证(不确定 Tortoise 是否支持它)等等。