Autoryzacja i zarządzanie dostępem: OAuth2, OpenID Connect, JWT i Keycloak, szkolenie online w czasie rzeczywistym
Autoryzacja i zarządzanie dostępem: OAuth2, OpenID Connect, JWT i Keycloak, szkolenie online w czasie rzeczywistym
Informacje podstawowe
Informacje podstawowe
- KategoriaInformatyka i telekomunikacja / Bezpieczeństwo IT
- Identyfikatory projektówNowy start w Małopolsce z EURESEM, Małopolski Pociąg do kariery
- Grupa docelowa usługi
Szkolenie skierowane jest do backend developerów i fullstack developerów, specjalistów DevOps i bezpieczeństwa oraz osób, które wdrażają system SSO, projektują systemy B2B lub B2C albo zarządzają użytkownikami i rolami w systemie. Uczestnik powinien znać HTTP i REST, mieć doświadczenie w pracy z backendem oraz podstawową wiedzę o architekturze aplikacji webowych. Szkolenie obejmuje poziomy od junior do senior. Nie jest przeznaczone dla osób, które nie pracują z backendem albo szukają wprowadzenia do podstaw HTTP.
- Minimalna liczba uczestników3
- Maksymalna liczba uczestników20
- Data zakończenia rekrutacji24-02-2027
- Forma prowadzenia usługizdalna w czasie rzeczywistym
- Podstawa uzyskania wpisu do BURZnak Jakości TGLS Quality Alliance
Cel
Cel
Cel edukacyjny
Szkolenie przygotowuje uczestników do projektowania i wdrażania bezpiecznego uwierzytelniania i autoryzacji w aplikacjach: doboru przepływów OAuth 2.0 i OpenID Connect, budowy i weryfikacji tokenów JWT, bezpiecznego zarządzania sesjami i tokenami, konfiguracji Keycloak z rolami i politykami dostępu, integracji aplikacji z Keycloak oraz stosowania checklist bezpieczeństwa przed wdrożeniem produkcyjnym.Efekty uczenia się oraz kryteria weryfikacji ich osiągnięcia i Metody walidacji
| Efekty uczenia się | Kryteria weryfikacji | Metoda walidacji |
|---|---|---|
| Uczestnik charakteryzuje pojęcia uwierzytelniania, autoryzacji i modele kontroli dostępu | odróżnia uwierzytelnianie od autoryzacji na przykładach | Test teoretyczny z wynikiem generowanym automatycznie |
| porównuje modele RBAC, ABAC i ACL | Test teoretyczny z wynikiem generowanym automatycznie | |
| wyjaśnia rolę access tokenu, ID tokenu i refresh tokenu | Test teoretyczny z wynikiem generowanym automatycznie | |
| wskazuje typowe błędy koncepcyjne w projektowaniu systemów logowania | Test teoretyczny z wynikiem generowanym automatycznie | |
| Uczestnik analizuje architekturę OAuth 2.0 i dobiera typ grantu do scenariusza | opisuje role Resource Owner, Client, Authorization Server i Resource Server | Test teoretyczny z wynikiem generowanym automatycznie |
| rozpisuje przepływ autoryzacji krok po kroku | Test teoretyczny z wynikiem generowanym automatycznie | |
| dobiera Authorization Code z PKCE albo Client Credentials do podanego przypadku | Test teoretyczny z wynikiem generowanym automatycznie | |
| uzasadnia, dlaczego nie stosuje się Implicit Flow | Test teoretyczny z wynikiem generowanym automatycznie | |
| Uczestnik stosuje OpenID Connect i tokeny JWT do obsługi tożsamości użytkownika | odróżnia ID Token od Access Token | Test teoretyczny z wynikiem generowanym automatycznie |
| odczytuje discovery document i endpoint userinfo | Test teoretyczny z wynikiem generowanym automatycznie | |
| dekoduje token JWT i interpretuje claims iss, sub, aud, exp, iat | Test teoretyczny z wynikiem generowanym automatycznie | |
| weryfikuje podpis tokenu podpisanego algorytmem HS256 lub RS256 | Test teoretyczny z wynikiem generowanym automatycznie | |
| Uczestnik projektuje scenariusze logowania i bezpieczne zarządzanie sesjami oraz tokenami | projektuje logowanie w SPA z Authorization Code i PKCE oraz wzorcem BFF | Test teoretyczny z wynikiem generowanym automatycznie |
| dobiera sposób przechowywania tokenów z uwzględnieniem ochrony przed XSS i CSRF | Test teoretyczny z wynikiem generowanym automatycznie | |
| konfiguruje rotację refresh tokenów i krótki czas życia tokenów | Test teoretyczny z wynikiem generowanym automatycznie | |
| opisuje wylogowanie, invalidację sesji i unieważnianie tokenów | Test teoretyczny z wynikiem generowanym automatycznie | |
| Uczestnik konfiguruje Keycloak i integruje z nim aplikację | uruchamia Keycloak lokalnie w Dockerze i konfiguruje realm | Test teoretyczny z wynikiem generowanym automatycznie |
| tworzy klientów public i confidential oraz definiuje role i grupy | Test teoretyczny z wynikiem generowanym automatycznie | |
| mapuje role do tokenów i konfiguruje polityki dostępu | Test teoretyczny z wynikiem generowanym automatycznie | |
| zabezpiecza API w Spring Boot lub Node.js weryfikacją JWT | Test teoretyczny z wynikiem generowanym automatycznie | |
| Uczestnik ocenia bezpieczeństwo rozwiązania autoryzacji według dobrych praktyk | stosuje zasadę najmniejszych uprawnień i minimalizację scopes | Test teoretyczny z wynikiem generowanym automatycznie |
| opisuje rotację kluczy podpisujących z użyciem JWKS | Test teoretyczny z wynikiem generowanym automatycznie | |
| diagnozuje problemy autoryzacyjne, w tym błędy CORS i redirect URI | Test teoretyczny z wynikiem generowanym automatycznie | |
| przygotowuje checklistę bezpieczeństwa przed wdrożeniem produkcyjnym | Test teoretyczny z wynikiem generowanym automatycznie |
Kwalifikacje i kompetencje
Kwalifikacje i kompetencje
Kompetencje
Usługa prowadzi do nabycia kompetencji.Warunki uznania kompetencji
Program
Program
Wprowadzenie do uwierzytelniania vs autoryzacji, różnice, pojęcia, kontekst
- czym jest uwierzytelnianie (authentication), a czym autoryzacja (authorization)
- identity vs access control
- modele RBAC, ABAC, ACL
- SSO i federacja tożsamości
- podstawowe pojęcia: access token, ID token, refresh token
- typowe błędy koncepcyjne w projektowaniu systemów logowania
Architektura OAuth 2.0, role (Client, Resource Owner, Authorization Server)
- Resource Owner, kto jest właścicielem tożsamości
- Client, aplikacja publiczna vs poufna
- Authorization Server, wydawanie tokenów
- Resource Server, ochrona zasobów
- przepływ autoryzacji krok po kroku
- różnica między trust boundary a security boundary
Typy grantów w OAuth 2.0, Authorization Code, Client Credentials, PKCE
- Authorization Code Flow, dla aplikacji webowych
- PKCE, ochrona aplikacji publicznych
- Client Credentials, komunikacja machine- to- machine
- dlaczego nie używać Implicit Flow
- kiedy stosować który grant
- zagrożenia związane z błędnym doborem flow
OpenID Connect, rozszerzenie OAuth2 do tożsamości użytkownika
- czym jest OpenID Connect (OIDC)
- ID Token vs Access Token
- endpoint userinfo
- discovery document (.well-known/ openid- configuration)
- scope: openid, profile, email
- integracja logowania federacyjnego (np. Google, Azure AD)
Tokeny JWT, budowa, dekodowanie, podpisywanie i weryfikacja
- struktura JWT (header, payload, signature)
- algorytmy podpisu (HS256, RS256)
- weryfikacja podpisu po stronie API
- claims standardowe (iss, sub, aud, exp, iat)
- zagrożenia: token tampering, brak walidacji aud
- różnica między JWT signed i encrypted
Scenariusze logowania użytkowników w aplikacjach webowych i mobilnych
- logowanie w SPA (Authorization Code+ PKCE)
- backend- for- frontend (BFF pattern)
- aplikacje mobilne a redirect URI
- komunikacja frontend → backend → authorization server
- logowanie federacyjne
- logout i invalidacja sesji
Zarządzanie sesjami i bezpieczeństwo tokenów, wygaśnięcie, odświeżanie, przechowywanie
- access token vs refresh token
- rotacja refresh tokenów
- przechowywanie tokenów (httpOnly cookies vs localStorage)
- ochrona przed XSS i CSRF
- krótkie TTL jako element bezpieczeństwa
- unieważnianie tokenów (revocation endpoint)
Wprowadzenie do Keycloak, instalacja, konfiguracja, zarządzanie użytkownikami i rolami
- instalacja lokalna (Docker)
- konfiguracja realm
- tworzenie klientów (public/ confidential)
- definiowanie ról i grup
- mapowanie ról do tokenów
- konfiguracja polityk dostępu
Integracja aplikacji z Keycloak (np. Spring Boot/ Node.js/ frontend)
- zabezpieczenie API w Spring Boot
- middleware w Node.js (keycloak-connect/ passport)
- integracja SPA z Keycloak
- weryfikacja JWT w Resource Server
- konfiguracja CORS i redirect URIs
- debugowanie problemów autoryzacyjnych
Dobre praktyki i checklisty bezpieczeństwa dla autoryzacji i zarządzania dostępem
- minimalizacja zakresów (scopes)
- zasada najmniejszych uprawnień
- walidacja tokenów po stronie backendu
- rotacja kluczy podpisujących (JWKS)
- ochrona endpointów administracyjnych
- checklisty bezpieczeństwa przed wdrożeniem produkcyjnym
- monitoring prób nieautoryzowanego dostępu
Harmonogram
Harmonogram
| Przedmiot / temat | Typ aktywności | Prowadzący | Data realizacji zajęć | Godzina rozpoczęcia | Godzina zakończenia | Liczba godzin |
|---|---|---|---|---|---|---|
Przedmiot / temat 1 z 16 Wprowadzenie do uwierzytelniania vs autoryzacji, różnice, pojęcia, kontekst | Typ aktywności Zajęcia | Prowadzący TOMASZ STELMACH | Data realizacji zajęć 25-02-2027 | Godzina rozpoczęcia 08:00 | Godzina zakończenia 09:30 | Liczba godzin 01:30 |
Przedmiot / temat 2 z 16 - | Typ aktywności Przerwa | Prowadzący - | Data realizacji zajęć 25-02-2027 | Godzina rozpoczęcia 09:30 | Godzina zakończenia 10:00 | Liczba godzin 00:30 |
Przedmiot / temat 3 z 16 Architektura OAuth 2.0, role (Client, Resource Owner, Authorization Server) | Typ aktywności Zajęcia | Prowadzący TOMASZ STELMACH | Data realizacji zajęć 25-02-2027 | Godzina rozpoczęcia 10:00 | Godzina zakończenia 11:00 | Liczba godzin 01:00 |
Przedmiot / temat 4 z 16 Typy grantów w OAuth 2.0, Authorization Code, Client Credentials, PKCE | Typ aktywności Zajęcia | Prowadzący TOMASZ STELMACH | Data realizacji zajęć 25-02-2027 | Godzina rozpoczęcia 11:00 | Godzina zakończenia 12:00 | Liczba godzin 01:00 |
Przedmiot / temat 5 z 16 - | Typ aktywności Przerwa | Prowadzący - | Data realizacji zajęć 25-02-2027 | Godzina rozpoczęcia 12:00 | Godzina zakończenia 12:30 | Liczba godzin 00:30 |
Przedmiot / temat 6 z 16 OpenID Connect, rozszerzenie OAuth2 do tożsamości użytkownika | Typ aktywności Zajęcia | Prowadzący TOMASZ STELMACH | Data realizacji zajęć 25-02-2027 | Godzina rozpoczęcia 12:30 | Godzina zakończenia 13:30 | Liczba godzin 01:00 |
Przedmiot / temat 7 z 16 Tokeny JWT, budowa, dekodowanie, podpisywanie i weryfikacja | Typ aktywności Zajęcia | Prowadzący TOMASZ STELMACH | Data realizacji zajęć 25-02-2027 | Godzina rozpoczęcia 13:30 | Godzina zakończenia 14:30 | Liczba godzin 01:00 |
Przedmiot / temat 8 z 16 Scenariusze logowania użytkowników w aplikacjach webowych i mobilnych | Typ aktywności Zajęcia | Prowadzący TOMASZ STELMACH | Data realizacji zajęć 25-02-2027 | Godzina rozpoczęcia 14:30 | Godzina zakończenia 15:00 | Liczba godzin 00:30 |
Przedmiot / temat 9 z 16 Zarządzanie sesjami i bezpieczeństwo tokenów, wygaśnięcie, odświeżanie, przechowywanie | Typ aktywności Zajęcia | Prowadzący TOMASZ STELMACH | Data realizacji zajęć 26-02-2027 | Godzina rozpoczęcia 08:00 | Godzina zakończenia 09:30 | Liczba godzin 01:30 |
Przedmiot / temat 10 z 16 - | Typ aktywności Przerwa | Prowadzący - | Data realizacji zajęć 26-02-2027 | Godzina rozpoczęcia 09:30 | Godzina zakończenia 10:00 | Liczba godzin 00:30 |
Przedmiot / temat 11 z 16 Wprowadzenie do Keycloak, instalacja, konfiguracja, zarządzanie użytkownikami i rolami | Typ aktywności Zajęcia | Prowadzący TOMASZ STELMACH | Data realizacji zajęć 26-02-2027 | Godzina rozpoczęcia 10:00 | Godzina zakończenia 11:00 | Liczba godzin 01:00 |
Przedmiot / temat 12 z 16 Integracja aplikacji z Keycloak (np. Spring Boot/ Node.js/ frontend) | Typ aktywności Zajęcia | Prowadzący TOMASZ STELMACH | Data realizacji zajęć 26-02-2027 | Godzina rozpoczęcia 11:00 | Godzina zakończenia 12:00 | Liczba godzin 01:00 |
Przedmiot / temat 13 z 16 - | Typ aktywności Przerwa | Prowadzący - | Data realizacji zajęć 26-02-2027 | Godzina rozpoczęcia 12:00 | Godzina zakończenia 12:30 | Liczba godzin 00:30 |
Przedmiot / temat 14 z 16 Dobre praktyki i checklisty bezpieczeństwa dla autoryzacji i zarządzania dostępem | Typ aktywności Zajęcia | Prowadzący TOMASZ STELMACH | Data realizacji zajęć 26-02-2027 | Godzina rozpoczęcia 12:30 | Godzina zakończenia 13:30 | Liczba godzin 01:00 |
Przedmiot / temat 15 z 16 Ćwiczenia praktyczne i podsumowanie szkolenia | Typ aktywności Zajęcia | Prowadzący TOMASZ STELMACH | Data realizacji zajęć 26-02-2027 | Godzina rozpoczęcia 13:30 | Godzina zakończenia 14:30 | Liczba godzin 01:00 |
Przedmiot / temat 16 z 16 - | Typ aktywności Walidacja | Prowadzący - | Data realizacji zajęć 26-02-2027 | Godzina rozpoczęcia 14:30 | Godzina zakończenia 15:00 | Liczba godzin 00:30 |
Podsumowanie
| Rodzaj godzin | Liczba godzin |
|---|---|
Rodzaj godzin Suma godzin zegarowych usługi | Liczba godzin 14:00 |
Rodzaj godzin w tym suma godzin zajęć | Liczba godzin 11:30 |
Rodzaj godzin w tym suma godzin walidacji | Liczba godzin 00:30 |
Rodzaj godzin w tym suma przerw | Liczba godzin 02:00 |
Rodzaj godzin Suma godzin dydaktycznych bez przerw | Liczba godzin 16:00 |
Cena
Cena
Cennik
| Rodzaj ceny | Cena |
|---|---|
Rodzaj ceny Koszt przypadający na 1 uczestnika brutto | Cena 3 370,20 PLN |
Rodzaj ceny Koszt przypadający na 1 uczestnika netto | Cena 2 740,00 PLN |
Rodzaj ceny Koszt osobogodziny brutto | Cena 240,73 PLN |
Rodzaj ceny Koszt osobogodziny netto | Cena 195,71 PLN |
Liczba godzin usługi
| Rodzaj godzin | Liczba godzin |
|---|---|
Rodzaj godzin Liczba godzin zegarowych usługi | Liczba godzin 14:00 |
Prowadzący
Prowadzący
TOMASZ STELMACH
W trakcie swojej kariery uczestniczył w realizacji projektów informatycznych dla organizacji z różnych branż, ze szczególnym uwzględnieniem sektora bankowego i finansowego. Pełnił role Testera Oprogramowania, Testera Automatyzującego, QA Leada, Kierownika Testów, Architekta Testów oraz Managera Testów. W swojej pracy odpowiadał za zapewnienie jakości i bezpieczeństwa systemów informatycznych, analizę ryzyk, identyfikację podatności oraz wdrażanie dobrych praktyk związanych z cyberbezpieczeństwem i ochroną danych.
Od wielu lat prowadzi szkolenia, warsztaty, konsultacje i audyty jakości, przygotowując uczestników do samodzielnego wykonywania zadań związanych z testowaniem oprogramowania oraz podstawami bezpieczeństwa aplikacji. W pracy szkoleniowej szczególny nacisk kładzie na praktyczne aspekty identyfikowania zagrożeń, analizę podatności oraz rozwijanie świadomości bezpieczeństwa w projektach IT.
Jest organizatorem Testing Ground Conference oraz prelegentem konferencji technologicznych, gdzie dzieli się wiedzą z zakresu jakości oprogramowania, testowania, cyberbezpieczeństwa oraz rozwoju kompetencji zawodowych w branży IT.
Informacje dodatkowe
Informacje dodatkowe
Informacje o materiałach dla uczestników usługi
Uczestnicy szkolenia otrzymają materiały szkoleniowe w formie elektronicznej, obejmujące:
- checklistę wspierającą analizę bezpieczeństwa aplikacji i identyfikację najczęściej występujących podatności,
- materiały dotyczące kodów odpowiedzi HTTP wykorzystywanych podczas testowania aplikacji webowych i usług sieciowych,
- materiał wprowadzający do narzędzia OWASP ZAP wraz z przykładami jego wykorzystania podczas testów bezpieczeństwa,
- przykładowy raport z testów bezpieczeństwa prezentujący sposób dokumentowania wyników oraz zgłaszania wykrytych podatności,
- materiały edukacyjne dotyczące rodzajów ataków oraz najczęściej występujących podatności bezpieczeństwa w aplikacjach i systemach informatycznych,
- zestaw ćwiczeń praktycznych realizowanych podczas szkolenia.
Uczestnicy otrzymają również dostęp do materiałów wykorzystywanych podczas warsztatów praktycznych oraz przykładowych scenariuszy związanych z analizą bezpieczeństwa aplikacji i systemów IT.
Informacje dodatkowe
Usługa dostępna dla uczestników projektu „Małopolski Pociąg do Kariery – sezon 1” oraz „Nowy Start w Małopolsce z EURESem”. Realizacja możliwa z wykorzystaniem bonów szkoleniowych zgodnie z zasadami projektu.
Warunki techniczne
Warunki techniczne
Usługa realizowana będzie w formie zdalnej w czasie rzeczywistym z wykorzystaniem platformy szkoleniowej ClickMeeting.
Uczestnik powinien dysponować:
- komputerem lub laptopem wyposażonym w mikrofon oraz głośniki lub słuchawki,
- stabilnym dostępem do Internetu,
- aktualną przeglądarką internetową (Google Chrome, Microsoft Edge, Mozilla Firefox lub równoważną),
- aktywnym adresem e-mail umożliwiającym otrzymywanie materiałów szkoleniowych oraz informacji organizacyjnych.
Ze względu na praktyczny charakter szkolenia uczestnik powinien posiadać możliwość instalacji bezpłatnego oprogramowania wykorzystywanego podczas zajęć, w szczególności:
- narzędzia OWASP ZAP lub równoważnego oprogramowania wspierającego analizę bezpieczeństwa aplikacji,
- przeglądarki internetowej umożliwiającej wykonywanie ćwiczeń praktycznych,
- oprogramowania umożliwiającego korzystanie z materiałów szkoleniowych udostępnianych przez trenera.
Przed rozpoczęciem szkolenia uczestnicy otrzymają:
- link do platformy szkoleniowej ClickMeeting,
- instrukcję logowania i udziału w zajęciach,
- informacje organizacyjne dotyczące realizacji usługi,
- listę niezbędnego oprogramowania wykorzystywanego podczas warsztatów praktycznych,
- dostęp do materiałów szkoleniowych w formie elektronicznej.
Uczestnik powinien posiadać podstawowe umiejętności obsługi komputera oraz możliwość aktywnego udziału w ćwiczeniach praktycznych związanych z identyfikacją zagrożeń, analizą podatności oraz oceną bezpieczeństwa aplikacji i systemów informatycznych.