krakend/README.md
2020-10-15 20:41:24 +02:00

1.2 KiB

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, która jest dostawcą protokołu OAuth2 oraz OpenID aby zabezpieczyć nasze api za pomocą JWT.

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:

sequenceDiagram
    Użytkownik->>KrakenD: /jwt_access <br/>[Authorizaion: Bearer token]
    KrakenD->>Hydra: .well-known/jwks.json
    Hydra-->>KrakenD: jwk
    KrakenD-->>KrakenD: validator <br/>[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