UC-GEN-ACC-003 — Geen rol of onvolledig account afhandelen
1. Kerngegevens
| Veld | Waarde |
|---|---|
| Usecase-ID | UC-GEN-ACC-003 |
| Naam | Geen rol of onvolledig account afhandelen |
| Domein | Generiek / Account |
| Primaire actor | Gebruiker |
| Secundaire actor(en) | OefenHub frontend, OefenHub backend, autorisatieservice, profiel-/instellingendienst, routeguard, accountlogkanaal |
| Rolcontext | Nog niet bruikbaar voor een normale rolgerichte OefenHub-context. De gebruiker is geauthenticeerd en heeft een actief intern account, maar heeft geen actieve rolcontext of mist verplichte applicatiecontext. |
| Betrokken schermen | OefenHub-authentication callback; sessieverwerking; geauthenticeerde frontpage zonder rol; profiel- of vervolgflow bij verplichte accountaanvulling; routeguard- of toegangafhandeling. |
| Gerelateerde usecases | UC-GEN-ACC-001 — Eerste login en account provisioning; UC-GEN-ACC-002 — Inloggen en sessie verwerken; UC-GEN-PROF-002 — Profielgegevens wijzigen; UC-GEN-PROF-003 — Verplicht niveau instellen; UC-GEN-PROF-006 — Toegankelijkheid vóór en na login synchroniseren; UC-GEN-NOT-001 — Systeemnotificatie tonen |
| Primaire entiteiten | Users, UserRoles, Roles, UserSettings |
| Secundaire entiteiten / events | Technische sessiecontext, accountlogkanaal, NoActiveRoleContextDetected, IncompleteAccountContextDetected, MissingUserSettingsInitialized, AccountContextResolutionFailed |
| Gerelateerde popups | Niet van toepassing binnen deze accountusecase; eventuele profiel- of niveauwaarschuwingen horen bij de betreffende profielusecases. |
| Popupregister | Niet van toepassing |
| MoSCoW | Must |
2. Omschrijving
Deze usecase beschrijft hoe OefenHub omgaat met een gebruiker die succesvol is geauthenticeerd via de identity provider, waarvoor een actief intern Users-record bestaat, maar waarvoor na sessieverwerking nog geen normale OefenHub-applicatiecontext kan worden opgebouwd.
De usecase is een vervolg- en uitzonderingsflow op UC-GEN-ACC-002. UC-GEN-ACC-002 verwerkt de login, valideert de identity-providercontext, laadt het interne account, controleert Users.IsActive, werkt LastSeenAtUtc bij, laadt rollen en instellingen, en bepaalt daarna de vervolgroute. Wanneer in die routebepaling blijkt dat de gebruiker geen actieve rol heeft of verplichte context mist, wordt deze usecase toegepast.
Een gebruiker zonder actieve rolcontext krijgt geen leerling-, ouder/voogd-, docent- of beheerderfrontpage te zien, maar een beperkte geauthenticeerde context zonder rol. Een gebruiker met een actieve rol maar ontbrekende verplichte context wordt niet automatisch aangevuld met aannames, maar doorgestuurd naar de bestaande profiel- of niveauflow.
De usecase voorkomt dat clientstate, oude browsercontext, routeparameters of onvolledige profielgegevens alsnog toegang geven tot domeinfuncties waarvoor geen geldige server-side context bestaat.
3. Scope
Deze usecase omvat wel:
- detectie van een ontbrekende actieve rolcontext na succesvolle sessieverwerking;
- detectie van verplichte ontbrekende account-, profiel- of niveaucontext;
- routering naar de geauthenticeerde frontpagecontext zonder rol;
- routering naar bestaande profiel- of niveauflows wanneer verplichte gegevens ontbreken;
- veilige herstelinitialisatie van ontbrekende
UserSettingswanneer het interne account verder geldig en eenduidig is; - blokkade van reguliere domeinfunctionaliteit zolang geen geldige rolcontext beschikbaar is;
- blokkade van rolgebonden terugkeerroutes waarvoor de gebruiker na server-side contextbepaling geen toegang heeft;
- technische of accountlogregistratie van inconsistente accountcontexten.
Deze usecase omvat niet:
- authenticatie bij de identity provider;
- invoeren, controleren, wijzigen of resetten van wachtwoorden;
- accountprovisioning zelf;
- aanmaken van het interne
Users-record; - inhoudelijk kiezen, aanvragen of toekennen van rollen;
- beheerderflows voor rollen of accountbeheer;
- inhoudelijk wijzigen van profielgegevens;
- inhoudelijk kiezen van een verplicht niveau;
- synchroniseren van toegankelijkheidsinstellingen, behalve als verwijzing naar UC-GEN-PROF-006;
- aanmaken van relaties, relatie-uitnodigingen, systeemberichten, tickets, privéberichten of oefenruns;
- tonen, sluiten of verwerken van systeemnotificaties. Systeemnotificaties worden pas na een geladen frontpage- of contextweergave via UC-GEN-NOT-001 afgehandeld.
4. Pre-condities
| ID | Voorwaarde |
|---|---|
| PRE-001 | De gebruiker is succesvol geauthenticeerd via de identity provider. |
| PRE-002 | UC-GEN-ACC-002 heeft de identity-providercontext server-side gevalideerd. |
| PRE-003 | UC-GEN-ACC-002 heeft vastgesteld dat er precies één intern Users-record bestaat voor de ontvangen ExternalId. |
| PRE-004 | Het interne Users-record is actief (Users.IsActive = true). |
| PRE-005 | De OefenHub-sessiecontext wordt server-side opgebouwd op basis van databasegegevens en niet op basis van clientstate. |
| PRE-006 | De account-, rol- en profielgegevens die voor contextbepaling nodig zijn, zijn door OefenHub opvraagbaar of veilig herstelbaar. |
5. Post-condities
| ID | Resultaat |
|---|---|
| POST-001 | Een gebruiker met minimaal één geldige actieve rolcontext en complete verplichte context wordt doorgelaten naar de juiste reguliere frontendcontext of geautoriseerde terugkeerroute. |
| POST-002 | Een gebruiker zonder actieve rolcontext ziet uitsluitend de beperkte geauthenticeerde context zonder rol. |
| POST-003 | Een gebruiker met ontbrekende verplichte profiel- of niveaucontext wordt naar de passende bestaande vervolgflow geleid. |
| POST-004 | Reguliere domeinfuncties blijven geblokkeerd zolang geen geldige rolcontext beschikbaar is. |
| POST-005 | Ontbrekende UserSettings zijn veilig geïnitialiseerd wanneer herstel functioneel toegestaan is. |
| POST-006 | Een oorspronkelijke terugkeerroute is alleen gebruikt wanneer de gebruiker daar na server-side contextbepaling toegang toe heeft. |
| POST-007 | Inconsistente of onbruikbare accountcontexten zijn veilig geblokkeerd en technisch herleidbaar gemaakt zonder nieuwe domeinentiteit te introduceren. |
6. Trigger
De usecase start tijdens de route- en contextbepaling na UC-GEN-ACC-002, wanneer OefenHub moet bepalen of de geauthenticeerde gebruiker naar een normale rolgerichte frontpage, een geauthenticeerde context zonder rol, een verplichte profiel-/niveauflow of een toegangafhandeling geleid moet worden.
7. Normale processtroom
| Stap | Actor | Scherm / component | Actie | Systeemrespons | Data / regel |
|---|---|---|---|---|---|
| 1 | OefenHub backend | Sessieverwerking | Gebruikt het actieve interne account dat via UC-GEN-ACC-002 is geladen. | De contextbepaling start alleen voor een eenduidig actief intern account. | Users.IsActive = true; dubbele ExternalId-situaties zijn al geblokkeerd in UC-GEN-ACC-002. |
| 2 | OefenHub backend | Autorisatieservice | Laadt actieve roltoekenningen en bijbehorende rollen. | Alleen actieve UserRoles en actieve Roles worden meegenomen voor frontendcontext. | Inactieve rollen leveren geen frontendcontext op. |
| 3 | OefenHub backend | Profiel-/instellingendienst | Laadt UserSettings. | Gebruikersinstellingen zijn beschikbaar voor context-, voorkeur- en toegankelijkheidsverwerking. | UserSettings is gebruikersspecifiek en geen sessiebron van waarheid. |
| 4 | OefenHub backend | Profiel-/instellingendienst | Herstelt ontbrekende UserSettings wanneer het account verder geldig is. | Het systeem initialiseert toegestane defaults en vervolgt de contextcontrole. | Herstel wijzigt geen rollen of domeindata. |
| 5 | OefenHub backend | Contextbepaling | Bepaalt of minimaal één actieve bruikbare rolcontext beschikbaar is. | Bij afwezigheid van actieve rollen wordt geen reguliere rolfrontpage opgebouwd. | NoActiveRoleContextDetected. |
| 6 | OefenHub backend | Contextbepaling | Valideert rolcombinaties. | Ongeldige of conflicterende rolcombinaties blokkeren normale contextopbouw. | Leerling mag niet gecombineerd worden met ouder/voogd, docent, beheerder of TestDocent. |
| 7 | OefenHub backend | Contextbepaling | Controleert verplichte profiel- en niveaucontext voor de beschikbare rolcontext. | Het systeem bepaalt of een bestaande profiel- of niveauflow nodig is. | Ontbrekend verplicht niveau leidt naar UC-GEN-PROF-003. |
| 8 | OefenHub backend | Routering | Valideert een eventuele oorspronkelijke terugkeerroute. | De route wordt alleen gebruikt wanneer de gebruiker daar na contextbepaling server-side toegang toe heeft. | Clientstate en oude browsercontext zijn niet leidend. |
| 9 | OefenHub frontend | Frontpage zonder rol of vervolgflow | Toont de passende vervolgcontext. | Zonder actieve rol ziet de gebruiker de beperkte geauthenticeerde context zonder rol; bij ontbrekende verplichte gegevens volgt profiel- of niveauaanvulling. | Geen reguliere domeinfuncties zolang de context niet geldig is. |
| 10 | OefenHub frontend / routeguard | Beveiligde routes | Controleert bij vervolgacties opnieuw de server-side context. | Pogingen om rolgebonden routes te openen zonder geldige context worden geblokkeerd. | Routeguard / autorisatiecontrole. |
8. Alternatieve en exceptionele processtromen
| ID | Vanaf stap | Situatie | Systeemgedrag | Popup / melding | Datamutatie |
|---|---|---|---|---|---|
| ALT-001 | 2 | Er bestaan geen actieve roltoekenningen voor het account. | Het systeem bouwt geen reguliere rolfrontpage op en routeert naar de geauthenticeerde context zonder rol. | Geen popupregister-popup; beperkte frontpage of routeguardmelding. | Geen domeinmutatie. |
| ALT-002 | 2 | Alleen inactieve of technisch niet bruikbare rollen zijn aanwezig. | Het systeem behandelt dit functioneel alsof geen actieve bruikbare rolcontext bestaat. | Geen popupregister-popup; beperkte frontpage of routeguardmelding. | Geen domeinmutatie; eventueel technische logging. |
| ALT-003 | 3 | UserSettings ontbreekt bij een verder geldig actief account. | Het systeem initialiseert UserSettings met toegestane defaults en vervolgt daarna de contextcontrole. | Niet van toepassing. | Nieuw of hersteld UserSettings-record. |
| ALT-004 | 4 | UserSettings kan niet veilig worden geïnitialiseerd. | Het systeem blokkeert reguliere contextopbouw en registreert de fout technisch. | Generieke toegang- of foutafhandeling buiten popupregister. | Technische/accountlogging. |
| ALT-005 | 6 | Er bestaat een ongeldige rolcombinatie, bijvoorbeeld een leerlingrol in combinatie met een rol die daarmee niet combineerbaar is. | Het systeem blokkeert normale contextopbouw en maakt de situatie technisch herleidbaar. | Geen popupregister-popup; generieke toegangafhandeling. | Technische/accountlogging. |
| ALT-006 | 7 | Een gebruiker waarvoor niveaucontext verplicht is heeft geen geldig actief niveau. | Het systeem leidt naar UC-GEN-PROF-003 en vult geen niveau automatisch in. | Afhandeling via profielusecase. | Geen niveauwijziging binnen deze usecase. |
| ALT-007 | 7 | Verplichte profielgegevens ontbreken of zijn niet bruikbaar. | Het systeem leidt naar UC-GEN-PROF-002 of een gelijkwaardige profielaanvulling binnen de profielcontext. | Afhandeling via profielusecase. | Geen profielwijziging binnen deze usecase. |
| ALT-008 | 8 | Een oorspronkelijke terugkeerroute wijst naar een functie waarvoor de gebruiker geen geldige context heeft. | Het systeem negeert de terugkeerroute en kiest de veilige vervolgcontext. | Geen popupregister-popup; routeguard- of toegangafhandeling. | Geen domeinmutatie. |
| ALT-009 | 10 | Gebruiker probeert via directe URL een rolgebonden pagina te openen zonder geldige rolcontext. | Routeguard blokkeert de route en leidt terug naar de passende beperkte context of toegangafhandeling. | Geen popupregister-popup. | Geen domeinmutatie. |
| ALT-010 | 5-8 | Accountcontext kan door inconsistente data niet betrouwbaar worden bepaald. | Het systeem blokkeert reguliere applicatietoegang en legt de situatie technisch/accountlogmatig vast. | Generieke toegangafhandeling. | Technische/accountlogging. |
9. Business rules
| ID | Regel |
|---|---|
| BR-001 | Een succesvolle identity-providerlogin is onvoldoende voor reguliere OefenHub-toegang wanneer geen bruikbare actieve OefenHub-rolcontext bestaat. |
| BR-002 | Actieve rolcontexten worden uitsluitend server-side bepaald op basis van actieve UserRoles en actieve Roles. |
| BR-003 | Clientstate, oude browsercontext, routeparameters of formulierwaarden mogen geen rolcontext afdwingen. |
| BR-004 | Een gebruiker zonder actieve rolcontext krijgt geen toegang tot reguliere leerling-, ouder/voogd-, docent- of beheerderfunctionaliteit. |
| BR-005 | De geauthenticeerde context zonder rol is bedoeld voor oriëntatie, uitleg en toegestane vervolgstappen, niet voor domeinmutaties in oefeningen, relaties, berichten of meldingen. |
| BR-006 | Verplichte profiel- of niveauaanvullingen worden afgehandeld door de bestaande profielusecases en niet door automatische aannames in accountlogin. |
| BR-007 | Een ontbrekend verplicht niveau mag niet automatisch met een standaardwaarde worden ingevuld. |
| BR-008 | Ontbrekende UserSettings mogen veilig worden geïnitialiseerd wanneer het interne account actief, eenduidig en verder geldig is. |
| BR-009 | Herstelinitialisatie van UserSettings mag geen rollen, relaties, autorisaties, berichten, meldingen, oefendata of niveauautorisaties wijzigen. |
| BR-010 | Ongeldige rolcombinaties of inconsistente accountcontexten blokkeren normale contextopbouw en worden technisch herleidbaar gemaakt. |
| BR-011 | De keuze van een frontendcontext is applicatielogica en wordt niet als aparte sessie- of accountstatus opgeslagen. |
| BR-012 | Een oorspronkelijke terugkeerroute mag alleen worden gebruikt wanneer de gebruiker na server-side contextbepaling toegang heeft tot die route. |
| BR-013 | Systeemnotificaties mogen de accountcontextbepaling niet blokkeren en worden pas na een geladen frontpage- of contextweergave verwerkt. |
10. Datavalidatie
| Veld / object | Validatie |
|---|---|
Users.Id | Moet verwijzen naar precies één actief intern account binnen de sessieverwerking. |
Users.IsActive | Moet true zijn; gedeactiveerde accounts vallen buiten deze usecase en worden geblokkeerd in UC-GEN-ACC-002. |
UserRoles | Alleen actieve roltoekenningen tellen mee voor contextbepaling. |
Roles | Alleen bestaande actieve rollen die functioneel als frontendcontext bruikbaar zijn, mogen context opleveren. |
| Rolcombinatie | Leerling mag niet gecombineerd worden met ouder/voogd, docent, beheerder of TestDocent. Ouder/voogd, docent en beheerder mogen wel gecombineerd voorkomen volgens de algemene rolregels. |
UserSettings | Moet beschikbaar zijn voor verdere context- en voorkeurstoepassing; ontbrekend record mag veilig worden geïnitialiseerd wanneer het account eenduidig en actief is. |
| Verplicht niveau | Mag alleen als geldig worden beschouwd wanneer het server-side bestaat en binnen de toegestane context van de gebruiker valt. |
| Verplichte profielgegevens | Moeten server-side worden gevalideerd voordat zij als complete accountcontext tellen. |
| Terugkeerroute | Mag alleen worden gebruikt wanneer de gebruiker na contextbepaling server-side toegang heeft tot de doelroute. |
11. Datamutaties en events
| Stap | Type | Entiteit / event | Mutatie |
|---|---|---|---|
| 2 | Read | UserRoles, Roles | Leest actieve roltoekenningen en actieve rollen voor contextbepaling. |
| 3 | Read | UserSettings | Leest gebruikersinstellingen voor context-, voorkeur- en toegankelijkheidsverwerking. |
| 4 | Datamutatie | UserSettings | Maakt of initialiseert ontbrekende gebruikersinstellingen met toegestane defaults wanneer herstel veilig is. |
| 4 | Technisch event / logging | MissingUserSettingsInitialized | Legt vast dat een veilige herstelinitialisatie is uitgevoerd. |
| 5 | Technisch event / logging | NoActiveRoleContextDetected | Legt vast dat geen actieve rolcontext beschikbaar was voor normale frontendopbouw. |
| 7 | Technisch event / logging | IncompleteAccountContextDetected | Legt vast dat verplichte account-, profiel- of niveaucontext ontbreekt. |
| 8 | Technisch event / logging | ReturnRouteDeniedForAccountContext | Legt vast dat een oorspronkelijke terugkeerroute niet gebruikt is omdat de server-side context onvoldoende rechten geeft. |
| ALT-005 | Technisch event / logging | InvalidRoleCombinationDetected | Legt vast dat normale contextopbouw is geblokkeerd door een ongeldige rolcombinatie. |
| ALT-010 | Technisch event / logging | AccountContextResolutionFailed | Legt vast dat normale contextopbouw is geblokkeerd door inconsistente of onbruikbare context. |
12. Geen datamutaties
| Entiteit | Reden |
|---|---|
| Identity-providercredentials | OefenHub beheert geen wachtwoorden, credentials of credentialstatus. |
Users | Deze usecase activeert, deactiveert, anonimiseert of wijzigt het interne account niet. LastSeenAtUtc hoort bij UC-GEN-ACC-002. |
UserRoles | Deze usecase kent geen rollen toe en wijzigt geen roltoekenningen. |
Roles | Rollen worden alleen gelezen voor contextbepaling. |
RelationshipInvitations | Uitnodigingskoppeling hoort bij UC-GEN-ACC-001 en niet bij deze afhandeling. |
SystemMessages | Deze usecase maakt geen systeemberichten aan. |
UserRelationships | Er ontstaan geen relaties door het afhandelen van een ontbrekende rol of onvolledige context. |
Tickets | Er wordt geen melding aangemaakt of gewijzigd. |
PrivateMessageThreads / PrivateMessages | Er wordt geen privébericht of thread aangemaakt. |
| Oefenruns en oefenresultaten | Een gebruiker zonder geldige frontendcontext mag geen oefenrun starten of wijzigen. |
SiteNotifications | Systeemnotificaties worden niet aangemaakt of gewijzigd; tonen gebeurt pas na contextweergave via UC-GEN-NOT-001. |
SiteFeatureToggles | Featuretoggles kunnen worden gelezen door route- of contextlogica, maar worden niet gewijzigd. |
| Sessie-entiteit | Er is geen aparte OefenHub-sessietabel; sessiestate blijft technisch. |
13. State diagram
Niet van toepassing. Deze usecase raakt geen eigen persistent statusobject. Accounttoegang wordt afgeleid uit identity-providercontext, applicatiesessie, Users.IsActive, actieve rollen en verplichte gebruikerscontext.
De functionele toestanden in deze usecase zijn afgeleide contextuitkomsten en geen persistente accountstatussen:
- actieve rolcontext beschikbaar;
- geen actieve rolcontext beschikbaar;
- verplichte profiel- of niveaucontext ontbreekt;
- accountcontext inconsistent of onbruikbaar.
14. Decision flow
15. Data lifecycle diagram
16. Sequence diagrammen
16.1 Context zonder rol of onvolledige context bepalen
16.2 Directe route zonder geldige context blokkeren
17. Popupverwijzingen
| PopupKey | Moment | Variant | Doel |
|---|---|---|---|
| Niet van toepassing | Afhandeling geen rol | Niet van toepassing | De gebruiker wordt via beperkte frontpagecontext of routeguard afgehandeld. |
| Niet van toepassing | Onvolledige profiel- of niveaucontext | Niet van toepassing | Eventuele waarschuwingen of invoerafhandeling horen bij UC-GEN-PROF-002 of UC-GEN-PROF-003. |
| Niet van toepassing | Inconsistente accountcontext | Niet van toepassing | De afhandeling verloopt via generieke toegangafhandeling en technische/accountlogging. |
18. Afleiding naar Functioneel Ontwerp / Technisch Ontwerp / Software Requirements Specification
| Doeldocument | Afleiding |
|---|---|
| Functioneel Ontwerp | Beschrijf dat een geauthenticeerde gebruiker zonder actieve rolcontext niet naar een reguliere rolfrontpage gaat, maar naar de bestaande frontpagecontext zonder rol. |
| Functioneel Ontwerp | Beschrijf dat ontbrekende verplichte account-, profiel- of niveaucontext naar bestaande profielvervolgflows leidt en niet automatisch met aannames wordt gevuld. |
| Functioneel Ontwerp | Beschrijf dat systeemnotificaties pas na een geladen frontpage- of contextweergave worden gecontroleerd en deze accountflow niet blokkeren. |
| Technisch Ontwerp: identiteit, authenticatie en rolcontext, autorisatie, Blazor frontend | Beschrijft dat rolcontext, frontendcontext en terugkeerroute server-side worden bepaald en gevalideerd op basis van Users, UserRoles, Roles en UserSettings. |
| Technisch Ontwerp: identiteit, authenticatie en rolcontext, autorisatie, Blazor frontend | Beschrijft dat ontbrekende UserSettings voor een verder geldig account veilig geïnitialiseerd mogen worden zonder rollen of domeindata te wijzigen. |
| Technisch Ontwerp: identiteit, authenticatie en rolcontext, autorisatie, Blazor frontend | Beschrijft dat inconsistente rolcombinaties of onbruikbare accountcontexten normale contextopbouw blokkeren en via accountlogging herleidbaar zijn. |
| Software Requirements Specification | Beschrijft de afhandeling van accounts zonder rol, incomplete accountcontext, veilige contextbepaling en blokkade van domeinfuncties zolang geen geldige frontendcontext bestaat. |
| Database-informatie | Beschrijft bij identiteit/autorisatie dat geen aparte accountstatus- of sessietabel nodig is voor deze flow en dat Users.IsActive, actieve rollen en UserSettings leidend zijn. |
| Ontwerpbronnen | Business rules, autorisatiematrix, domeinobjecten, command-register, event-register en matrices uitbreiden met deze accountcontextafhandeling. |
19. SRS-trace
Deze usecase bevat geen normatieve requirementtekst. De centrale eis en acceptatiecriteria staan in de SRS; onderstaande tabel koppelt de usecase-afleiding alleen aan centrale SRS-*- en AC-*-items.
| Usecase-afleiding | Dekt | Usecasecontext |
|---|---|---|
REQ-UC-GEN-ACC-003-001 | SRS-AUTH-001 SRS-ACC-002 AC-AUTH-001 AC-ACC-002 | Na succesvolle sessieverwerking controleren of voor het interne account minimaal één actieve bruikbare rolcontext beschikbaar is |
REQ-UC-GEN-ACC-003-002 | SRS-AUTH-001 SRS-ACC-002 AC-AUTH-001 AC-ACC-002 | Een geauthenticeerde gebruiker zonder actieve rolcontext naar de beperkte frontpagecontext zonder rol leiden |
REQ-UC-GEN-ACC-003-003 | SRS-AUTH-001 SRS-ACC-002 SRS-LRN-009 SRS-TCH-001 SRS-GUA-001 SRS-ADM-002 AC-AUTH-001 AC-ACC-002 AC-LRN-009 AC-TCH-001 AC-GUA-001 AC-ADM-002 | Reguliere leerling-, ouder/voogd-, docent- en beheerderfunctionaliteit blokkeren zolang geen geldige rolcontext beschikbaar is |
REQ-UC-GEN-ACC-003-004 | SRS-AUTH-001 SRS-AUTH-002 SRS-ACC-002 AC-AUTH-001 AC-AUTH-002 AC-ACC-002 | Actieve frontendcontexten server-side bepalen en mag daarvoor geen clientstate, oude browsercontext of routeparameter als bron van waarheid gebruiken |
REQ-UC-GEN-ACC-003-005 | SRS-AUTH-001 SRS-ACC-002 AC-AUTH-001 AC-ACC-002 | Ongeldige rolcombinaties blokkeren voordat een normale frontendcontext wordt opgebouwd |
REQ-UC-GEN-ACC-003-006 | SRS-ACC-002 SRS-ACC-003 SRS-CAT-006 AC-ACC-002 AC-ACC-003 AC-CAT-006 | Ontbrekende verplichte profiel- of niveaucontext detecteren en naar de daarvoor bedoelde profiel- of niveauflow leiden |
REQ-UC-GEN-ACC-003-007 | SRS-ACC-002 SRS-CAT-001 AC-ACC-002 AC-CAT-001 | Een ontbrekend verplicht niveau niet automatisch invullen met een standaardaanname |
REQ-UC-GEN-ACC-003-008 | SRS-ACC-002 SRS-NFR-SEC-001 AC-ACC-002 AC-NFR-SEC-001 | Ontbrekende UserSettings bij een verder geldig actief account veilig kunnen initialiseren met toegestane defaults |
REQ-UC-GEN-ACC-003-009 | SRS-AUTH-001 SRS-ACC-002 SRS-REL-001 SRS-MSG-001 SRS-TIC-002 AC-AUTH-001 AC-ACC-002 AC-REL-001 AC-MSG-001 AC-TIC-002 | Herstelinitialisatie van UserSettings niet gebruiken om rollen, relaties, autorisaties, berichten, meldingen of oefendata te wijzigen |
REQ-UC-GEN-ACC-003-010 | SRS-AUTH-001 SRS-ACC-002 AC-AUTH-001 AC-ACC-002 | Een oorspronkelijke terugkeerroute alleen gebruiken wanneer de gebruiker na server-side contextbepaling toegang heeft tot die route |
REQ-UC-GEN-ACC-003-011 | SRS-AUTH-001 SRS-ACC-002 AC-AUTH-001 AC-ACC-002 | Directe toegang tot rolgebonden routes blokkeren wanneer de gebruiker geen geldige server-side rolcontext heeft |
REQ-UC-GEN-ACC-003-012 | SRS-AUTH-001 SRS-ACC-002 SRS-NFR-SEC-001 SRS-NFR-AUD-001 AC-AUTH-001 AC-ACC-002 AC-NFR-SEC-001 AC-NFR-AUD-001 | Inconsistente of onbruikbare accountcontexten veilig blokkeren en technisch herleidbaar maken |
REQ-UC-GEN-ACC-003-013 | SRS-ACC-002 SRS-REL-001 SRS-MSG-001 SRS-TIC-001 SRS-LRN-009 AC-ACC-002 AC-REL-001 AC-MSG-001 AC-TIC-001 AC-LRN-009 | Bij afhandeling van geen rol of onvolledige accountcontext geen relaties, uitnodigingen, systeemberichten, tickets, privéberichten of oefenruns aanmaken |
REQ-UC-GEN-ACC-003-014 | SRS-ACC-002 SRS-POP-002 AC-ACC-002 AC-POP-002 | Systeemnotificaties pas na een geladen frontpage- of contextweergave laten verwerken volgens de systeemnotificatie-usecases |