Ueberauth.Strategy.Okta.OAuth (Ueberauth Okta v1.1.10)

View Source

An implementation of OAuth2 for Okta.

Supported options:

  • :site - (required) Full request URL
  • :client_id - (required) Okta client ID
  • :client_secret - (required) Okta client secret
  • :authorize_url - default: "/oauth2/v1/authorize",
  • :token_url - default: "/oauth2/v1/token",
  • :userinfo_url - default: "/oauth2/v1/userinfo"
  • :authorization_server_id - If supplied, URLs for the request will be adjusted to include the custom Okta Authorization Server ID
  • Any OAuth2.Client option

These options can be provided with the provider settings, or under the Ueberauth.Strategy.Okta.OAuth scope:

config :ueberauth, Ueberauth.Strategy.Okta.OAuth,
site: "https://your-doman.okta.com"
client_id: System.get_env("OKTA_CLIENT_ID"),
client_secret: System.get_env("OKTA_CLIENT_SECRET")

Multiple Providers (Multitenant)

To support multiple providers, scope the settings to the same provider key you used when configuring Ueberauth:

config :ueberauth, Ueberauth,
providers: [
  okta: {Ueberauth.Strategy.Okta, []}
]

config :ueberauth, Ueberauth.Strategy.Okta.OAuth,
okta: [
  site: "https://your-doman.okta.com"
  client_id: System.get_env("OKTA_CLIENT_ID"),
  client_secret: System.get_env("OKTA_CLIENT_SECRET")
]

Scoped OAuth settings will take precedence over the global settings

Summary

Functions

Provides the authorize url for the request phase of Ueberauth.

Construct a client for requests to Okta.

Functions

authorize_url!(params \\ [], client_opts \\ [])

Provides the authorize url for the request phase of Ueberauth.

client(opts \\ [])

Construct a client for requests to Okta.

Intended for use from Ueberauth.Strategy.Okta but supplying options for usage outside the normal callback phase of Ueberauth. See OAuth2.Client.t() for available options.

get_token(params \\ [], options \\ [])

get_user_info(headers \\ [], opts \\ [])