
„Dozvola je putanja kroz graf, ne lanac joinova.“
Platforma za sastanke sa graf modelom dozvola
Od sastanka ostaje zapis, ne samo poziv: ko je bio, šta je rečeno, koji dokumenti su bili u igri i ko ih je smio vidjeti. White-label platforma za zdravstvo i finansije — proizvod je prodan.
White-label platforma za sastanke u zdravstvu i finansijama, pod HIPAA režimom. Od sastanka ne ostaje samo poziv nego zapis: ko je bio, šta je rečeno, koji dokumenti su bili u igri i ko ih je smio vidjeti.
Dozvole su modelovane kao graf u Neo4j-u, ne kao lanac joinova. Pitanje "smije li ova osoba vidjeti ovaj dokument" dobija odgovor odmah, bez obzira koliko veza stoji između njih — a dokument nije podređen sastanku: može pripadati većem broju sastanaka i imati svoju istoriju verzija.
Fajl se može vezati za sastanak dok sastanak traje i odmah dobija ispravne dozvole za sve prisutne. Pacijent ulazi kao gost, bez otvaranja naloga, što HIPAA i traži. Transkripcija ide u realnom vremenu, pa je zapis gotov kad i sastanak. Proizvod je prodan.
Problem
Ograničenje
Šta smo uradili
Dozvole kao graf — naša arhitektonska odluka
Ljudi, sastanci, fajlovi i potpisi su čvorovi; čitanje, pisanje, preuzimanje i brisanje su veze. Pitanje pristupa je putanja kroz graf, odgovorena jednim prolazom.
4 vrste dozvola po dokumentuDokument stoji sam, ne pod sastankom
Verzionisanje i pripadnost većem broju sastanaka; vezivanje za sastanak dok traje, sa ispravnim dozvolama za sve prisutne. Potpisi kroz DocuSign; HIPAA guest pristup bez naloga.
Gost ulazi bez otvaranja nalogaZapis gotov kad i sastanak
Transkripcija u realnom vremenu kroz AWS Transcribe sa razdvajanjem govornika — transkript ulazi u agendu sljedećeg sastanka. Snimanje i postprocesiranje snimaka naš dio.
Transkripcija u realnom vremenu
Sastanak nosi učesnike, snimke, transkripte i dokumente — a svaki artefakt ima svoju publiku. Guest pristup za pacijente: na konsultaciju bez otvaranja naloga (HIPAA).
Rezultat
Kad se pravo pristupa ne može provjeriti u trenutku, sastanak prestaje biti dokaz i postaje rizik. U zdravstvu i finansijama zapis koji se ne može pripisati imenovanoj osobi ne vrijedi ništa — bez obzira koliko je snimaka sačuvano.
Šta bismo uradili drugačije
Granicu prema medijskom sloju bismo zapisali. Video je stajao na postojećem serveru, a snimanje i postprocesiranje su bili naš dio — ta linija je bila jasna u radu, ali nije nigdje zapisana.
Dozvole bismo testirali na dubini grafa od početka. Graf rješava pitanje elegantno na pet veza; tek na petnaest se vidi je li model dobar ili samo brz.
- Neo4j
- WebRTC
- AWS Transcribe
- AWS
- DocuSign
- Realtime