I am trying to implement a new Authenticator based on the user’s browser fingerprint. The authentication flow should be the following:
The Username & Password authenticator and the OTP authenticator are already provided by keycloak. I have developed an authenticator called Fingerprint (or browser fingerprint). This authenticator works like this:
- The form submits a hash identifying many browser properties.
- The authenticator checks wheter the hash provided exists or not:
- if it exists, then the authentication process ends successfully
- if does not exist, the authenticator sets a required action to register the new fingerprint
But I’m not able to connect the fingerprint authentication with OTP
How should I perform the next step ?
Is there a way to set a condition to an authenticator from Keycloak admin console ?
Or is it posible to add an authenticator to a flow dynamically in Java (like required actions )?