I would like to implement this authentication flow in Keycloak:
- A user creates an account by typing only his email
- The user is logged in and can access my service 2'. At the same time, an email is sent to him, allowing him to "finalize" his account
- The user leaves his session -> to reuse my service, he must click in the received email
- By clicking in the received email, the user defines his first password
- The user is then logged in automatically (without going through a login page).
The objective of this flow is to be the simplest, to hook users who are not used to webapps.
The implementation I would do:
- Create an account without password request: I customize the Keycloak
Registration
flow by disabling thePassword Validation
andProfile Validation
rules - Programmatically, in my webapp, at the first connection of a user, via the REST Admin API, I trigger the email action
UPDATE_PASSWORD
I get something that works, but:
A. The link received by email redirects to an intermediary page confirming the execution of actions ("Perform the following action (s)") - (similar to Keycloak Implement Reset password flow same as forgot password flow)
B. The user is then redirected to a login page, and not directly connected to the application.
When, as a normal user, I trigger a reset password request (through 'forget password' feature), the process is the one I want: by clicking on the email link, I go directly to the page allowing me to enter and confirm a new password, then I'm authenticated.
My question: Do you see a way to implement this 'simplified' flow?
My keycloak version : 11.0.2
Thank you !