# KrakenD api gateway playground ## etap2 (JWT) Tutaj już będzie deko więcej roboty. Backend z etapu1, czyli prosty nie zabezpieczony serwer REST. Do naszej infrastruktury dodajemy usługę [Hydra](https://www.ory.sh/hydra/docs/), która jest dostawcą protokołu **OAuth2** oraz **OpenID** aby zabezpieczyć nasze api za pomocą [JWT](https://jwt.io/). W poprzednim przykładzie (etap1) KrakenD posłóżył nam do sekwencji zapytań do api i jednej odpowiedzi W tym etapie wprowadzimy nowy request zabezpieczony tokenem JWT: ```mermaid sequenceDiagram Użytkownik->>KrakenD: /jwt_access
[Authorizaion: Bearer token] KrakenD->>Hydra: .well-known/jwks.json Hydra-->>KrakenD: jwk KrakenD-->>KrakenD: validator
[issuer] KrakenD->>Backend: /users/1.json Backend-->>KrakenD: response_0 KrakenD->>+Użytkownik: Response ``` Flow jest typowo testowy, na razie nie ma revoke jwt, a samo pobranie tokenu należy zrobić za pomocą pliku `Makefile`. Przykład wykorzystania KrakenD do zabezpieczenia bakendu za pomocą JWT: [![asciicast](https://asciinema.org/a/Py3dbR2m5Jt3FdhGI7eINtpdu.png)](https://asciinema.org/a/Py3dbR2m5Jt3FdhGI7eINtpdu)