View Source Boruta.Oauth.Scope (Boruta core v2.3.3)

OAuth scope schema and utilities

Summary

Functions

Determines if artifact is authorized to access given scope.

Determines if scope string contains openid scope.

Returns 'openid' scope

Splits an OAuth scope string into individual scopes as string

Types

@type raw() :: String.t()
@type t() :: %Boruta.Oauth.Scope{
  id: any() | nil,
  label: String.t() | nil,
  name: String.t(),
  public: boolean() | nil
}

Functions

Link to this function

authorized_scopes(against, scopes, public_scopes \\ [])

View Source
@spec authorized_scopes(
  against :: List | Boruta.Oauth.Token.t() | Boruta.Oauth.Client.t(),
  scopes :: [String.t()],
  public_scopes :: [String.t()]
) :: authorized_scopes :: [String.t()]

Determines if artifact is authorized to access given scope.

@spec contains_openid?(oauth_scope :: String.t()) :: boolean()

Determines if scope string contains openid scope.

@spec openid() :: t()

Returns 'openid' scope

@spec split(oauth_scope :: String.t() | nil) :: [raw()]

Splits an OAuth scope string into individual scopes as string

Examples

iex> scope("a:scope another:scope")
["a:scope", "another:scope"]