Skip to main content

Crate alibi_plugins

Crate alibi_plugins 

Source
Expand description

Built-in authentication plugins for Alibi.

Re-exports§

pub use account_management::AccountManagementPlugin;
pub use admin::AdminBanUserRequest;
pub use admin::AdminBannedUserMessage;
pub use admin::AdminBannedUserMessageHandler;
pub use admin::AdminConfig;
pub use admin::AdminCreateUserRequest;
pub use admin::AdminImpersonationResponse;
pub use admin::AdminListUsersQuery;
pub use admin::AdminListUsersResponse;
pub use admin::AdminPermissionRequest;
pub use admin::AdminPermissionResponse;
pub use admin::AdminPlugin;
pub use admin::AdminRoleInput;
pub use admin::AdminSetRoleRequest;
pub use admin::AdminSetUserPasswordRequest;
pub use admin::AdminSuccessResponse;
pub use admin::AdminUpdateUserRequest;
pub use admin::AdminUserOutput;
pub use admin::AdminUserResponse;
pub use admin::AdminUserSessionsResponse;
pub use admin::RolePermissions;
pub use anonymous::AnonymousConfig;
pub use anonymous::AnonymousIdentity;
pub use anonymous::AnonymousPlugin;
pub use anonymous::LinkAnonymousAccount;
pub use api_key::ApiKeyCallbackContext;
pub use api_key::ApiKeyConfig;
pub use api_key::ApiKeyDefaultPermissions;
pub use api_key::ApiKeyErrorMessage;
pub use api_key::ApiKeyGenerationOptions;
pub use api_key::ApiKeyGenerator;
pub use api_key::ApiKeyGetter;
pub use api_key::ApiKeyPermissions;
pub use api_key::ApiKeyPlugin;
pub use api_key::ApiKeyValidator;
pub use api_key::DeleteExpiredApiKeysResponse;
pub use bearer::BearerConfig;
pub use bearer::BearerPlugin;
pub use captcha::CaptchaConfig;
pub use captcha::CaptchaPlugin;
pub use captcha::CaptchaProvider;
pub use custom_session::CustomSessionPlugin;
pub use custom_session::SessionTransform;
pub use custom_session::SessionTransformContext;
pub use device_authorization::DeviceAuthorizationPlugin;
pub use email_otp::EmailOtpConfig;
pub use email_otp::EmailOtpPlugin;
pub use email_otp::SendEmailOtp;
pub use email_password::EmailPasswordConfig;
pub use email_password::EmailPasswordPlugin;
pub use email_verification::EmailVerificationConfig;
pub use email_verification::EmailVerificationHook;
pub use email_verification::EmailVerificationPlugin;
pub use email_verification::SendVerificationEmail;
pub use haveibeenpwned::HaveIBeenPwnedConfig;
pub use haveibeenpwned::HaveIBeenPwnedPlugin;
pub use haveibeenpwned::PwnedPasswordClient;
pub use last_login_method::BeforeStoreLastLoginMethodCookie;
pub use last_login_method::LastLoginMethodConfig;
pub use last_login_method::LastLoginMethodContext;
pub use last_login_method::LastLoginMethodEndpointResponse;
pub use last_login_method::LastLoginMethodPlugin;
pub use last_login_method::ResolveLastLoginMethod;
pub use magic_link::MagicLinkConfig;
pub use magic_link::MagicLinkPlugin;
pub use multi_session::MultiSessionConfig;
pub use multi_session::MultiSessionPlugin;
pub use oauth::OAuthPlugin;
pub use oauth_popup::OAuthPopupPlugin;
pub use oauth_provider::OAuthAuthenticatedClient;
pub use oauth_provider::OAuthAuthorizationQuery;
pub use oauth_provider::OAuthClientAssertionInput;
pub use oauth_provider::OAuthClientAuthenticationOptions;
pub use oauth_provider::OAuthClientAuthenticationStrategy;
pub use oauth_provider::OAuthClientDiscovery;
pub use oauth_provider::OAuthClientIdGenerator;
pub use oauth_provider::OAuthClientMetadataAbortSignal;
pub use oauth_provider::OAuthClientMetadataFetchOptions;
pub use oauth_provider::OAuthClientMetadataFetchResponse;
pub use oauth_provider::OAuthClientMetadataResourceFetch;
pub use oauth_provider::OAuthClientPrivilegeContext;
pub use oauth_provider::OAuthClientPrivileges;
pub use oauth_provider::OAuthClientSecretCipher;
pub use oauth_provider::OAuthClientSecretGenerator;
pub use oauth_provider::OAuthClientSecretHasher;
pub use oauth_provider::OAuthConsentReference;
pub use oauth_provider::OAuthConsentReferenceContext;
pub use oauth_provider::OAuthDecodedRefreshToken;
pub use oauth_provider::OAuthEndpointRateLimit;
pub use oauth_provider::OAuthExtensionClaims;
pub use oauth_provider::OAuthExtensionClientAuthentication;
pub use oauth_provider::OAuthExtensionGrantHandler;
pub use oauth_provider::OAuthExtensionGrantInput;
pub use oauth_provider::OAuthInitialAccessTokenAuthorization;
pub use oauth_provider::OAuthInitialAccessTokenError;
pub use oauth_provider::OAuthInitialAccessTokenInput;
pub use oauth_provider::OAuthInitialAccessTokenValidator;
pub use oauth_provider::OAuthInteractionContext;
pub use oauth_provider::OAuthMetadataContributor;
pub use oauth_provider::OAuthMetadataExtensionInput;
pub use oauth_provider::OAuthMetadataType;
pub use oauth_provider::OAuthPostLoginConfig;
pub use oauth_provider::OAuthPostLoginContext;
pub use oauth_provider::OAuthPostLoginPolicy;
pub use oauth_provider::OAuthProviderApi;
pub use oauth_provider::OAuthProviderConfig;
pub use oauth_provider::OAuthProviderExtension;
pub use oauth_provider::OAuthProviderPlugin;
pub use oauth_provider::OAuthProviderRateLimits;
pub use oauth_provider::OAuthRedirectUriValidator;
pub use oauth_provider::OAuthRefreshTokenEncryption;
pub use oauth_provider::OAuthRefreshTokenFormatter;
pub use oauth_provider::OAuthRequestUriInput;
pub use oauth_provider::OAuthRequestUriResolver;
pub use oauth_provider::OAuthResourceIdentifierValidator;
pub use oauth_provider::OAuthResourcePrivilegeContext;
pub use oauth_provider::OAuthResourcePrivileges;
pub use oauth_provider::OAuthResourceSeedMode;
pub use oauth_provider::OAuthSelectAccountConfig;
pub use oauth_provider::OAuthSelectAccountContext;
pub use oauth_provider::OAuthSelectAccountPolicy;
pub use oauth_provider::OAuthSignupConfig;
pub use oauth_provider::OAuthSignupContext;
pub use oauth_provider::OAuthSignupPolicy;
pub use oauth_provider::OAuthSignupRedirect;
pub use oauth_provider::OAuthTokenClaimsContributor;
pub use oauth_provider::OAuthTokenClaimsInput;
pub use oauth_provider::OAuthTokenGenerator;
pub use oauth_provider::OAuthTokenHasher;
pub use oauth_provider::OAuthTokenIssueParams;
pub use oauth_provider::OAuthUserInfoClaimsContributor;
pub use oauth_provider::OAuthUserInfoClaimsInput;
pub use oauth_provider::OAuthVerifiedClientAssertion;
pub use oauth_provider::consume_client_assertion;
pub use oauth_proxy::OAuthProxyConfig;
pub use oauth_proxy::OAuthProxyPlugin;
pub use one_tap::OAuthJwksSource;
pub use one_tap::OneTapClientId;
pub use one_tap::OneTapConfig;
pub use one_tap::OneTapPlugin;
pub use open_api::OpenApiConfig;
pub use open_api::OpenApiPlugin;
pub use organization::OrganizationConfig;
pub use organization::OrganizationCreatePatch;
pub use organization::OrganizationCreatedContext;
pub use organization::OrganizationCreationHooks;
pub use organization::OrganizationDraftContext;
pub use organization::OrganizationMemberCreatePatch;
pub use organization::OrganizationMemberDraftContext;
pub use organization::OrganizationPlugin;
pub use passkey::AuthenticationResult;
pub use passkey::PasskeyAuthenticationAfterVerification;
pub use passkey::PasskeyAuthenticationConfig;
pub use passkey::PasskeyAuthenticationContext;
pub use passkey::PasskeyAuthenticatorSelection;
pub use passkey::PasskeyConfig;
pub use passkey::PasskeyExtensions;
pub use passkey::PasskeyExtensionsResolver;
pub use passkey::PasskeyOptionsContext;
pub use passkey::PasskeyPlugin;
pub use passkey::PasskeyRegistrationAfterVerification;
pub use passkey::PasskeyRegistrationConfig;
pub use passkey::PasskeyRegistrationContext;
pub use passkey::PasskeyRegistrationOverride;
pub use passkey::PasskeyRegistrationUser;
pub use passkey::PasskeyUserResolver;
pub use passkey::VerifiedPasskeyAuthentication;
pub use passkey::VerifiedPasskeyRegistration;
pub use password_management::PasswordManagementConfig;
pub use password_management::PasswordManagementPlugin;
pub use password_management::SendResetPassword;
pub use phone_number::PhoneNumberConfig;
pub use phone_number::PhoneNumberPlugin;
pub use phone_number::SendPhoneOtp;
pub use session_management::GetSessionQuery;
pub use session_management::GetSessionResponse;
pub use session_management::SessionManagementPlugin;
pub use siwe::SiweConfig;
pub use siwe::SiwePlugin;
pub use two_factor::SendTwoFactorOtp;
pub use two_factor::TwoFactorBackupCipher;
pub use two_factor::TwoFactorBackupStorage;
pub use two_factor::TwoFactorConfig;
pub use two_factor::TwoFactorOtpCipher;
pub use two_factor::TwoFactorOtpHasher;
pub use two_factor::TwoFactorOtpStorage;
pub use two_factor::TwoFactorPlugin;
pub use user_management::ChangeEmailConfig;
pub use user_management::DeleteUserConfig;
pub use user_management::SendChangeEmailConfirmation;
pub use user_management::UserManagementConfig;
pub use user_management::UserManagementPlugin;
pub use scim::ScimPlugin;
pub use sso::SsoAccountKey;
pub use sso::SsoConfig;
pub use sso::SsoDefaultProvider;
pub use sso::SsoDeprecatedAlgorithmBehavior;
pub use sso::SsoKeyResolver;
pub use sso::SsoMutationAction;
pub use sso::SsoMutationGuard;
pub use sso::SsoMutationProvider;
pub use sso::SsoOrganizationProvisioning;
pub use sso::SsoOrganizationRoleResolver;
pub use sso::SsoPlugin;
pub use sso::SsoPrivateKey;
pub use sso::SsoPrivateKeyContext;
pub use sso::SsoPrivateKeyResolver;
pub use sso::SsoProtocol;
pub use sso::SsoProviderLimit;
pub use sso::SsoProviderLimitResolver;
pub use sso::SsoProviderMutation;
pub use sso::SsoProviderMutationGuard;
pub use sso::SsoProvisioner;
pub use sso::SsoProvisioningData;
pub use sso::SsoResolvedProfile;
pub use sso::SsoResolver;
pub use sso::SsoRoleResolver;
pub use sso::SsoSamlEncryptionPolicy;
pub use sso::SsoSamlSigningPolicy;
pub use sso::SsoUserProvisioner;
pub use sso::SsoUserResolution;
pub use sso::SsoUserResolutionInput;
pub use sso::SsoUserResolver;

Modules§

access
Public access-control utilities matching Better Auth’s resource and action rules.
account_management
admin
anonymous
Anonymous accounts and their cleanup when a proven account replaces them.
api_key
bearer
Bearer authentication through the ordinary signed session-cookie lifecycle.
captcha
CAPTCHA admission before endpoint parsing and authentication side effects.
custom_session
Application-owned asynchronous session response projection.
device_authorization
email_otp
Passwordless email authentication and verification using single-use codes.
email_password
email_verification
haveibeenpwned
Compromised-password policy at initialized password hashing.
helpers
Shared helpers for plugin implementations.
jwt
Asymmetric session JWTs, public JWKS, and trusted server-side signing.
last_login_method
Remember successful session issuance without changing authentication authority.
magic_link
Single-use mailbox authentication links, with native delivery callbacks.
metadata
Built-in endpoint and model declarations owned by the feature crate.
multi_session
Browser-local selection and revocation of several authenticated accounts.
oauth
oauth2
DPoP proof verification and single-use reservations for OAuth resource servers.
oauth_popup
Popup OAuth entry and callback delivery, paired with the official popup client.
oauth_provider
OAuth authorization-server discovery from installed issuer and provider policy.
oauth_proxy
OAuth code exchange on a production host, followed by stateful completion on the originating preview host with database or authenticated cookie state.
one_tap
Google One Tap authentication with verified Google ID tokens.
one_time_token
Short-lived, single-use credentials that hand an existing session to a client.
open_api
OpenAPI schema generation and Scalar reference page.
organization
passkey
password_management
phone_number
Phone ownership verification, password login and scoped password reset.
scim
SCIM server discovery operations.
session_management
siwe
Sign in with Ethereum using a single-use challenge and application-owned signature verification, including contract-wallet RPC providers.
sso
Enterprise single-sign-on provider registration.
two_factor
user_management

Traits§

PasswordHasher
Custom password hasher trait for pluggable password hashing strategies.