我在Ubuntu机器上安装了Jenkins并成功构建了。我希望借助Google应用程序进行身份验证。我觉得它会更好,我搜索了相应的插件,但我找不到它。这是否可以通过插件或其他方式实现?请让我知道如何做。提前致谢
您可以使用OpenID Plugin通过Google Apps实现单点登录。设置非常简单,基本上安装插件,选择“Google Apps SSO(带OpenID)”并输入您的域名。请注意,用户必须拥有Google Apps应用帐户才能登录。
提示:您可以考虑将它与Role Strategy Plugin结合使用
既然Google已弃用对OpenID的支持,您可以使用适用于Google Apps的Google Login Plugin。
我使用名为elinks的命令行浏览器登录到他们的html邮件服务器http://m.gmail.com。使用Elinks中的shift进行复制和粘贴。
http://minimallinux.blogspot.com/2012/07/centos-6rhel-install-elinks-text-browser.html
我将文本消息脚本从一个jenkins框切换到另一个jenkins框,并且必须这样做才能让Google让我使用该IP。
在Jenkins中,默认情况下不启用用户身份验证,但我们可以从“全局安全性”部分建立用户身份验证。我们必须为团队成员创建用户,并将所有用户维护在自己的数据库中。但我们也可以使用Google OAuth配置Jenkins。因此,如果您正在利用Google服务并且已经拥有用户。用户可以登录Jenkins并执行他们的任务。
要实施Google OAuth,我们建议使用jenkinsci/google-login-plugin
(https://github.com/jenkinsci/google-login-plugin)这是一个Jenkins插件,可让您使用自己的Google帐户登录Jenkins。还允许您限制对给定Google Apps域中的帐户的访问权限。
我假设我们已经安装了Jenkins服务器,并且有管理员权限对其进行更改。整个配置分为三个简单的步骤。
1.获取Google OAuth凭据
要使用此插件,您必须从Google Developers Console
(https://console.developers.google.com)获取OAuth 2.0凭据。这些不需要属于特殊帐户,甚至不需要与要限制登录的域相关联。
创建客户端ID和密码的说明:
Jenkins OAuth
。在此项目中,我们将生成自动身份验证凭据以启用OAuth API。http:jenkins.mydomain.com
。这将是您的Jenkins服务器的登录页面。点击此页面后,系统会将其重定向到Google进行身份验证。securityRealm/finishLogin
。所以授权的重定向网址应该像这个${JENKINS_ROOT_URL}/securityRealm/finishLogin
。
例如:http://jenkins.mydoamin.com/securityRealm/finishLogin
2.安装Google登录插件
在Jenkins中没有配置OAuth的机制,但有许多插件可用,我们正在使用Google登录插件。我们可以从Manage Jenkins
- > Manage Plugins
- > Available
轻松安装此插件并搜索“Google Login”。选择插件。无需重新启动即可安装此插件。此插件允许注册Google OAuth并执行身份验证。
3.配置Jenkins
在此步骤中,我们将在已安装的插件中设置Google安全凭据。导航到Manage Jenkins
- > Configure Global Security
并在第一步中生成的Security Realm粘贴凭据(客户端ID和密码)下选择Login with Google
。在最后一个字段中,不要忘记输入您的域名,它允许您限制对给定域名的访问。
保存更改后,Jenkins将立即允许访问您域中的所有用户。现在,尝试登录您的Jenkins,它会将您重定向到Google身份验证页面。如果一切设置正确,您将登录,但万一您仍然遇到任何问题,请返回并检查每一步。登录用户可以执行任何操作,如果要限制用户,可以实施角色策略插件(https://wiki.jenkins.io/display/JENKINS/Role+Strategy+Plugin)安全性。