Aufrufe
vor 2 Jahren

WERKWANDEL 1_22

  • Text
  • Shopfloormanagement
  • Schichtplanung
  • Arbeitszeit
  • Prozessoptimierung
  • Künstliche intelligenz
  • Gefährdungsbeurteilung
  • Psyche
  • Leistungsfähigkeit
  • Entgelt
  • Ergonomie
  • Beispielsweise
  • Digitalisierung
  • Angewandte
  • Institut
  • Arbeitswissenschaft
  • Ifaa
  • Arbeit
  • Arbeitswelt
  • Werkwandel
  • Unternehmen
Das Fachmagazin zur Arbeits- und Betriebswelt von heute und morgen.

WERKWANDEL 01/2022 Wissenschaft direkt AnGeWaNt-Platform External Infrastructure Frontend DEMOL AnGeWaNt- User (1) (2) Manufacturer's Database Frontend database SWUpdate database (3) ... validate token (to beimplemented) Softwareupdateapplicationprocessing login/authenticate (1) Verification Application service (2) Device Pass service (3) Software Update Application service OpenID compliant IAM Überblick auf die verteilte Softwarearchitektur der AnGeWaNt-Plattform ›› Benutzer und Rollen müssen innerhalb von AnGeWaNt isoliert, jedoch über die gesamte Plattform differenziert und zentral verwaltet werden können. ›› Ein einzelner Benutzer soll sich nur einmal anmelden und damit Zugriff auf die ihm mittels Rollen zugeteilten Funktionen im Frontend und in den Backend-Services erhalten. ›› Aufgrund der stark entkoppelten, dezentralen Architektur der Plattform wird auf benutzerbasierte Sitzungen (Sessions) gänzlich verzichtet. Es wird pro Benutzeranmeldung ein Token ausgestellt, welches weiterführende Informationen zum Benutzer, wie Rollen und die Gültigkeitsdauer des Tokens, in verschlüsselter Form enthält. So kann jede Anfrage an einen Backend-Service und jeder Bearbeitungsschritt in den jeweiligen Prozessen auf den auslösenden Benutzer zurückgeführt werden. Die eingesetzte IAM-Lösung sollte zudem die folgenden Kriterien erfüllen: ›› Außer Benutzern sollten zukünftig auch Messgeräte und externe Services durch das IAM-System an der Plattform authentifiziert und autorisiert werden. ›› Die gewählte IAM-Lösung sollte Legacy-Systeme wie LDAP 2 unterstützen, um die Integration bestehender Benutzerverzeichnisse und deren Berechtigungen sowie Rollen zu vereinfachen. Das heißt: Bestehende Benutzer können, beispielsweise durch ihre Windows-Kennung, automatischen Zugriff auf die AnGeWaNt-Plattform erhalten. ›› Entwickler können sich durch den Einsatz einer standardkonformen OpenID-Connect IAM-Lösung auf die fachlichen Anforderungen und deren Implementation fokussieren, da keine IAM-Mechanismen mehr entwickelt werden müssen. Dies vereinfacht auch die Wartbarkeit der Plattform und ermöglicht ein vergleichsweise einfaches Austauschen der eingesetzten IAM-Lösung. ›› Es sollen weitere Identitätsserver fremder Organisationen autorisiert werden können (Federated ID), sodass deren Nutzer mit ihrer Organisations-ID sich direkt bei der AnGeWaNt-Plattform anmelden und deren Dienste nutzen können. Funktionsprinzip OpenID-Connect Ein Benutzer meldet sich über den IAM-Server an (1) und erhält mit erfolgreicher Authentifikation ein ID-Token und ein dazugehöriges Access-Token (2, 3) (siehe Abbildung auf Seite 29). Im Access-Token befinden sich die dem Benutzer zugeordneten Berechtigungen. Das Access-Token wird bei jeder Anfrage an verbundene Dienste mitgeliefert (4), welche dies beim IAM-Server validieren, um die Authentizität der Anfrage sicherzustellen (5). Funktionsweise am Beispiel von AnGeWaNt Die AnGeWaNt-Plattform ist als verteilte Softwarearchitektur aufgebaut, die im Bereich des Cloud-Computing als Platform as a Service (PaaS) angesiedelt ist. Die Plattform lässt sich grob in drei Teile einteilen (siehe Abb.3): Das Service-Modul (links), das alle relevanten Services der Plattform umfasst, das Authentifizierungs- und Autorisierungsmodul (unten), welches das IAM-System beinhaltet, sowie die externen Infrastrukturen (rechts), die zurzeit aus der DEMOL 3 -Webapplikation, einer Hersteller-Cloud, einer PTB-internen Anwendung zur Steuerung von Vakuummetrologie-Kalibrieraufträgen und zukünftig weiteren externen Diensten bestehen. 28

WERKWANDEL 01/2022 Wissenschaft direkt Anmeldung und Autorisierung (1) (3) Benutzer Identity & Access Mgmt Server (6) ID Acc. (2) (5) Validierung (4) Frontend Acc. Dienste Überblick über die Funktionsweise von OpenID-Connect Jeder Dienst (Service) ist so entworfen und entwickelt worden, dass dieser unabhängig agiert und über standardisierte REST 4 -Schnittstellen mit den übrigen Diensten kommunizieren kann. Durch diese lose Kopplung der Dienste wird eine hohe Flexibilität und Skalierbarkeit erreicht. Alle Dienste werden über ein gemeinsames Web-Frontend angebunden und dem Nutzer zur Verfügung gestellt. Dabei ist es unerheblich für den Nutzer, ob dieser Dienst sich intern oder extern befindet. Die Benutzeroberfläche bleibt konsistent. Um die hohe Verfügbarkeit und Flexibilität als PaaS zu gewährleisten, wurde als OpenID-Connect-konformes IAM-System Keycloak 5 integriert. Keycloak ermöglicht es, die jeweiligen Dienste über verschiedene Domänen zu verteilen und dabei die Sicherheit und Benutzerrechte zu gewährleisten. Dazu werden Access-Tokens an den jeweiligen Dienst ausgeliefert, um die Berechtigung des anfragenden Nutzers zu überprüfen und erteilen zu können. Diese Tokens können auch für Zugriffe an externe Dienste geschickt werden, um dort die Berechtigung auf bestimmte Ressource freizugeben. Fazit und Ausblick Die Nutzung von Industriestandards wie Open- ID-Connect und Oauth2 stellt die Zukunftsfähigkeit und Interoperabilität der IAM-Lösung sicher. ›› Das Onboarding neuer Nutzer mit einer OpenID ist deutlich vereinfacht worden, unter anderem durch den Wegfall des bisher notwendigen Registrierungsschrittes. Die notwendigen administrativen Daten können automatisch vom Identitätsprovider in die AnGeWaNt-Plattform übernommen werden. ›› Zusätzlich wird es möglich sein, fremde Identitätsprovider einzubinden, sodass bestehende Identitäten externer Infrastrukturen auf der AnGeWaNt-Plattform genutzt werden können (Federated Identity Solution), um die Dienste der Plattform zu nutzen. Identity Access Management am Beispiel von Keycloak Keycloak verfolgt einen hierarchischen Aufbau seiner Berechtigungsstruktur, an dessen Spitze die Realms stehen. Ein Realm ist vergleichbar mit einer Anwendungsdomäne. Innerhalb eines Realms befinden sich Clients, Rollen und Benutzer. Diese können zwischen verschiedenen Realms nicht ausgetauscht werden. Innerhalb des AnGeWaNt-Realms befinden sich die Clients. Ein Client entspricht einem Dienst, zum Beispiel »eichantrag-service« oder »dcc-service«. Innerhalb des Realms befinden sich auch Rollen und Benutzer. Rollen können andere Rollen enthalten (diese heißen dann in Keycloak »composite roles«) und werden Benutzern zugeordnet. Ein Benutzer meldet sich mittels Benutzernamen und Passwort an, optional zusätzlich mit einem zweiten Faktor wie zum Beispiel einem Einmalpasswort aus einer Authenticator-App eines Smartphones. Die Absicherung der gesamten AnGeWaNt-Plattform geschieht auf zwei unterschiedlichen Wegen. Das AnGe- WaNt-Frontend erhält von Keycloak einen Anmeldedialog, die Benutzername und Passwort verlangt und erst nach erfolgreicher Authentifikation den Benutzer anmeldet und zur Plattform zurückleitet. Jede Anfrage an die Backend-Services wird mittels eines Tokens (JWT 6 -basiert) an Keycloak authentifiziert. Ist das Token gültig, wird die Anfrage im Auftrag des im Frontend angemeldeten Benutzers, zu dem das Token gehört, autorisiert und ausgeführt. Dazu gibt es in jedem Backend-Service einen OAuth2 7 -Client, der die Kommunikation mit Keycloak übernimmt. OAuth 2.0 ist das Standardprotokoll für Benutzerautorisierung bei Web- und Desktopanwendungen und die technische Grundlage für OpenID-Connect. 29

© 2021 ifaa – Institut für angewandte Arbeitswissenschaft e. V.

DatenschutzImpressum