Tapatybės tiekėjas
Prisijungimo, sesijų ir tapatybės srautų pagrindas WebEdge sistemoms.
WebEdge projektas
Tapatybės tiekėjas
Iššūkis
Kiekvienai programai kartoti autentifikaciją būtų lėta ir rizikinga.
Ką darėme
Atskyrėme tapatybės logiką į savarankišką modulį su tipizuotais srautais ir integracijomis.
Rezultatas
Nauji produktai gali remtis vienu prisijungimo pagrindu vietoje atskirų sprendimų.
Dev-story straipsnis
Kaip buvo kuriamas projektas: Tapatybės tiekėjas
Kuriant naujus produktus, kartoti autentifikacijos logiką brangino palaikymą ir įvedė nenuoseklumus skirtinguose klientuose.
Skyriai
06
Moduliai
04
Stackas
TypeScript + Convex
Kodėl projektas atsirado
Kiekvienai programai kartoti autentifikaciją būtų lėta ir rizikinga.
Kuriant naujus produktus, kartoti autentifikacijos logiką brangino palaikymą ir įvedė nenuoseklumus skirtinguose klientuose.
Ką sukūrėme
Atskyrėme tapatybės logiką į savarankišką modulį su tipizuotais srautais ir integracijomis.
Įdiegėme bendrą identiteto modulį su prisijungimo pradžia, sesijos valdymu ir OIDC orientuota tvarka.
Pagrindiniai moduliai ir vartotojo kelias
Sąskaitų įrašai ir sesijos metrika leidžia aiškiai matyti aktyvią vartotojo būseną.
Prisijungimo ekranai ir autorizacijos keliai atskirti nuo verslo formų, kad verslo funkcijos netaptų priklausomos nuo tapatybės kodo.
Profilio laukai, rolės ir rodomi atributai suvienodinti pagal vieną šaltinį, todėl produktams tereikia prisijungimo kontrakto.
Saugos tikrinimai palieka aiškią kontrolės ribą ir supaprastina aptikimą, kai reikia auditui.
Architektūra ir technologiniai sprendimai
Technologinis pagrindas: TypeScript, Convex, OIDC. Ši dalis svarbi ne dėl logotipų sąrašo, o dėl to, kaip pasirinktas stackas padeda valdyti duomenis, būsenas, vartotojo veiksmus ir tolimesnę priežiūrą.
Tapatybės keliai neįrašyti į kiekvieną produktą atskirai: logika yra centralizuota, o vartotojo funkcijos gauna tik reikalingą kontekstą.
Kaip tai veikia realiame scenarijuje
Realiame naudojime „Tapatybės tiekėjas“ veikia kaip nuosekli seka: pirmiausia sprendžiama pradinė problema, tada vartotojas atlieka pagrindinį veiksmą, mato aiškų duomenų kelią ir rezultatą. Taip patirtis lieka logiška, o ne atsitiktinis ekranų rinkinys.
Praktinė vertė matoma ten, kur anksčiau reikėjo rankinio darbo: dalis proceso automatizuota, atsakomybės aiškiai atskirtos, o kiekvienas modulis atlieka vieną suprantamą funkciją. Būtent dėl to sprendimą lengva prižiūrėti ir plėsti.
Rezultatas ir pamokos
Nauji produktai gali remtis vienu prisijungimo pagrindu vietoje atskirų sprendimų.
Nauji projektai pradeda su bendru vartotojo pagrindu, o priežiūra tampa mažiau švaistoma ir labiau nuspėjama.
Susiję straipsniai
Toliau skaityti
Susijusios projektų istorijos
Šie projektai turi artimų technologinių arba produkto sprendimų, todėl padeda matyti, kaip tas pats principas veikia kitame kontekste.
Dev-storyWebEdge CMS ir turinio API
Turinio valdymas, kuris maitina svetaines ir leidžia komandai publikuoti be kūrėjo įsikišimo.
WebEdge projektas
Savarankiškai valdoma reaktyvi duomenų platforma
Savarankiškai valdoma reaktyvi duomenų platforma
Eksperimentinis duomenų sluoksnis realaus laiko programoms ir infrastruktūros kontrolei.
WebEdge projektas
Convex Vue Query adapteris
Convex Vue Query adapteris
Bibliotekos tipo modulis, jungiantis Convex duomenis su Vue Query darbo eiga.
Turite panašią idėją?
Aptarti projektą