- GoCD server version v17.5.0 or above
- Okta API credentials
Copy the file build/libs/okta-oauth-authorization-plugin-VERSION.jar to the GoCD server under ${GO_SERVER_DIR}/plugins/external
and restart the server. The GO_SERVER_DIR is usually /var/lib/go-server on Linux and C:\Program Files\Go Server
on Windows.
!!! Note that the configuration for Okta might be slightly different in case you have a corporate account setup.
- Sign in to Okta API credentials
- Click on API > Authorization Servers
- Click on default as that will be your Authorization Server
- Navigate to Scopes > Add Scope
- Create a scope with name groups and select
Include in public metadata - Navigate to Claims > Add Claim
- Create a claim with name groups as following:
- Choose the
Token typeto be: ID Token - Select
Value type: Groups - Set the
Filterto: Regex and value:.*(there is a dot in there)
- Choose the
- Sign in to Okta API credentials
- Click on Applications and from there Add Application.
- Select type
Web. - Fill in the
Login redirect URIas follows:https://{your_base_url}/go/plugin/cd.go.authorization.okta/authenticate - Click Save and afterwards change the
Initiate login URIto:https://{your_base_url}/go/plugin/cd.go.authorization.okta/login
- Login to
GoCD serveras admin and navigate to Admin > Security > Authorization Configuration. - Click on Add to create new authorization configuration.
- Specify
idfor auth config. - Select
Okta oauth authorization plugin for GoCDfor Plugin id - Specify your Okta API Issuer:
https://{your_okta_url}/oauth2/default - Specify Client ID and Client Secret that come from the Application.
- Save your configuration and you'll be redirected to GoCD login page.
- Specify
- Click on the Okta button and you should be logged in.
- Login to
GoCD serveras admin and navigate to Admin > Security > Role Configuration. - Click on Add to create new role configuration.
- Select
Plugin Roleas the type of role. - Specify the name of the role in
Role name. - (Optional) Use
Okta Groupsto choose which groups will use this role. - (Optional) Use
Okta Usersto choose which users will use this role.
- Select
- All your users matching the criteria will have this role associated with their account in GoCD.