CPub.Web.Authentication.Strategy.OIDC.Provider (CPub v0.3.0) View Source
An Ueberauth strategy for identifying with services implementing OpenID Connect.
Configuration
{Ueberauth.Strategy.OIDC, [
provider: "https://your-favorite-openid-provider.com/",
client_id: "blups",
client_secret: "blupsblipsblabla"
]}
There is no need to specify the authorization, token and jwk endpoint. The strategy will automatically detect them from the OpenID Provider Configuration Information.
TODO: Currently this strategy make multiple requests to the OpenID provider every time it is invoked that could be cached (configuration and jwks keys). Implement a more efficient caching strategy.
Link to this section Summary
Functions
Callback implementation for Ueberauth.Strategy.credentials/1
.
Callback implementation for Ueberauth.Strategy.extra/1
.
Callback implementation for Ueberauth.Strategy.handle_callback!/1
.
Callback implementation for Ueberauth.Strategy.handle_cleanup!/1
.
Callback implementation for Ueberauth.Strategy.handle_request!/1
.
Callback implementation for Ueberauth.Strategy.info/1
.
Callback implementation for Ueberauth.Strategy.uid/1
.
Link to this section Functions
Specs
credentials(Plug.Conn.t()) :: Ueberauth.Auth.Credentials.t()
Callback implementation for Ueberauth.Strategy.credentials/1
.
Specs
extra(Plug.Conn.t()) :: Ueberauth.Auth.Extra.t()
Callback implementation for Ueberauth.Strategy.extra/1
.
Specs
handle_callback!(Plug.Conn.t()) :: Plug.Conn.t()
Callback implementation for Ueberauth.Strategy.handle_callback!/1
.
Callback implementation for Ueberauth.Strategy.handle_cleanup!/1
.
Specs
handle_request!(Plug.Conn.t()) :: Plug.Conn.t()
Callback implementation for Ueberauth.Strategy.handle_request!/1
.
Callback implementation for Ueberauth.Strategy.info/1
.
Specs
uid(Plug.Conn.t()) :: String.t()
Callback implementation for Ueberauth.Strategy.uid/1
.