Jenkins存储SVN凭据
开始与Jenkins玩耍。创建新工作并输入SVN存储库URL。按下的构建和jenkins成功地检出了我的存储库。我的存储库没有匿名访问。没有线索,詹金斯如何设法检出库。Jenkins存储SVN凭据
在Windows XP + Tomcat6 + Jenkins war文件上运行。
可能Jenkins设法从系统属性中读取密码?眼下试图找到这个配置文件,它存储的密码-S或设置
UPDATE
不知道,但是看起来,詹金斯宣读乌龟SVN缓存SVN凭据。当我清理缓存时,无法再从Jenkins访问存储库
事实上,它从Subversion缓存中获取它。至少,现在我知道,这不是好主意,以保存密码
Subversion会看在$HOME/.subversion
文件的凭据,但它也存储在一个名为subversion.credentials
文件中的每个任务下的密码。
通常情况下,您的Jenkins机器无法通过单纯的凡人访问,您可以使Jenkins $HOME
目录归其他用户所有。这样,您就可以使用操作系统的安全功能来防止人们偷看Jenkins证书。
另一种可能性是让Subversion为Jenkins检出用户为只读用户。这将允许Jenkins检出代码,但如果有人触发Jenkins Subversion帐户,他们将无法进行更改。
如果您还使用Jenkins标记Subversion版本,则可以使用pre-commit hook来允许Jenkins创建标记,但无法执行其他任何操作。
这应该可以缓解您的安全隐患。如果你仔细想想,詹金斯必须能够存储它的颠覆帐号和密码,否则它将无法自动检出构建代码。
确实,它从Subversion缓存中获取它。至少,现在我知道,这不是个好主意,保存密码
credentials.xml,在默认情况下,它是在〜/ .jenkins/
Jenkins将svn凭证存储在.jenkins/hudson.scm.SubversionSCM.xml中,删除旧的用户名和密码条目并将条目留空并保存该文件。 稍后重新启动jenkins并转到作业配置和存储库URL,Jenkins将提示输入新的svn凭据。 -Praveen
这是唯一对我有效的工作,之后Jenkins重新启动,然后将我的svn凭证添加回 – 2015-07-02 08:51:56
这就是这个地方! – 2016-12-19 13:02:03