Boruta core
▼
Project version
v3.0.0-beta.3
v3.0.0-beta.2
v3.0.0-beta.1
v2.3.4
v2.3.3
v2.3.2
v2.3.1
v2.3.0
v2.2.2
v2.2.1
v2.2.0
v2.1.5
v2.1.4
v2.1.3
v2.1.2
v2.1.1
v2.1.0
v2.0.1
v2.0.0
v2.0.0-rc.1
v2.0.0-rc.0
v1.2.1
v1.2.0
v1.1.0
v1.0.3
v1.0.2
v1.0.1
v1.0.0
v1.0.0-rc.3
v1.0.0-rc.2
v1.0.0-rc.1
v1.0.0-rc.0
v0.2.1
v0.2.0
v0.1.1
v0.1.0
v0.1.0-rc.5
v0.1.0-rc.4
v0.1.0-rc.3
v0.1.0-rc.2
v0.1.0-rc.1
v0.1.0-beta.1
Pages
Modules
Mix
Tasks
API Reference
Modules
Mix Tasks
README
Documentation
Integration example
OpenID Certification
Guides
Feedback
Code of Conduct
License
Setting up Boruta OAuth/OpenID Connect provider
1. Bootstrap the application
2. Bootstrap Boruta
3. Configure Boruta
4. User flows
5. OpenID Connect
How to create an OAuth client
Client request authorization
In a monolithic application
In a microservice environment
Notes for pkce extension
Prerequisites
Flow steps
Notes about confidential clients
Migration from 1.X
OAuth response structs changes
Database migrations
Changelog
[2.3.4] - 2024-06-10
[2.3.3] - 2024-03-20
[2.3.2] - 2023-12-23
[2.3.1] - 2023-04-24
[2.3.0] - 2023-04-09
[2.2.2] - 2022-10-25
[2.2.1] - 2022-10-16
[2.2.0] - 2022-09-13
[2.1.5] - 2022-06-15
[2.1.4] - 2022-06-07
[2.1.3] - 2022-05-17
[2.1.2] - 2022-05-02
[2.1.1] - 2022-04-30
[2.1.0] - 2022-04-29
[2.0.1] - 2022-04-12
[2.0.0] - 2022-01-26
[2.0.0-rc.1] - 2021-11-17
[2.0.0-rc.0] 2021-10-12
[1.2.1] - 2021-10-10
[1.2.0] - 2021-09-15
[1.1.0] - 2021-08-16
[1.0.3] - 2021-07-29
[1.0.2] - 2021-06-29
[1.0.1] - 2021-03-10
[1.0.0] - 2021-03-10
Boruta
Boruta.Config
Boruta.Ecto.Admin
Summary
Functions
create_client/1
create_scope/1
delete_client/1
delete_inactive_tokens/0
delete_inactive_tokens/1
delete_scope/1
get_client!/1
get_scope!/1
get_scopes_by_ids/1
get_scopes_by_names/1
list_active_tokens/0
list_active_tokens/1
list_clients/0
list_scopes/0
regenerate_client_key_pair/1
regenerate_client_key_pair/3
regenerate_client_secret/1
regenerate_client_secret/2
update_client/2
update_scope/2
Boruta.Oauth
Summary
Functions
authorize/3
introspect/2
preauthorize/3
revoke/2
token/2
Boruta.Openid
Summary
Functions
jwks/2
register_client/3
userinfo/2
Applications
Boruta.Oauth.Application
Summary
Callbacks
authorize_error/2
authorize_success/2
introspect_error/2
introspect_success/2
preauthorize_error/2
preauthorize_success/2
revoke_error/2
revoke_success/1
token_error/2
token_success/2
Boruta.Oauth.AuthorizeApplication
Summary
Callbacks
authorize_error/2
authorize_success/2
preauthorize_error/2
preauthorize_success/2
Boruta.Oauth.IntrospectApplication
Summary
Callbacks
introspect_error/2
introspect_success/2
Boruta.Oauth.RevokeApplication
Summary
Callbacks
revoke_error/2
revoke_success/1
Boruta.Oauth.TokenApplication
Summary
Callbacks
token_error/2
token_success/2
Boruta.Openid.Application
Summary
Callbacks
client_registered/2
jwk_list/2
registration_failure/2
unauthorized/2
userinfo_fetched/2
Boruta.Openid.DynamicRegistrationApplication
Summary
Callbacks
client_registered/2
registration_failure/2
Boruta.Openid.JwksApplication
Summary
Callbacks
jwk_list/2
Boruta.Openid.UserinfoApplication
Summary
Callbacks
unauthorized/2
userinfo_fetched/2
Responses
Boruta.Oauth.AuthorizeResponse
Summary
Types
t/0
Functions
from_tokens/2
redirect_to_url/1
Boruta.Oauth.IntrospectResponse
Summary
Types
t/0
Functions
from_error/1
from_token/1
Boruta.Oauth.TokenResponse
Summary
Types
t/0
Functions
from_token/1
Admin
Boruta.Ecto.Admin.Clients
Summary
Functions
create_client/1
delete_client/1
get_client!/1
list_clients/0
regenerate_client_key_pair/3
regenerate_client_secret/2
update_client/2
Boruta.Ecto.Admin.Scopes
Summary
Functions
create_scope/1
delete_scope/1
get_scope!/1
get_scopes_by_ids/1
get_scopes_by_names/1
list_scopes/0
update_scope/2
Boruta.Ecto.Admin.Tokens
Summary
Functions
delete_inactive_tokens/1
list_active_tokens/1
Authorization
Boruta.Oauth.Authorization
Summary
Types
t/0
Functions
preauthorize/1
token/1
Boruta.Oauth.Authorization.AccessToken
Summary
Functions
authorize/1
Boruta.Oauth.Authorization.Client
Summary
Functions
authorize/1
Boruta.Oauth.Authorization.Code
Summary
Functions
authorize/1
Boruta.Oauth.Authorization.Nonce
Summary
Types
t/0
Functions
authorize/1
Boruta.Oauth.Authorization.ResourceOwner
Summary
Functions
authorize/1
Boruta.Oauth.Authorization.Scope
Summary
Functions
authorize/1
Boruta.Oauth.AuthorizationSuccess
Summary
Types
t/0
Introspection
Boruta.Oauth.Introspect
Summary
Functions
token/1
Revocation
Boruta.Oauth.Revoke
Summary
Functions
token/1
Contexts
Boruta.Oauth.AccessTokens
Summary
Callbacks
create/2
get_by/1
revoke/1
revoke_refresh_token/1
Boruta.Oauth.Clients
Summary
Callbacks
authorized_scopes/1
get_client/1
list_clients_jwk/0
Boruta.Oauth.Codes
Summary
Callbacks
create/1
get_by/1
revoke/1
revoke_previous_token/1
Boruta.Oauth.ResourceOwners
Summary
Callbacks
authorized_scopes/1
check_password/2
claims/2
get_by/1
Boruta.Oauth.Scopes
Summary
Callbacks
public/0
Schemas
Boruta.Oauth.Client
Summary
Types
t/0
Functions
check_redirect_uri/2
check_secret/2
grant_type_supported?/2
grant_types/0
public_refresh_token?/1
public_revoke?/1
should_check_secret?/2
Boruta.Oauth.IdToken
Summary
Types
claims/0
tokens/0
Functions
generate/2
Boruta.Oauth.ResourceOwner
Summary
Types
t/0
Boruta.Oauth.Scope
Summary
Types
raw/0
t/0
Functions
authorized_scopes/3
contains_openid?/1
openid/0
split/1
Boruta.Oauth.Token
Summary
Types
t/0
Functions
ensure_valid/2
expired?/3
hash/1
revoked?/2
userinfo/1
OAuth request
Boruta.Oauth.AuthorizationCodeRequest
Summary
Types
t/0
Boruta.Oauth.ClientCredentialsRequest
Summary
Types
t/0
Boruta.Oauth.CodeRequest
Summary
Types
t/0
Functions
require_nonce?/1
Boruta.Oauth.HybridRequest
Summary
Types
t/0
Boruta.Oauth.IntrospectRequest
Summary
Types
t/0
Boruta.Oauth.PasswordRequest
Summary
Types
t/0
Boruta.Oauth.RefreshTokenRequest
Summary
Types
t/0
Boruta.Oauth.Request
Summary
Functions
authorize_request/2
introspect_request/1
revoke_request/1
token_request/1
Boruta.Oauth.RevokeRequest
Summary
Types
t/0
Boruta.Oauth.TokenRequest
Summary
Types
t/0
Functions
require_nonce?/1
Ecto Adapter
Boruta.AccessTokensAdapter
Summary
Functions
create/2
get_by/1
revoke/1
revoke_refresh_token/1
Boruta.Cache
Summary
Functions
__primary__/0
join_cluster/0
leave_cluster/0
nodes/0
Boruta.Cache.Primary
Summary
Functions
generations/0
new_generation/1
newer_generation/0
reset_generation_timer/0
Boruta.ClientsAdapter
Summary
Functions
authorized_scopes/1
create_client/1
get_client/1
list_clients_jwk/0
refresh_jwk_from_jwks_uri/1
Boruta.CodesAdapter
Summary
Functions
create/1
get_by/1
revoke/1
revoke_previous_token/1
Boruta.ScopesAdapter
Summary
Functions
public/0
Ecto Schemas
Boruta.Ecto.Client
Summary
Types
t/0
Functions
create_changeset/2
key_pair_changeset/2
secret_changeset/2
update_changeset/2
Boruta.Ecto.Scope
Summary
Types
t/0
Functions
assoc_changeset/2
changeset/2
Boruta.Ecto.Token
Summary
Types
t/0
Functions
changeset/2
changeset_with_refresh_token/2
code_changeset/2
Utilities
Boruta.BasicAuth
Summary
Functions
decode/1
Boruta.Oauth.BearerToken
Summary
Functions
extract_token/1
Boruta.Oauth.TokenGenerator
Summary
Callbacks
generate/2
secret/1
Boruta.Oauth.Validator
Summary
Functions
validate/2
Errors
Boruta.Oauth.Error
Summary
Types
t/0
Functions
redirect_to_url/1
with_format/2
mix boruta.gen.controllers
Sections
Examples
Post installation steps
Summary
Functions
run/1
mix boruta.gen.migration
Sections
Usage statistics gathering
Examples
Search documentation of Boruta core
Settings
View Source
Boruta.Oauth.Scopes
behaviour
(Boruta core v2.3.4)
Scope context
Summary
Callbacks
public()
Callbacks
Link to this callback
public()
View Source
@callback
public() :: [
Boruta.Oauth.Scope.t
()]
×