Class JWEAuthenticator<A extends Authentication>
- Type Parameters:
A
- the original authentication type
- All Implemented Interfaces:
Authenticator<TokenCredentials,
JWEAuthentication<A>>
An authenticator implementation that authenticates JWE token credentials and expose the original authentication.
The expected token must be a valid JWE compact string.
- Since:
- 1.5
- Author:
- Jeremy Kuhn
-
Constructor Summary
ConstructorDescriptionJWEAuthenticator
(JWEService jweService, Class<A> authenticationType) Creates a JWE authenticator with the specified JWE service and original authentication type.JWEAuthenticator
(JWEService jweService, Class<A> authenticationType, String... processedParameters) Creates a JWE authenticator with the specified JWE service, original authentication type and processed parameters.JWEAuthenticator
(JWEService jweService, Class<A> authenticationType, Publisher<? extends JWK> keys) Creates a JWE authenticator with the specified JWE service, original authentication type and keys.JWEAuthenticator
(JWEService jweService, Class<A> authenticationType, Publisher<? extends JWK> keys, String... processedParameters) Creates a JWE authenticator with the specified JWE service, original authentication type, keys and processed parameters.JWEAuthenticator
(JWEService jweService, Type authenticationType) Creates a JWE authenticator with the specified JWE service and original authentication type.JWEAuthenticator
(JWEService jweService, Type authenticationType, String... processedParameters) Creates a JWE authenticator with the specified JWE service, original authentication type and processed parameters.JWEAuthenticator
(JWEService jweService, Type authenticationType, Publisher<? extends JWK> keys) Creates a JWE authenticator with the specified JWE service, original authentication type and keys.JWEAuthenticator
(JWEService jweService, Type authenticationType, Publisher<? extends JWK> keys, String... processedParameters) Creates a JWE authenticator with the specified JWE service, original authentication type, keys and processed parameters. -
Method Summary
Modifier and TypeMethodDescriptionauthenticate
(TokenCredentials credentials) Authenticates the specified credentials and returns an authentication.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface io.inverno.mod.security.authentication.Authenticator
failOnDenied, failOnDeniedAndAnonymous, flatMap, map, or
-
Constructor Details
-
JWEAuthenticator
Creates a JWE authenticator with the specified JWE service and original authentication type.
- Parameters:
jweService
- the JWE serviceauthenticationType
- the original authentication type
-
JWEAuthenticator
Creates a JWE authenticator with the specified JWE service and original authentication type.
- Parameters:
jweService
- the JWE serviceauthenticationType
- the original authentication type
-
JWEAuthenticator
public JWEAuthenticator(JWEService jweService, Class<A> authenticationType, Publisher<? extends JWK> keys) Creates a JWE authenticator with the specified JWE service, original authentication type and keys.
- Parameters:
jweService
- the JWE serviceauthenticationType
- the original authentication typekeys
- the keys to consider to decode the JWE
-
JWEAuthenticator
public JWEAuthenticator(JWEService jweService, Type authenticationType, Publisher<? extends JWK> keys) Creates a JWE authenticator with the specified JWE service, original authentication type and keys.
- Parameters:
jweService
- the JWE serviceauthenticationType
- the original authentication typekeys
- the keys to consider to decode the JWE
-
JWEAuthenticator
public JWEAuthenticator(JWEService jweService, Class<A> authenticationType, String... processedParameters) Creates a JWE authenticator with the specified JWE service, original authentication type and processed parameters.
- Parameters:
jweService
- the JWE serviceauthenticationType
- the original authentication typeprocessedParameters
- the parameters processed by the application
-
JWEAuthenticator
public JWEAuthenticator(JWEService jweService, Type authenticationType, String... processedParameters) Creates a JWE authenticator with the specified JWE service, original authentication type and processed parameters.
- Parameters:
jweService
- the JWE serviceauthenticationType
- the original authentication typeprocessedParameters
- the parameters processed by the application
-
JWEAuthenticator
public JWEAuthenticator(JWEService jweService, Class<A> authenticationType, Publisher<? extends JWK> keys, String... processedParameters) Creates a JWE authenticator with the specified JWE service, original authentication type, keys and processed parameters.
- Parameters:
jweService
- the JWE serviceauthenticationType
- the original authentication typekeys
- the keys to consider to decode the JWEprocessedParameters
- the parameters processed by the application
-
JWEAuthenticator
public JWEAuthenticator(JWEService jweService, Type authenticationType, Publisher<? extends JWK> keys, String... processedParameters) Creates a JWE authenticator with the specified JWE service, original authentication type, keys and processed parameters.
- Parameters:
jweService
- the JWE serviceauthenticationType
- the original authentication typekeys
- the keys to consider to cecode the JWEprocessedParameters
- the parameters processed by the application
-
-
Method Details
-
authenticate
Description copied from interface:Authenticator
Authenticates the specified credentials and returns an authentication.
Implementations can return an empty mono to indicate that they were unable to authenticate the credentials. This does not mean credentials are invalid, this simply mean that a particular authenticator does not manage them and therefore can's possibly determine whether they are valid. For example, when considering login credentials composed of a user and a password, an authenticator which does not manage that particular user can return an empty mono.
Implementations must return denied authentications with
AuthenticationException
when they were able to authenticate credentials which turned out to be invalid. For example, a login credentials authenticator must return a denied authentication exception when it does manage a particular username but the provided password was invalid.A denied authentication can also bre reported by throwing an
AuthenticationException
when returning an actual authentication instance is not practical.- Specified by:
authenticate
in interfaceAuthenticator<TokenCredentials,
JWEAuthentication<A extends Authentication>> - Parameters:
credentials
- the credentials to authenticate- Returns:
- a mono emitting an authentication, an error mono or an empty mono if the authenticator could not authenticate the credentials
-