Boruta.Openid.Application behaviour (Boruta core v2.3.5)

View Source

Implement this behaviour in the application layer of your OpenID Connect provider. This behaviour gives all callbacks triggered invoking Boruta.Openid module functions.

Note: This behaviour is split into Boruta.Openid.JwksApplication and Boruta.Openid.UserinfoApplication providing utilities to implement the different OpenID Connect endpoints independently.

Summary

Callbacks

This function will be triggered when request is unauthorized invoking Boruta.Openid.register_client/3

This function will be triggered in case of success invoking Boruta.Openid.jwks/2

This function will be triggered when request is unauthorized invoking Boruta.Openid.register_client/3

This function will be triggered when request is unauthorized invoking Boruta.Openid.userinfo/2

This function will be triggered in case of success invoking Boruta.Openid.userinfo/2

Callbacks

client_registered(conn, client)

@callback client_registered(conn :: Plug.Conn.t(), client :: Boruta.Oauth.Client.t()) ::
  any()

This function will be triggered when request is unauthorized invoking Boruta.Openid.register_client/3

jwk_list(conn, jwk_keys)

@callback jwk_list(
  conn :: Plug.Conn.t(),
  jwk_keys :: [%JOSE.JWK{fields: term(), keys: term(), kty: term()}]
) :: any()

This function will be triggered in case of success invoking Boruta.Openid.jwks/2

registration_failure(conn, changeset)

@callback registration_failure(conn :: Plug.Conn.t(), changeset :: Ecto.Changeset.t()) ::
  any()

This function will be triggered when request is unauthorized invoking Boruta.Openid.register_client/3

unauthorized(conn, error)

@callback unauthorized(conn :: Plug.Conn.t(), error :: Boruta.Oauth.Error.t()) :: any()

This function will be triggered when request is unauthorized invoking Boruta.Openid.userinfo/2

userinfo_fetched(conn, userinfo)

@callback userinfo_fetched(conn :: Plug.Conn.t(), userinfo :: map()) :: any()

This function will be triggered in case of success invoking Boruta.Openid.userinfo/2