# Package org.apache.sling.auth.core.spi

@Version("1.3.1") package org.apache.sling.auth.core.spi
Provides API to be implemented by provides of authentication mechanisms. The most important interface (and service definition) is the `JakartaAuthenticationHandler` interface with the `DefaultJakartaAuthenticationFeedbackHandler` being an abstract base implementation from which concrete implementations may inherit.

Version:
  1.3.1

Related Packages
Package
Description
org.apache.sling.auth.core
Provides the authentication helper service as well as a number of utility functions in the `AuthUtil` class.
Class
Description
AbstractAuthenticationFormServlet
Deprecated.
Use `AbstractJakartaAuthenticationFormServlet`
AbstractAuthenticationHandler
Deprecated.
since Bundle 1.0.8; `AuthenticationHandler` implementations should extend `DefaultAuthenticationFeedbackHandler` directly and use the utility methods in the `AuthUtil` class.
AbstractJakartaAuthenticationFormServlet
The `AbstractJakartaAuthenticationFormServlet` provides a basic implementation of a simple servlet to render a login form for authentication purposes.
AuthenticationFeedbackHandler
Deprecated.
Use `JakartaAuthenticationFeedbackHandler` instead
AuthenticationHandler
The `AuthenticationHandler` interface defines the service API used by the authentication implementation to support plugin various ways of extracting credentials from the request.
AuthenticationHandler.FAILURE_REASON_CODES
This enum indicates the supported detailed login failure reason codes: `invalid_login`: indicates username/password mismatch. `password_expired`: indicates password has expired or was never set and change initial password is enabled `account_locked`: the account was disabled or locked `account_not_found`: the account was not found (not the same as username password mismatch) `expired_token`: the token credentials used have expired
AuthenticationInfo
The `AuthenticationInfo` conveys any authentication credentials and/or details extracted by the `JakartaAuthenticationHandler.extractCredentials(jakarta.servlet.http.HttpServletRequest, jakarta.servlet.http.HttpServletResponse)` method from the request.
AuthenticationInfoPostProcessor
Deprecated.
Use `JakartaAuthenticationInfoPostProcessor` instead
DefaultAuthenticationFeedbackHandler
Deprecated.
Use `JakartaAuthenticationFeedbackHandler` instead
DefaultJakartaAuthenticationFeedbackHandler
Default implementation of an authentication feedback handler.
JakartaAuthenticationFeedbackHandler
The `AuthenticationFeedbackHandler` may be implemented by `AuthenticationHandler` services to request being informed on the success or failure of authentication.
JakartaAuthenticationHandler
The `AuthenticationHandler` interface defines the service API used by the authentication implementation to support plugin various ways of extracting credentials from the request.
JakartaAuthenticationInfoPostProcessor
Service interface which allows bundles to modify the `AuthenticationInfo` object right after one `AuthenticationHandler` has returned an {`AuthenticationInfo` from the `JakartaAuthenticationHandler.extractCredentials(HttpServletRequest, HttpServletResponse)` method or an anonymous `AuthenticationInfo` has been created.