Boruta.Oauth.Signatures behaviour (Boruta core v3.0.0-beta.4)

View Source

TODO Utilities to provide signature abilities to OAuth clients

Summary

Callbacks

hash(string, client)

@callback hash(string :: String.t(), client :: Boruta.Oauth.Client.t()) ::
  hash :: String.t()

hash_alg(t)

@callback hash_alg(Boruta.Oauth.Client.t()) :: hash_alg :: atom()

hash_binary_size(t)

@callback hash_binary_size(Boruta.Oauth.Client.t()) :: binary_size :: integer()

id_token_sign(payload, client)

@callback id_token_sign(payload :: map(), client :: Boruta.Oauth.Client.t()) ::
  jwt :: String.t() | {:error, reason :: String.t()}

userinfo_sign(payload, client)

@callback userinfo_sign(payload :: map(), client :: Boruta.Oauth.Client.t()) ::
  jwt :: String.t() | {:error, reason :: String.t()}

userinfo_signature_type(t)

@callback userinfo_signature_type(Boruta.Oauth.Client.t()) ::
  userinfo_token_signature_type :: atom()