Starting 15.2.0 GoCD Server will expose authentication end-point. What this means is GoCD users can add "custom" authentication schemes through plugins.
Examples of integrations possible:
- OAuth Login - GitHub, Google, Hotmail, Yahoo! etc.
- Single Sign-on (SSO) - LDAP, Okta etc.
- 2-factor authentication - SMS verification etc.
- Custom
username
&password
authentication
How does it work?
Below is an explanation of how GitHub OAuth Login plugin works.
- Generate OAuth token on GitHub.
![Generate oauth token on GitHub Generate oauth token on Git Hub](../../../assets/images/blog/authentication-plugins/generate-oauth-token-3fb15337.png)
- On plugin listing page users will see a gear icon (similar to one on the pipeline dashboard).
![Plugin listing with gear icon Plugin listing with gear icon](../../../assets/images/blog/authentication-plugins/list-plugin-56a2f413.png)
- Clicking on the gear icon opens a pop-up that renders "Plugin Settings".
![Configure plugin pop-up Configure plugin pop-up](../../../assets/images/blog/authentication-plugins/configure-plugin-5a5b3512.png)
- Login Page
![Login Page with GitHub icon Login Page with Git Hub icon](../../../assets/images/blog/authentication-plugins/login-page-b00e9881.png)
- Click on GitHub icon
![Authorize GoCD Server to access GitHub Authorize Go CD Server to access Git Hub](../../../assets/images/blog/authentication-plugins/github-login-18b74573.png)
- Successful login
![Pipeline View on successful login Pipeline View on successful login](../../../assets/images/blog/authentication-plugins/successful-login-a699ce6f.png)
- Ability to Search & Add users
![Search User Search User screen](../../../assets/images/blog/authentication-plugins/search-user-6d06f1b6.png)
We hope plugin developers are able to use this feature to support their organizations authentication mechanism.
References:
As always, GoCD questions can be asked on the mailing list.