Projekt Praktyczny - Spring Boot + Angular + Docker
Tworzymy usługę zabezpieczona przez JWT i dostępem zależnym od roli użytkownika
Description
Na swoim nagraniu z LiveCodingu pokazuje jak myśli programista. Pozwalam sobie tutaj na dużą dawkę spontaniczności, po to, aby pokazać jak przebiega proces myślowy. I stosując te podejście oczywiście natrafiamy na błędy. Ale to dobrze, bo wówczas - jest szansa ujawnienia jakie potencjalne błędy nas czyhają, oraz jak je diagnozować, a następnie sprawnie rozwiązywać. Ten model się bardzo dobrze sprawdza – bo dużo lepiej zapada w pamięć, uczy rozwiązywać problemów i sposobu myślenia.
W trakcie LiveCodingu tworzymy aplikacje w Spring Boot, a następnie wystawimy usługę zabezpieczając ją JWT! Przy wykorzystaniu prostego frontendu pobierzemy dane wystawiane przez backend. Finalnie całość skonteneryzujemy i wyizolujemy do osobnej sieci dla zapewniania bezpieczeństwa.
W częsci pierwszej tworzymy usługę, którą następnie zabezpieczymy przez JWT. To najczęściej wykorzystywane podejście przy komunikacji pomiędzy Backedem (publicznym API) a Frontendem. Dodatkowo implementujemy role, tak, aby użytkownicy tylko z odpowiednim poziomem uprawnień mieli dostęp do wybranych usług. Użyjemy tutaj mechanizmów dostarczanych przez Spring Secuirty wporwadzonych od Spring Boota 2.7 - więc zrobimy to zgodnie z najnowszymi aktualizacjami i zalecenami.
W części drugiej tworzymy frontend do naszego API zabezpieczanego przez JWT. Wykorzystamy do tego Angulara. Pokaże Ci jak wygląda proces uwierzytelniania użytkownika w przypadku, gdzie mamy podział na frontend i backend, a następnie zapewnimy resztę komunikacji przy zastosowaniu JWT. Finalnie skonteneryzujemy nasze aplikacje i utworzymy Docker Compose.
Nasz Docker Compose wzbogacimy o bazę danych, aby jednym kliknięciem zapewnić uruchomienie backendu, bazy danych zawierających zbiór użytkowników z różnymi uprawnieniami, oraz prostego frontendu.
To świetna okazja, aby dowiedzieć się jak zapewnić bezpieczną komunikację pomiędzy backendem i frontendem. Dodatkowo zobaczyć na projekcie jak wykorzystywać mechanizm konteneryzacji by finalnie zaprojektować Docker Compose, który umożliwi nam sprawne postawienie sieci powiązanych usług.
What You Will Learn!
- Zbudować ze mną zabezpieczoną usługę z wykorzystaniem JWT
- Zapewnić komunikację pomiędzy backedem a frontendem
- Wykorzystywać Docker Compose do stworzenia sieci serwisów
- Wykorzystać najnowsze zmiany w mechanizmach bezpieczeństwa, które wprowadzono w Spring Boot 2.7
- Zarządzać użytkownikami i ich rolami, aby API udostępniało określone zasoby, w zależności od poziomu roli użytkownika
Who Should Attend!
- Ciebie, jeśli jesteś programistą
- Ciebie, jeśli chcesz szybko nabyć umiejętności zapewnienia bezpiecznej komunikacji backend-frontend
- Ciebie, jeśli cenisz sobie formę nauki poprzez LiveCoding
- Ciebie jeśli chcesz wiedzieć jak używać Docker Compose do uruchamiania swoich aplikacji
- Ciebie, jeśli lubisz naukę na projekcie!