Skip to main content

Configure OpenSearch SSO with Okta

ClusterNest Managed OpenSearch can delegate Dashboards login to Okta over OIDC or SAML. A cluster takes several auth sources side by side, with at most one SAML source and one OIDC source offered on Dashboards.

You'll need your cluster's OpenSearch Dashboards hostname before registering the app. Set dashboards_custom_hostname so you know it upfront, or create the cluster first without an auth source and note the generated opensearch_dashboards_url output before adding it.

OIDC​

connect_url is your Okta domain's discovery endpoint (or a custom authorization server's, if you used one instead of default).

  1. In the Okta admin console, go to Applications > Create App Integration, choose OIDC - Web Application.
    • Sign-in redirect URIs: https://<dashboards-hostname>/auth/openid/login
    • Assign the app to the users or groups who should have access.
  2. On the app's General tab, note the Client ID and Client secret.
  3. To get a groups claim into the ID token, go to Security > API > Authorization Servers, pick the server you're using (default for the org authorization server), open the Claims tab, and add a claim named groups (Include in: ID Token, Value type: Groups, Filter: matches a regex, e.g. .*).

In the ClusterNest console, open the cluster's create/edit form and add an OIDC source under Authentication. Choose a Name (it becomes the text of the Dashboards button, "Login with" followed by this name), tick Offer on OpenSearch Dashboards, then fill in:

  • Connect URL: https://example.okta.com/.well-known/openid-configuration
  • Client ID / Client Secret: from the app's General tab
  • Roles Key: groups (leave blank if you skipped step 3)

See the Terraform resource reference for the full field list.