From d2cbd54d613f69771a298dff84cd775f94beb50b Mon Sep 17 00:00:00 2001 From: Christoph Reiter <reiter.christoph@gmail.com> Date: Thu, 28 Oct 2021 11:07:38 +0200 Subject: [PATCH] Add the mermaid overview from the dev guide --- docs/index.md | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/docs/index.md b/docs/index.md index c22ed56..9b3dad3 100644 --- a/docs/index.md +++ b/docs/index.md @@ -10,4 +10,30 @@ gateway and also is a dependency of every other API bundle. * It configures all dependencies to our needs (api-platform, symfony, etc.) * and more ... + +# Overview + A minimal working relay API gateway consists of the core bundle and an auth bundle. + +```mermaid +graph TD + style core_bundle fill:#606096,color:#fff + + subgraph API Gateway + api(("API")) + auth_bundle("Auth Bundle") + core_bundle("Core Bundle") + core_bundle --> auth_bundle + api --> core_bundle + end + + click auth_bundle "./#auth-bundle" + click user_session "./#usersession" +``` + +### Auth Bundle + +The auth bundle takes care of user authentication and communicates with an OIDC +server, for example [Keycloak](https://www.keycloak.org). It creates the Symfony +user object and converts OAuth2 scopes to Symfony user roles used for +authorization. -- GitLab