2012-11-16 54 views
2

我在运行Windows Server 2008的计算机上安装了Jenkins安装程序.Jenkins安装使用基于矩阵的安全授权的Jenkins自己的用户数据库进行安全保护。匿名用户无权访问,除非注册帐户。我已经建立了一个帐户,并为此帐户提供了完全访问权限。远程访问安全Jenkins服务器

现在我想从托管存储库的其他机器远程触发构建。我相信这应该可以通过访问以下URL:

https://[username]:[user_api_token]@[address.of.jenkins]:8080/job/[project]/build?token=[project_api_token] 

但是,这似乎并没有为我工作。当我在浏览器中访问此网站时,Jenkins转发到登录页面,并且不启动构建。

我在做什么错?这似乎是一个身份验证问题,因为我在打开上面的URL后没有登录。此外,如果我授予匿名用户完全访问权限,则该URL起作用。

+0

你还没有指定詹金斯的哪个版本。 doco描述了wget版本的问题(如果这是你使用的)。 https://wiki.jenkins-ci.org/display/JENKINS/Authenticating+scripted+clients –

+0

谢谢,我正在使用Jenkins 1.490。我使用的是常规的网络浏览器(Chrome是特定的)来访问URL。我相信这应该是有效的。 – goldfish

回答

0

尝试从一个命令行程序一样卷曲调用编译:

curl http://[userid]:[user_token]@localhost:8080/job/[project]/build?token=[proj_token] 

curl --user [userid]:[user_token] http://localhost:8080/job/[project]/build?token=[proj_token] 

我觉得你的问题可能是浏览器相关的URL中嵌入凭据(火狐弹出在我的情况警告告诉我,我即将登录到詹金斯)