Details
-
New Feature
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
-
None
Description
The AuthenticationHandler interface should be extended with the following two constants:
/**
- The name of the service registration property (single string) providing
- the authentication type of authentication handler. This is the same value
- as will be returned as the
{@link AuthenticationInfo#getAuthType()
* authentication type}
returned by the
- {@link #extractCredentials(HttpServletRequest, HttpServletResponse)}
- method.
- <p>
- <p>
- This property is optional but allows the client to optionally select the
- authentication handler which will actually request credentials upon the
- {@link #requestCredentials(HttpServletRequest, HttpServletResponse)}
* method.
*
* @see #REQUEST_LOGIN_PARAMETER
*/
static final String TYPE_PROPERTY = "authtype";
/**
* The request parameter which may be used to explicitly select an
* authentication handler by its {@link #TYPE_PROPERTY type} if
* authentication will be requested through
* {@link #requestCredentials(HttpServletRequest, HttpServletResponse)}.
* - @see #requestCredentials(HttpServletRequest, HttpServletResponse)
- @see #TYPE_PROPERTY
*/
static final String REQUEST_LOGIN_PARAMETER = "sling:authRequestLogin";
This allows for client-side selection of a concrete authentication handler to use for requesting credentials and also to inquire about authentication types of registered authentication handlers.