ash_authentication
▼
Project version
v4.6.4
v4.6.3
v4.6.2
v4.6.1
v4.6.0
v4.5.6
v4.5.5
v4.5.4
v4.5.3
v4.5.2
v4.5.1
v4.5.0
v4.4.9
v4.4.8
v4.4.7
v4.4.6
v4.4.5
v4.4.4
v4.4.3
v4.4.2
v4.4.1
v4.4.0
v4.3.12
v4.3.11
v4.3.10
v4.3.9
v4.3.8
v4.3.7
v4.3.6
v4.3.5
v4.3.4
v4.3.3
v4.3.2
v4.3.1
v4.3.0
v4.2.7
v4.2.6
v4.2.5
v4.2.4
v4.2.3
v4.2.2
v4.2.1
v4.2.0
v4.1.0
v4.0.4
v4.0.3
v4.0.2
v4.0.1
v4.0.0
v4.0.0-rc.6
v4.0.0-rc.5
v4.0.0-rc.3
v4.0.0-rc.2
v4.0.0-rc.1
v4.0.0-rc.0
v3.12.4
v3.12.3
v3.12.2
v3.12.1
v3.12.0
v3.11.16
v3.11.15
v3.11.14
v3.11.13
v3.11.12
v3.11.11
v3.11.10
v3.11.9
v3.11.8
v3.11.7
v3.11.6
v3.11.5
v3.11.4
v3.11.3
v3.11.2
v3.11.1
v3.11.0
v3.10.8
v3.10.7
v3.10.6
v3.10.5
v3.10.4
v3.10.3
v3.10.2
v3.10.1
v3.10.0
v3.9.6
v3.9.5
v3.9.4
v3.9.3
v3.9.2
v3.9.1
v3.9.0
v3.8.0
v3.7.9
v3.7.8
v3.7.6
v3.7.5
v3.7.4
v3.7.3
v3.7.2
v3.7.1
v3.7.0
v3.6.1
v3.6.0
v3.5.3
v3.5.2
v3.5.1
v3.5.0
v3.3.1
v3.3.0
v3.2.2
v3.2.1
v3.2.0
v3.1.0
v3.0.3
GUIDES
Modules
API Reference
Modules
README
About the Documentation
Tutorials
Topics
Tutorials
Reference
Related packages
Change Log
v4.1.0 (2024-10-06)
v4.0.4 (2024-09-01)
v4.0.3 (2024-08-22)
v4.0.2 (2024-08-05)
v4.0.1 (2024-06-11)
4.0.0 (2024-05-10)
v4.0.0-rc.7 (2024-05-10)
v4.0.0-rc.6 (2024-04-11)
v4.0.0-rc.5 (2024-04-10)
v4.0.0-rc.4 (2024-04-09)
v4.0.0-rc.3 (2024-04-08)
v4.0.0-rc.2 (2024-04-02)
v4.0.0-rc.1 (2024-04-01)
v4.0.0-rc.0 (2024-03-28)
v3.12.4 (2024-03-11)
v3.12.3 (2024-02-20)
v3.12.2 (2024-01-30)
v3.12.1 (2024-01-25)
v3.12.0 (2023-11-21)
v3.11.16 (2023-10-25)
v3.11.15 (2023-09-22)
v3.11.14 (2023-09-22)
v3.11.13 (2023-09-22)
v3.11.12 (2023-09-21)
v3.11.11 (2023-09-21)
v3.11.10 (2023-09-18)
v3.11.9 (2023-09-17)
v3.11.8 (2023-08-16)
v3.11.7 (2023-07-14)
v3.11.6 (2023-06-23)
v3.11.5 (2023-06-18)
v3.11.4 (2023-06-15)
v3.11.3 (2023-05-31)
v3.11.2 (2023-05-28)
v3.11.1 (2023-05-04)
v3.11.0 (2023-05-04)
v3.10.8 (2023-04-28)
v3.10.7 (2023-04-28)
v3.10.6 (2023-04-09)
v3.10.5 (2023-04-06)
v3.10.4 (2023-04-03)
v3.10.3 (2023-04-03)
v3.10.2 (2023-03-06)
v3.10.1 (2023-03-06)
v3.10.0 (2023-03-04)
v3.9.6 (2023-03-01)
v3.9.5 (2023-02-23)
v3.9.4 (2023-02-22)
v3.9.3 (2023-02-19)
v3.9.2 (2023-02-12)
v3.9.1 (2023-02-12)
v3.9.0 (2023-02-09)
v3.8.0 (2023-02-09)
v3.7.9 (2023-02-09)
v3.7.8 (2023-02-08)
v3.7.7 (2023-02-06)
v3.7.6 (2023-01-30)
v3.7.5 (2023-01-30)
v3.7.4 (2023-01-30)
v3.7.3 (2023-01-18)
v3.7.2 (2023-01-18)
v3.7.1 (2023-01-18)
v3.7.0 (2023-01-18)
v3.6.1 (2023-01-15)
v3.6.0 (2023-01-13)
v3.5.3 (2023-01-13)
v3.5.2 (2023-01-12)
v3.5.1 (2023-01-12)
v3.5.0 (2023-01-12)
v3.4.2 (2023-01-12)
v3.4.1 (2023-01-12)
v3.4.0 (2023-01-11)
v3.3.1 (2023-01-09)
v3.3.0 (2023-01-09)
v3.2.2 (2023-01-08)
v3.2.1 (2022-12-16)
v3.2.0 (2022-12-16)
v3.1.0 (2022-12-14)
v3.0.4 (2022-12-08)
v3.0.3 (2022-12-07)
v3.0.2 (2022-12-05)
v3.0.1 (2022-12-05)
v3.0.0 (2022-12-04)
v2.0.1 (2022-11-24)
v2.0.0 (2022-11-22)
v1.0.0 (2022-11-15)
v0.6.1 (2022-11-15)
v0.6.0 (2022-11-10)
v0.5.0 (2022-11-04)
v0.4.3 (2022-11-03)
v0.4.2 (2022-11-03)
v0.4.1 (2022-11-03)
v0.4.0 (2022-11-02)
v0.3.0 (2022-10-31)
v0.2.1 (2022-10-26)
v0.2.0 (2022-10-24)
v0.1.0 (2022-09-27)
Start Here
Get started with Ash Authentication
Summary
Tutorials
Password Authentication
Add Bcrypt To your dependencies
Add Attributes
Add the password strategy
Auth0 Tutorial
GitHub Tutorial
Google Tutorial
Magic Links Tutorial
Add the Magic Link Strategy to the User resource
Create and email sender and email template
Confirmation Tutorial
Confirming newly registered users
Confirming changes to monitored fields
Customising the confirmation action
Topics
Defining Custom Authentication Strategies
DSL setup
Implementing the AshAuthentication.Strategy protocol
Bonus round - transformers and verifiers
Summary
Policies on Authenticated Resources
Testing
When using the Password strategy
Tokens
Token Lifetime
Requiring Token Storage
Sign in Tokens
Upgrading
Upgrading to version 4.0.0
Upgrading to version 3.6.0.
Reference
DSL: AshAuthentication
Usage
Authentication Strategies
Add-ons
Supervisor
authentication
authentication.tokens
authentication.strategies
authentication.add_ons
DSL: AshAuthentication.AddOn.Confirmation
Example
Attributes
Actions
Plugs
authentication.add_ons.confirmation
DSL: AshAuthentication.Strategy.Auth0
More documentation:
authentication.strategies.auth0
DSL: AshAuthentication.Strategy.Github
More documentation:
authentication.strategies.github
DSL: AshAuthentication.Strategy.Google
More documentation:
authentication.strategies.google
DSL: AshAuthentication.Strategy.MagicLink
Actions
Plugs
authentication.strategies.magic_link
DSL: AshAuthentication.Strategy.OAuth2
Secrets and runtime configuration
User identities
Actions
Plugs
authentication.strategies.oauth2
DSL: AshAuthentication.Strategy.Oidc
Nonce
More documentation:
authentication.strategies.oidc
DSL: AshAuthentication.Strategy.Password
Actions
Plugs
Testing
authentication.strategies.password
authentication.strategies.password.resettable
DSL: AshAuthentication.TokenResource
Storage
Usage
Removing expired records
token
token.revocation
token.confirmation
DSL: AshAuthentication.UserIdentity
Storage
Usage
user_identity
Extensions
AshAuthentication
Sections
Usage
Authentication Strategies
Add-ons
Supervisor
Summary
Types
resource_config/0
subject/0
Functions
authenticated_resources/1
authentication/1
do_subject_to_user/3
subject_to_user/3
user_to_subject/1
AshAuthentication.TokenResource
Sections
Storage
Usage
Removing expired records
Summary
Functions
expunge_expired/2
jti_revoked?/3
revoke/3
token/1
token_revoked?/3
AshAuthentication.UserIdentity
Sections
Storage
Usage
Summary
Functions
user_identity/1
Strategies
AshAuthentication.AddOn.Confirmation
Sections
Example
Attributes
Actions
Plugs
Summary
Types
t/0
Functions
confirmation_token/3
transform/2
verify/2
AshAuthentication.Strategy
Summary
Types
action/0
http_method/0
path/0
phase/0
route/0
t/0
Functions
action/4
actions/1
method_for_phase/2
name/1
phases/1
plug/3
routes/1
tokens_required?/1
AshAuthentication.Strategy.Auth0
Sections
More documentation:
Summary
Functions
transform/2
verify/2
AshAuthentication.Strategy.Custom
Summary
Types
entity/0
strategy/0
Callbacks
transform/2
verify/2
Functions
set_defaults/2
AshAuthentication.Strategy.Github
Sections
More documentation:
Summary
Functions
transform/2
verify/2
AshAuthentication.Strategy.Google
Sections
More documentation:
Summary
Functions
transform/2
verify/2
AshAuthentication.Strategy.MagicLink
Sections
Actions
Plugs
Summary
Types
t/0
Functions
request_token_for/2
transform/2
verify/2
AshAuthentication.Strategy.OAuth2
Sections
Secrets and runtime configuration
User identities
Actions
Plugs
Summary
Types
secret/0
secret_list/0
t/0
Functions
transform/2
verify/2
AshAuthentication.Strategy.Oidc
Sections
Nonce
More documentation:
Summary
Functions
transform/2
verify/2
AshAuthentication.Strategy.Password
Sections
Actions
Plugs
Testing
Summary
Types
t/0
Functions
reset_token_for/2
transform/2
verify/2
Cryptography
AshAuthentication.BcryptProvider
Summary
Functions
hash/1
simulate/0
valid?/2
AshAuthentication.HashProvider
Summary
Callbacks
hash/1
simulate/0
valid?/2
AshAuthentication.Jwt
Sections
Configuration
Summary
Types
claims/0
token/0
Functions
default_algorithm/0
default_lifetime_hrs/0
peek/1
supported_algorithms/0
token_for_user/3
token_to_resource/2
verify/2
Introspection
AshAuthentication.Info
Summary
Types
dsl_or_resource/0
Functions
authentication_add_ons/1
authentication_domain/1
authentication_domain!/1
authentication_get_by_subject_action_name/1
authentication_get_by_subject_action_name!/1
authentication_options/1
authentication_select_for_senders/1
authentication_select_for_senders!/1
authentication_strategies/1
authentication_subject_name/1
authentication_subject_name!/1
authentication_tokens_enabled?/1
authentication_tokens_options/1
authentication_tokens_require_token_presence_for_authentication?/1
authentication_tokens_signing_algorithm/1
authentication_tokens_signing_algorithm!/1
authentication_tokens_signing_secret/1
authentication_tokens_signing_secret!/1
authentication_tokens_store_all_tokens?/1
authentication_tokens_token_lifetime/1
authentication_tokens_token_lifetime!/1
authentication_tokens_token_resource/1
authentication_tokens_token_resource!/1
domain/1
domain!/1
find_strategy/3
strategy/2
strategy!/2
strategy_for_action/2
strategy_for_action!/2
AshAuthentication.TokenResource.Info
Summary
Functions
token_confirmation_get_changes_action_name/1
token_confirmation_get_changes_action_name!/1
token_confirmation_options/1
token_confirmation_store_changes_action_name/1
token_confirmation_store_changes_action_name!/1
token_domain/1
token_domain!/1
token_expunge_expired_action_name/1
token_expunge_expired_action_name!/1
token_expunge_interval/1
token_expunge_interval!/1
token_get_token_action_name/1
token_get_token_action_name!/1
token_options/1
token_read_expired_action_name/1
token_read_expired_action_name!/1
token_revocation_is_revoked_action_name/1
token_revocation_is_revoked_action_name!/1
token_revocation_options/1
token_revocation_revoke_token_action_name/1
token_revocation_revoke_token_action_name!/1
token_store_token_action_name/1
token_store_token_action_name!/1
AshAuthentication.UserIdentity.Info
Summary
Functions
user_identity_access_token_attribute_name/1
user_identity_access_token_attribute_name!/1
user_identity_access_token_expires_at_attribute_name/1
user_identity_access_token_expires_at_attribute_name!/1
user_identity_destroy_action_name/1
user_identity_destroy_action_name!/1
user_identity_domain/1
user_identity_domain!/1
user_identity_options/1
user_identity_read_action_name/1
user_identity_read_action_name!/1
user_identity_refresh_token_attribute_name/1
user_identity_refresh_token_attribute_name!/1
user_identity_strategy_attribute_name/1
user_identity_strategy_attribute_name!/1
user_identity_uid_attribute_name/1
user_identity_uid_attribute_name!/1
user_identity_upsert_action_name/1
user_identity_upsert_action_name!/1
user_identity_user_id_attribute_name/1
user_identity_user_id_attribute_name!/1
user_identity_user_relationship_name/1
user_identity_user_relationship_name!/1
user_identity_user_resource/1
user_identity_user_resource!/1
Utilities
AshAuthentication.Debug
Summary
Functions
enabled?/0
AshAuthentication.Secret
Sections
Example
Secret name
Summary
Callbacks
secret_for/3
AshAuthentication.Sender
Sections
Example
Summary
Callbacks
send/3
AshAuthentication.Supervisor
Sections
Example
Summary
Functions
child_spec/1
Plugs
AshAuthentication.Plug
Summary
Types
activity/0
token/0
Callbacks
handle_failure/3
handle_success/4
AshAuthentication.Plug.Helpers
Summary
Functions
get_authentication_result/1
load_subjects/3
retrieve_from_bearer/2
retrieve_from_session/2
revoke_bearer_tokens/2
set_actor/2
store_authentication_result/2
store_in_session/2
Reusable Components
AshAuthentication.Checks.AshAuthenticationInteraction
Summary
Functions
eager_evaluate?/0
prefer_expanded_description?/0
requires_original_data?/2
strict_check/3
type/0
AshAuthentication.GenerateTokenChange
AshAuthentication.Strategy.Password.HashPasswordChange
AshAuthentication.Strategy.Password.PasswordConfirmationValidation
Summary
Functions
validate/3
AshAuthentication.Strategy.Password.PasswordValidation
Sections
Options:
Examples
AshAuthentication.Validations
Summary
Functions
find_attribute/2
maybe_build_attribute/3
persisted_option/2
validate_behaviour/2
validate_extension/2
validate_field_in_values/3
validate_field_with/4
validate_secret/3
validate_token_generation_enabled/2
AshAuthentication.Validations.Action
Summary
Functions
validate_action_argument_option/4
validate_action_exists/2
validate_action_has_argument/2
validate_action_has_change/2
validate_action_has_manual/2
validate_action_has_preparation/2
validate_action_has_validation/2
validate_action_option/3
AshAuthentication.Validations.Attribute
Summary
Functions
validate_attribute_option/4
validate_attribute_unique_constraint/3
Errors
AshAuthentication.Errors.AuthenticationFailed
Summary
Types
t/0
Functions
exception/0
AshAuthentication.Errors.InvalidToken
Summary
Functions
exception/0
AshAuthentication.Errors.MissingSecret
Summary
Functions
exception/0
Internals
AshAuthentication.AddOn.Confirmation.Actions
Summary
Functions
confirm/3
get_changes/3
store_changes/4
AshAuthentication.AddOn.Confirmation.ConfirmChange
AshAuthentication.AddOn.Confirmation.ConfirmationHookChange
AshAuthentication.AddOn.Confirmation.Dsl
AshAuthentication.AddOn.Confirmation.Plug
Summary
Functions
confirm/2
AshAuthentication.AddOn.Confirmation.Transformer
AshAuthentication.AddOn.Confirmation.Verifier
AshAuthentication.Igniter
Summary
Functions
add_secret_from_env/5
AshAuthentication.Jwt.Config
Summary
Functions
default_claims/2
generate_audience/1
generate_issuer/1
token_signer/2
validate_audience/4
validate_issuer/3
validate_jti/4
AshAuthentication.Plug.Defaults
Summary
Functions
handle_failure/3
handle_success/4
AshAuthentication.Plug.Dispatcher
Summary
Types
config/0
Functions
call/2
AshAuthentication.Plug.Macros
Summary
Functions
define_load_from_bearer/1
define_load_from_session/1
define_revoke_bearer_tokens/1
validate_subject_name_uniqueness/1
AshAuthentication.Plug.Router
AshAuthentication.Preparations.FilterBySubject
Summary
Functions
init/1
AshAuthentication.SecretFunction
AshAuthentication.SenderFunction
AshAuthentication.Strategy.Apple
Sections
More documentation:
Summary
Functions
transform/2
verify/2
AshAuthentication.Strategy.Apple.Verifier
AshAuthentication.Strategy.Custom.Helpers
Summary
Functions
put_add_on/2
put_strategy/2
register_strategy_actions/3
AshAuthentication.Strategy.Custom.Transformer
Summary
Functions
after_compile?/0
AshAuthentication.Strategy.Custom.Verifier
AshAuthentication.Strategy.MagicLink.Actions
Summary
Functions
request/3
sign_in/3
AshAuthentication.Strategy.MagicLink.Plug
Summary
Functions
request/2
sign_in/2
AshAuthentication.Strategy.MagicLink.RequestPreparation
Summary
Functions
init/1
AshAuthentication.Strategy.MagicLink.SignInPreparation
Summary
Functions
init/1
AshAuthentication.Strategy.MagicLink.Transformer
AshAuthentication.Strategy.MagicLink.Verifier
AshAuthentication.Strategy.OAuth2.Actions
Summary
Functions
register/3
sign_in/3
AshAuthentication.Strategy.OAuth2.Dsl
AshAuthentication.Strategy.OAuth2.IdentityChange
AshAuthentication.Strategy.OAuth2.Plug
Summary
Functions
callback/2
request/2
AshAuthentication.Strategy.OAuth2.SignInPreparation
Summary
Functions
init/1
AshAuthentication.Strategy.OAuth2.Transformer
AshAuthentication.Strategy.OAuth2.Verifier
AshAuthentication.Strategy.Oidc.NonceGenerator
AshAuthentication.Strategy.Oidc.Transformer
AshAuthentication.Strategy.Oidc.Verifier
AshAuthentication.Strategy.Password.Actions
Summary
Functions
register/3
reset/3
reset_request/3
sign_in/3
sign_in_with_token/3
AshAuthentication.Strategy.Password.Dsl
AshAuthentication.Strategy.Password.Plug
Summary
Functions
register/2
reset/2
reset_request/2
sign_in/2
sign_in_with_token/2
AshAuthentication.Strategy.Password.RequestPasswordResetPreparation
Summary
Functions
init/1
AshAuthentication.Strategy.Password.ResetTokenValidation
AshAuthentication.Strategy.Password.Resettable
Summary
Types
t/0
AshAuthentication.Strategy.Password.SignInPreparation
Summary
Functions
init/1
AshAuthentication.Strategy.Password.SignInWithTokenPreparation
Summary
Functions
init/1
AshAuthentication.Strategy.Password.Transformer
AshAuthentication.Strategy.Password.Verifier
AshAuthentication.TokenResource.Actions
Summary
Functions
expunge_expired/2
get_token/3
jti_revoked?/3
revoke/3
store_token/3
token_revoked?/3
AshAuthentication.TokenResource.Expunger
Summary
Functions
child_spec/1
AshAuthentication.TokenResource.GetConfirmationChangesPreparation
Summary
Functions
init/1
AshAuthentication.TokenResource.GetTokenPreparation
Summary
Functions
init/1
AshAuthentication.TokenResource.IsRevoked
AshAuthentication.TokenResource.IsRevokedPreparation
Summary
Functions
init/1
AshAuthentication.TokenResource.RevokeTokenChange
AshAuthentication.TokenResource.StoreConfirmationChangesChange
AshAuthentication.TokenResource.StoreTokenChange
AshAuthentication.TokenResource.Transformer
Summary
Functions
after_compile?/0
AshAuthentication.TokenResource.Verifier
AshAuthentication.Transformer
Summary
Functions
after_compile?/0
AshAuthentication.Transformer.SetSelectForSenders
Summary
Functions
after_compile?/0
before?/1
AshAuthentication.UserIdentity.Actions
Summary
Functions
upsert/2
AshAuthentication.UserIdentity.Transformer
Summary
Functions
after_compile?/0
AshAuthentication.UserIdentity.UpsertIdentityChange
AshAuthentication.UserIdentity.Verifier
AshAuthentication.Verifier
Search documentation of ash_authentication
Settings
View Source
AshAuthentication.Strategy.Password.ResetTokenValidation
(ash_authentication v4.1.0)
Validate that the token is a valid password reset request token.
×