... | @@ -590,3 +590,32 @@ It is a single authentication solution. |
... | @@ -590,3 +590,32 @@ It is a single authentication solution. |
|
17. The user clicks the logout button.
|
|
17. The user clicks the logout button.
|
|
18. The `DeleteSession` endpoint receives the request and destroys the session. It calls the logout callout point.
|
|
18. The `DeleteSession` endpoint receives the request and destroys the session. It calls the logout callout point.
|
|
19. The UI displays the login page.
|
|
19. The UI displays the login page.
|
|
|
|
|
|
|
|
### Callout points
|
|
|
|
|
|
|
|
1. `GetAuthenticationDetails() Details`
|
|
|
|
|
|
|
|
The output structure will contain the control data for the login page:
|
|
|
|
|
|
|
|
- Authentication method name
|
|
|
|
- Authentication method description
|
|
|
|
- Authentication method icon
|
|
|
|
- The layout of credentials form:
|
|
|
|
- Username field name (username, email, identity number, etc.)
|
|
|
|
- Password type (standard, masked password, passwordless)
|
|
|
|
- Two-factor authentication field (SMS, authentication code)
|
|
|
|
- Captcha
|
|
|
|
- Remember password link
|
|
|
|
- Or redirect the button to the authentication point
|
|
|
|
|
|
|
|
This callout point will call only the first hook. If no hooks are registered, the core will fall back to the standard authentication.
|
|
|
|
|
|
|
|
2. `Authenticate(params users.CreateSessionParams) (*SystemUser, error)`
|
|
|
|
|
|
|
|
The authenticate callout point will be responsible for validating the credentials and preparing the user instance. It should send the data to the LDAP server. If they are correct, then the hook should fetch the user profile. It must translate the LDAP roles to the Stork groups.
|
|
|
|
|
|
|
|
This callout point will be called in the `CreateSession` REST handler. Only the callout from the first hook will be used.
|
|
|
|
|
|
|
|
3. `Deauthenticate(*SystemUser) error`
|
|
|
|
|
|
|
|
This callout point should close the user sessions in the external authentication point if necessary. |