View Source API Reference Boruta core v3.0.0-beta.3
Modules
Boruta is the core of an OAuth/OpenID Connect provider implementing authorization business rules.
Encapsulate injected Boruta.Oauth.AccessTokens
adapter in context configuration
HTTP BasicAuth utilities
Boruta Ecto adapter uses Nebulex in order to cache entities
This is the cache for the primary storage.
Encapsulate injected Boruta.Oauth.Clients
adapter in context configuration
Encapsulate injected Boruta.Oauth.Codes
adapter in context configuration
Utilities to access Boruta configuration ad set defaults.
Encapsulate injected Boruta.Openid.Credentials
adapter in context configuration
Utilities to manipulate dids using an universal resolver or registrar.
Implementation of OAuth 2.0 Demonstrating Proof of Possession (DPoP) RFC from the IETF
Administration of Boruta resources.
Boruta.Ecto.Client
resource administration
Boruta.Ecto.Scope
resource administration
Boruta.Ecto.Token
resource administration
Ecto Adapter Request Schema
Ecto Adapter Client Schema
Ecto Adapter Credential Schema
Ecto Adapter Scope Schema
Ecto Adapter Token Schema
OAuth requests entrypoint, provides authorization artifacts to clients as stated in RFC.
Access token context
Implement this behaviour in the application layer of your OAuth / OpenID Connect provider.
This behaviour gives all callbacks triggered invoking Boruta.Oauth
module functions.
OAuth requests authorization
Check against given params and return the corresponding access token
Check against given params and return the corresponding client
Check against given params and return the corresponding code
Check OpenID Connect nonce against given request
Check against given params and return the corresponding resource owner
Check against given params and return the corresponding scopes
Authorization code request
Authorization request and utilities
Struct encapsulating an authorization success data
OAuth application behaviour - authorize endpoint
Response returned in case of authorization request success. Provides utilities and mandatory data needed to respond to the authorize part of implicit, code and hybrid flows.
OAuth bearer token utilities
OAuth client schema and utilities
Client credentials request
Client context
Code request
Code context
Boruta OAuth errors
Hybrid request
OpenID Connect id token schema and utilities
Access token introspection
OAuth application behaviour - introspect endpoint
Introspect request
Response returned in case of introspection request success. Provides mandatory data needed to respond to token introspection.
Resource owner password credentials request
Preauthorization code request
Preauthorized code request
Code request
OAuth application behaviour - pushed authorization endpoint
Response returned in case of pushed authorization request success. Provides utilities and mandatory data needed to respond to the pushed authorize part of implicit, code and hybrid flows.
Refresh token request
Build an oauth request struct from given input.
Request context
Oauth resource owner schema
Resource owner context
Access token revocation
OAuth application behaviour - revoke endpoint
Revoke request
OAuth scope schema and utilities
Scope context
OAuth access token and code schema and utilities
OAuth application behaviour - token endpoint
Behaviour to implement utilities to generate token value. This must be implemented in the module configured as token_generator
set in config.exs
Implicit request
Response returned in case of access token request success. Provides utilities and mandatory data needed to respond to the token part of client credentials, resource owner password, code and hybrid flows.
Utility to validate the request according to the given parameters
Openid requests entrypoint, provides additional artifacts to OAuth as stated in Openid Connect Core 1.0.
Implement this behaviour in the application layer of your OpenID Connect provider.
This behaviour gives all callbacks triggered invoking Boruta.Openid
module functions.
Credentials and utilities
Implement this behaviour in the application layer of your OpenID Connect provider.
This behaviour gives all callbacks triggered invoking Boruta.Openid.credential/3
function.
Response returned in case of pre authorized code request success. Provides utilities and mandatory data needed to respond to the authorize part of pre-authorized code flow.
Response in case of delivrance of verifiable credential
Credential context
Response in case of delivrance of verifiable credential
Implement this behaviour in the application layer of your OpenID SiopV2 provider.
This behaviour gives all callbacks triggered invoking Boruta.Openid.direct_post/3
function.
Implement this behaviour in the application layer of your OpenID Connect provider.
This behaviour gives all callbacks triggered invoking Boruta.Openid.register_client/3
function.
Implement this behaviour in the application layer of your OpenID Connect provider.
This behaviour gives all callbacks triggered invoking Boruta.Openid.jwks/2
function.
Preauthorized code context
Response in case of delivrance of Siop V2 flow
Implement this behaviour in the application layer of your OpenID Connect provider.
This behaviour gives all callbacks triggered invoking Boruta.Openid.userinfo/2
function.
Response in case of delivrance of Siop V2 flow
Encapsulate injected Boruta.Oauth.Codes
adapter in context configuration
Encapsulate injected Boruta.Oauth.Requests
adapter in context configuration
Encapsulate injected Boruta.Oauth.Scopes
adapter in context configuration
Implements HOTP generation as described in the IETF RFC HOTP: An HMAC-Based One-Time Password Algorithm
Mix Tasks
This task will help creation of a basic OAuth/OpenID Connect server by providing needed phoenix controllers, views and templates to expose OAuth endpoints.
Migration task for Boruta.