Go to file
mr-impossibru e6164a401b
Epic/keycloak 14 - update ti keycloak 14 (#8)
* JD-426: bump keycloak to 14.0.0 (#6)
2021-08-16 10:00:44 +03:00
build_utils@c67c2590c9 JD-285: bump build_utils and update version 2021-06-07 11:46:48 +03:00
img JD-285: work with client secret only, update readme 2021-06-03 19:28:13 +03:00
src Epic/keycloak 14 - update ti keycloak 14 (#8) 2021-08-16 10:00:44 +03:00
.gitignore init commit by rbk-templator 2021-05-24 11:44:21 +03:00
.gitmodules init commit by rbk-templator 2021-05-24 11:44:21 +03:00
Jenkinsfile init commit by rbk-templator 2021-05-24 11:44:21 +03:00
LICENSE Let's make it opensource 2021-08-03 14:03:00 +03:00
pom.xml Epic/keycloak 14 - update ti keycloak 14 (#8) 2021-08-16 10:00:44 +03:00
README.md JD-285: work with client secret only, update readme 2021-06-03 19:28:13 +03:00

kc-user-manager

General

Service to manage keycloak users.

  • It can create user and send email actions: verify email and send magic link to set/update password.
  • Service can work with different realms, each request must have realm specified
  • List of available realms and connection parameters are set in application.yml
keycloak:
  auth-server-url: http://localhost:8080/auth
    admin-clients:
      external:
        client-id: user-manager-service
        client-secret: 4f213624-7190-421f-9e3c-5198737a7d9c
        timeouts-ms: 10000
        pool-size: 2
      master:
        client-id: admin-cli
        client-secret: 7cfe46c7-90f7-4cae-a6cc-3ad7bb0296db
        timeouts-ms: 15000
        pool-size: 1

General interaction scheme

Create user

Request:

{
        "user_id": {
                "email": "ivan.sidorov@mail.ru",
                "realm": "external"
        },
        "first_name":"Ivan",
        "last_name":"Sidorov"
}

Response:

Create workflow

Email Actions

Few Methods have same logic and request entities:

  • SendVerifyUserEmail
  • SendUpdatePasswordEmail
{
        "user_id": {
                "email": "ivan.sidorov@mail.ru",
                "realm": "external"
        },
        "redirect_params": {
                "client_id": "redirect-client",
                "redirect_uri": "https://www.youtube.com/watch?v=dQw4w9WgXcQ"
        }
}

Note:

  • client_id has to exist in keycloak
  • redirect_uri has to be within valid uris of specified client

Email actions workflow