- 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 type
to be: ID Token - Select
Value type
: Groups - Set the
Filter
to: 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 URI
as follows:https://{your_base_url}/go/plugin/cd.go.authorization.okta/authenticate
- Click Save and afterwards change the
Initiate login URI
to:https://{your_base_url}/go/plugin/cd.go.authorization.okta/login
- Login to
GoCD server
as admin and navigate to Admin > Security > Authorization Configuration. - Click on Add to create new authorization configuration.
- Specify
id
for auth config. - Select
Okta oauth authorization plugin for GoCD
for 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 server
as admin and navigate to Admin > Security > Role Configuration. - Click on Add to create new role configuration.
- Select
Plugin Role
as the type of role. - Specify the name of the role in
Role name
. - (Optional) Use
Okta Groups
to choose which groups will use this role. - (Optional) Use
Okta Users
to choose which users will use this role.
- Select
- All your users matching the criteria will have this role associated with their account in GoCD.