Audiitorfirma tööaja arvestus
Projektide ja töötajate tööaja arvestus audiitorfirmale · Ehitatud nullist, üksi
Uuendatud
Enne
Kliendid, projektid ja töötunnid asusid ühes kohas, kus kõik firmas nägid ja muutsid kõike.
Pärast
87
õiguste märkeruutu tõestatud andmebaasi vastu enne iga väljalaset; 30 mitte midagi tegevat peideti.
- 1Inimene:Omanik
Koostab rollid märkeruutudega valdkondade kaupa (kliendid, projektid, tööaeg, aruanded) vaatamiseks, loomiseks, muutmiseks ja kustutamiseks.
- 2Inimene:Töötaja
Logib tunnid kliendi, projekti ja ülesande alla või broneerib puhkuse.
Tarkvara:VeebirakendusTuletab enne tähtaega meelde kõigile, kelle tööajatabel on veel tühi.
- 3Inimene:Projekti administraator
Kinnitab või lükkab tagasi oma projektimeeskonna nädala tööajatabeli.
- 4Tarkvara:Andmebaas
Näitab igaühele ainult seda, mida tema roll lubab: töötajad näevad oma tunde, projekti administraatorid oma meeskonda, omanikud kõiki kliente.
- 5Inimene:Omanik
Loeb tunde kliendi, projekti ja inimese kaupa dashboard'idelt ja aruannetest.
Alati töös
- Varem sai igaüks firmas avada iga kliendi ja kõigi töötunnid. Nüüd keeldub andmebaas kõigest, mida roll ei luba, isegi kui ekraan seda küsib.
- Enne iga pushi testitakse iga rolli andmebaasi isoleeritud koopia vastu.
Probleem
Audiitorfirma pidas oma kliente, projekte ja töötajate tunde tööriistas, kus iga inimene sai avada iga kliendi ja kõigi töötunnid.
Diagnoos
Juurdepääsukontroll ebaõnnestub märkamatult, kui see asub ekraanis. Seepärast pidi iga reegel olema andmebaasis ja tõestatud testidega.
Kaalutud valikud
Iga roll näeb erinevaid andmeid. Kus asuvad juurdepääsureeglid?
Valitud
Andmebaasis endas, testitud iga rolli jaoks enne iga väljalaset
Ekraan ei saa lekitada seda, mida andmebaas keeldub andmast. Hind: testikäivitus isoleeritud koopial enne iga pushi.
Tagasi lükatud
Ainult ekraanides
Inimene võis näha või muuta andmeid, mida ekraan pidi peitma.
Kirjet pole enam vaja. Kas kustutada või säilitada?
Valitud
Arhiveerida ja anonümiseerida
Tööaja kirjete ajalugu jääb terviklikuks.
Tagasi lükatud
Kustutada
Kustutamine viib kaasa ka tööaja kirjete ajaloo.
Lahendus
Ühe lehega veebirakendus hallatud Postgresi peal. Iga juurdepääsureegel asub andmebaasis ning seda tõestab enne iga väljalaset automaatne rollimaatriks.
- Rakendus
- React
- Vite
- TanStack Router
- TanStack Query
- shadcn/ui
- Chart.js
- Andmed ja turvalisus
- Supabase
- PostgreSQL row-level security
- Edge Functions (Deno)
- Majutus
- Cloudflare
- Kvaliteet
- GitHub Actions
- Role-matrix tests
- Vitest
- Property-based tests
- Accessibility tests
Seotud teenused
Arvud: Automaatne rollikontroll, 2026-09-25