Jenkins (OIDC)
Use Casdoor as the OIDC identity provider for Jenkins so users sign in with their Casdoor accounts.
Terms: CASDOOR_HOSTNAME — Casdoor server URL; JENKINS_HOSTNAME — Jenkins server URL.
步骤1:部署Casdoor和Jenkins
Deploy Casdoor and Jenkins. Then:
-
将Jenkins URL(管理Jenkins -> 配置系统 -> Jenkins位置)设置为
JENKINS_HOSTNAME。
-
确保Casdoor可以正常登录和使用。
-
将Casdoor的
origin值(conf/app.conf)设置为CASDOOR_HOSTNAME。
步骤2:配置Casdoor应用
- Create or edit a Casdoor application.
- Add redirect URL:
http://JENKINS_HOSTNAME/securityRealm/finishLogin. - Add providers as needed. Note the Client ID and Client secret from the application page.
OIDC discovery URL: http://CASDOOR_HOSTNAME/.well-known/openid-configuration

步骤3:配置Jenkins
Install the OpenId Connect Authentication plugin (Jenkins does not support OIDC by default).
安装完成后,转到管理Jenkins -> 配置全局安全。 
确保备份Jenkins的config.xml文件,以防任何设置错误。
-
在访问控制中,选择
使用Openid Connect登录作为安全领域。 -
在Client ID字段中指定上面记下的
Client ID。 -
在Client secret字段中指定上面记下的
Client secret。 -
在配置模式中,选择
自动配置,并输入http://CASDOOR_HOSTNAME/.well-known/openid-configuration作为已知配置端点。
如果你的Casdoor是本地部署的,你可能需要选择
手动配置并提供以下信息:- 令牌服务器URL:http://
CASDOOR_HOSTNAME/api/login/oauth/access_token - 授权服务器URL:http://
CASDOOR_HOSTNAME/login/oauth/authorize - 用户信息服务器URL:http://
CASDOOR_HOSTNAME/api/get-account - 范围:
address phone openid profile offline_access email
- 令牌服务器URL:http://
-
点击高级设置并填写以下内容:
- 在用户名字段中,指定
name。 - 在全名字段中,指定
displayName。 - 在电子邮件字段中,指定
email。

- 在用户名字段中,指定
-
在授权部分,启用“已登录用户可以做任何事情”并禁用“允许匿名读取访问”。 你可以稍后配置更复杂的授权,但现在,检查OpenID是否正常工作。
退出Jenkins,它应该将你重定向到Casdoor进行身份验证。
