Autorizare centralizată și platformă de aplicații
O singură autentificare, o singură gestionare a utilizatorilor și a drepturilor pentru toate aplicațiile interne și pentru clienți ale Atrea. Am construit o platformă centrală pe baza Zitadel, cu autentificare proprie, suport pentru multiple branduri, drepturi fin reglabile și notificări.
- Client
- Atrea s.r.o
- Year
- 2026
- Technologies
TypeScript Node.js Express PostgreSQL TypeORM Zitadel OpenID Connect Next.js Vue.js Web Push Docker
Cerințe
Atrea operează o serie de aplicații web pentru angajați, parteneri de afaceri și clienți. Fiecare dintre acestea își gestionase până acum autentificarea, utilizatorii și permisiunile pe cont propriu. Acest lucru însemna mai multe conturi pentru o singură persoană, o gestionare fragmentată a drepturilor și o logică de acces programată de fiecare dată de la zero.
Scopul a fost crearea unei platforme comune pe care să o poată folosi fiecare aplicație nouă sau existentă, cu autentificare unică, gestionare centralizată a drepturilor și servicii partajate, cum ar fi notificările sau feedbackul de la utilizatori.
Soluție
Autentificare unică (SSO)
Ca furnizor de identitate, am ales platforma IAM open-source Zitadel. Cu toate acestea, am scris propriile ecrane de autentificare (Next.js deasupra Session API v2), astfel încât înregistrarea, resetarea parolei și autentificarea multifactorială (MFA) să arate și să se comporte exact în funcție de nevoile Atrea. Angajații se autentifică cu contul corporativ Microsoft, iar utilizatorii externi cu e-mail și parolă.
Mai multe branduri pe o singură platformă
O singură instalație deservește mai multe mărci și organizații. Fiecare brand are propriul aspect vizual de autentificare, propriul domeniu, șabloane de e-mail și server SMTP de trimitere. Brandul este determinat central în funcție de aplicație și callback, astfel încât utilizatorul să nu se regăsească niciodată într-un mediu greșit.
Drepturile într-un singur loc
Aplicațiile nu mai calculează nimic singure, toată logica de permisiuni se află în serviciul central:
- roluri în cadrul fiecărei aplicații și atribuirea automată a rolului în funcție de domeniul de e-mail,
- drepturi binare și gradate (interzis / vizualizare / editare) într-o structură ierarhică,
- drepturi pe înregistrări specifice (de exemplu, partajarea unui singur proiect cu un coleg),
- administratori de aplicații și superadministratori cu jurnal de audit pentru toate modificările.
Rolurile și drepturile sunt introduse direct în tokenul de acces (JWT) la autentificare. Astfel, frontend-ul știe ce trebuie să vadă utilizatorul, fără interogări suplimentare. Backend-urile celorlalte aplicații verifică permisiunile printr-un singur apel API.
Servicii partajate pentru toate aplicațiile
- Notificări prin e-mail și Web Push, cu șabloane pentru fiecare tip de mesaj, trimitere în masă și setări de abonament pentru utilizatori.
- Multilingvism cu registru central de limbi, limbi de rezervă și traducere automată a șabloanelor.
- Feedback și suport direct din aplicații, inclusiv atașamente și notificări privind schimbarea stării.
- Profiluri de utilizator și preferințe partajate între aplicații.
Administrare
Pentru administratori, am construit un panou de administrare în Vue 3. Acesta conține utilizatori, roluri și drepturi, aplicații și clienții lor OIDC, branduri, setări de e-mail, șabloane de notificări, suport și audit. Platforma include, de asemenea, documentație pentru dezvoltatori (VitePress) cu o versiune adaptată pentru asistenți AI, pe baza căreia dezvoltatorii pot conecta aplicațiile noi rapid și uniform.
Rezultat
- Un singur cont pentru toate aplicațiile Atrea și SSO corporativ prin Microsoft.
- O aplicație nouă se conectează în câteva zile în loc de săptămâni de dezvoltare a propriei autentificări și a gestionării drepturilor.
- Gestionarea accesului într-un singur loc, inclusiv blocarea imediată a unui utilizator pe întreaga platformă.
- Pregătit pentru mai multe branduri și piețe datorită suportului pentru mai multe branduri și limbi.
- Platforma deservește deja aplicațiile de producție Atrea, iar altele sunt transferate treptat pe aceasta.
