Ein Kundenportal für die Identity Experience Platform
Das Tech-Startup ZITADEL ist grad auf der Überholspur. Im umkämpften Markt der Identity und Access Management Systeme bietet ZITADEL Features wie Swiss Based Datahosting, B2B Multimandantenfähigkeit und Delegated Access Management. Das gibts weder bei Auth0, noch bei Keycloak oder sonstwo. Wir haben das neue Kundenportal für ZITADEL V2 umgesetzt.
Zu ZITADELZum KundenportalWas ist eigentlich ein IAM?
Früher wurden Login-Systeme und Benutzerverwaltungen für jede Applikation individuell programmiert. Dann kamen die ersten Identity-Access-Management Systeme und haben das Leben in der Software-Entwicklung massiv vereinfacht. Nach vielen Jahren Durcheinander konnte sich die Welt sogar schon fast auf ein universelles und einheitliches Authentifizierungsprotokoll einigen. Auch wenn OpenID Connect noch nicht von allen Beteiligten konsequent und richtig angewendet wird.
Das Projekt
In den letzten Jahren konnte das Team hinter ZITADEL einige Erfolge feiern. Wie immer in der Software-Welt war es irgendwann Zeit für eine Generalüberholung. Das neue Konzept sah vor, dass komplett getrennte, eigenständige IAM-Instanzen pro Kund*in erstellt werden sollten. Das Team bei ZITADEL hat das neue IAM-System und eine System-API zur Verwaltung dieser Instanzen programmiert. Wir haben uns währenddessen ums Kundenportal zur Verwaltung dieser Instanzen und Zahlungsinformationen gekümmert.
Die Herausforderung
Ein Kundenportal zur Verwaltung eines Systems entwickeln, während sich das zu verwaltende System ebenfalls noch im Bau befindet. Die vielen Umsysteme in der richtigen Reihenfolge zusammenhängen.
Die komplexe Systemwelt
Wenn du bei ZITADEL deine IAM-Instanz erstellst, passiert im Hintergrund einiges. Ein Mailjet-Account, ein Stripe-Konto, die Instanz natürlich, ein Admin-User in dieser Instanz, ein Zertifikat bei Google Cloud für deine Domain und noch mehr.
Das Publikum
Ein reibungsloser Onboardingprozess als höchstes Ziel. Software-Engineers als Zielpersona: Ein schwer zu befriedigendes Publikum. Wenns nicht flutscht, probieren die einfach das nächste Produkt.
Unsere Lösung
Components First! Wir haben erstmal mit einem Designsystem gestartet. Sind die einzelnen Bausteine visuell vorhanden, ist es nachher einfacher, eine einheitliche und funktinierende Oberfläche zu gestalten. Danach haben wir ein Umsystem nach dem anderen angehängt, in engem Austausch mit dem Team bei ZITADEL, das gleichzeitig die von uns benötigte ZITADEL-System-API aus dem Boden gestampft hat.
«Das Ziel war, unseren Kund*innen ein Portal mit einfachem Onboarding zu bieten. smartive hat dies trotz der Komplexität vieler Umsysteme super umgesetzt.»
Fabienne Gerschwiler, Chief Product Officer
Huhn-Ei
Eine Verwaltungsplattform für Benutzerverwaltungen braucht auch eine eigene Benutzerverwaltung. Klar oder? Wer soll denn sonst die Benutzer*innen für die Benutzerverwaltungsverwaltungsplattform verwalten?! Das klingt zwar nach einem schlechten Witz. Ist aber gar nicht so einfach zu lösen und hat während Projektbesprechungen immer mal wieder für verwirrte Blicke und lustige Situationen gesorgt.
Unter der Haube
Technology
Die Plattform haben wir mit Next.js und Tailwind umgesetzt. Für die Komponentenlibrary kam Storybook zum Einsatz.
API(s)
Viele Umsysteme, viele APIs. Wir haben gRPC-, REST- und GraphQL-Schnittstellen angebunden.
Deployment
Mit Github Actions und Terraform auf die Google Cloud Serverlesss Infrastruktur.
Das Team hinter ZITADEL.
Wenn Josh gerade keine Benutzerverwaltungs-Verwaltungen verwaltet, bespricht er gern dein Projekt mit dir.