Poprzedni wpis dotyczący Keycloaka zakończyliśmy na jego budowie. Skoro już znamy budowę Keycloaka, wiemy jak go zainstalować pora na integrację z backendem naszej aplikacji. Słowo „Prosta” oznaczania najprostsza formę integracji Keycloaka ze Springiem, zaawansowana pojawi się niebawem.
Pierwszą rzeczą jaką musimy zrobić to przygotować serwer Keycloak, korzystając z docker-compose który znajdziemy na poprzednim wpisie. Następnie wchodzimy na stronę http://localhost:8080/auth/admin/ logując się wcześniej ustawionymi danymi poprzez zmienne środowiskowe.
Fragment docker-compose.yml:
environment:
- "KEYCLOAK_USER=admin"
- "KEYCLOAK_PASSWORD=admin"
Wpisujemy dowlona nazwe reprezentująca zbiór naszych aplikacji (nazwe projektu)
Oczywiśnie możemy importować konfiguracje z już istniejącego realmu i na bazie niego tworzyc. Klikamy Create
Poprawne stworzenie realma powinno sie zakończyć stroną administracjna jego
Kolejną rzeczą jest dodanie obiektu client, który reprezentuje naszą aplikacje (webowa, mobilna itd), w tym celu musimy przejść do zakładki Clients.
Nastepnie w prawym rogu, klikamy create i wpisujemy nazwe naszej aplikacji.
zostawiamy client-protocol „openid-connect” i klimamy save . Po poprawnym stworzeniu pojawi się na strona administracjna tego klienta
Ustawiamy Access Type na Confidential co daje nam to ze aby appka springowa mogła korzystać z tego clienta musi posiadać specjany secret.
Service Accounts Enabled na ON co pozwala appce springowej na pobranie access tokenu dla swoich celów.