Ridser

Ridser ist die Abkürzung für Rust Identity Service. Es ist eine wiederverwendbare Komponente für das Backend for frontend Entwurfsmuster.

Service 1 Service 3 Service 2 Assets index.html File server Proxy Ridser Frontend

Es stellt für das Frontend – den im Browser des Benutzers laufenden Teil – Mechanismen bereit, um eine Benutzersitzung aufzubauen und Anmeldeprozesse abzuwickeln.

Die Anmeldung wird über einen OpenID Connect Anbieter wie Keycloak ermöglicht. Diese Anbieter stellen ein Token aus, das für Aufrufe an Webdiensten zur Authentifizierung und Autorisierung genutzt werden kann. Damit dieses Token nicht den gesicherten Server verlässt, wird dem Benutzer gegenüber ein http-only-Cookie zur Sitzungserkennung erstellt und das Token in der serverseitigen Sitzung gespeichert.

Über Proxy-Regeln lassen sich Aufrufe an Webdienste durchreichen. Ridser ergänzt bei diesen Aufrufen das Token, sodass alle dahinterliegenden Microservices authentifizierte Aufrufe erhalten.

Gleichzeitig wird ein Webserver für Dateien gestartet, um HTML-Dateien, Bilder und CSS ausliefern zu können. Damit können eine oder mehrere HTML- und JavaScript-Anwendungen ausgeliefert werden.