Firmy a prava: tenance napric portalem
Portal nemel zadnou tenanci. Kterykoliv prihlaseny uzivatel videl vsechny tickety vsech firem i cely seznam resitelu, requireRole se nikde nevolal. Tenant je hranice viditelnosti, tenantId na ticketu, resiteli i automatizaci. Uzivatel muze patrit do vic firem, v kazde s jinou roli. Pristup napric firmami je zvlast jako platformAdmin. Tri pohledy na tickety: all, tenant, mine. Admin mezi nimi prepina vcetne vyberu firmy. O pravech rozhoduje jedine data/access.ts, klient si nic nedovozuje a bere je z GET /api/dashboard/access. Filtr na firmu je v ulozistich povinny argument, takze zapomenuty filtr neznamena vse, ale nezkompiluje se. Cizi firma vraci 403 nebo 404, nikdy tise zuzeny vysledek. Prirazeni jen v ramci firmy. Prehazovat praci mezi lidmi smi jen admin, agent si smi vzit ticket na sebe. Zmena prihlasovani: ucet klient@firma.cz zanikl, demo ucty jsou nove. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -91,6 +91,29 @@ co vratil. Bez toho byla predvalidace k nicemu.
|
||||
Prijmove zamerne neprirazuji, smerovani si ticket prevezme a podminkou
|
||||
`assigned neni splneno` neprepise rucni rozhodnuti.
|
||||
|
||||
### Firmy a prava
|
||||
|
||||
Treti a nejvazneji dira: portal nemel zadnou tenanci. Kterykoliv prihlaseny
|
||||
uzivatel videl vsechny tickety vsech firem a cely seznam resitelu, `requireRole`
|
||||
se nikde nevolal. Popis v [07-firmy-a-prava.md](07-firmy-a-prava.md).
|
||||
|
||||
- Tenant jako hranice viditelnosti. `tenantId` na ticketu, resiteli
|
||||
i automatizaci.
|
||||
- Uzivatel muze patrit do **vic firem**, v kazde s jinou roli (`memberships`).
|
||||
Pristup napric firmami je zvlast jako `platformAdmin`.
|
||||
- Tri pohledy na tickety: `all`, `tenant`, `mine`. Admin mezi nimi prepina,
|
||||
vcetne vyberu firmy.
|
||||
- `src/data/access.ts` jako jedine misto, kde se rozhoduje o pravech.
|
||||
`GET /api/dashboard/access` rekne klientovi, co smi kreslit.
|
||||
- Filtr na firmu je v ulozistich **povinny argument**. Zapomenuty filtr
|
||||
neznamena "vse", ale nezkompiluje se.
|
||||
- Nikdy tise nezuzujeme. Cizi firma vraci 403 nebo 404.
|
||||
- Prirazeni jen v ramci firmy. Prehazovat praci mezi lidmi smi jen admin,
|
||||
agent si smi vzit ticket na sebe.
|
||||
- `requireRole` nahrazen `requirePlatformAdmin`. Prava uvnitr firmy resi
|
||||
`access.ts`, protoze zavisi na tom, ktera firma pozadavek zajima.
|
||||
- Demo ucty pokryvaji vsechny tri situace vcetne cloveka ve dvou firmach.
|
||||
|
||||
### Zapsano jako otevrene rozhodnuti
|
||||
|
||||
Vsechny automatizace se stejnym spoustecem se spusti. Doporucene rozdeleni na to
|
||||
|
||||
Reference in New Issue
Block a user