diff --git a/krav/07 Brukeradministrasjon og tilgangsstyring/applikasjoner/02 Iterasjon 3 - Grunnleggende tilgangsstyring for intern support/opprette_applikasjon.design.md b/krav/07 Brukeradministrasjon og tilgangsstyring/applikasjoner/02 Iterasjon 3 - Grunnleggende tilgangsstyring for intern support/opprette_applikasjon.design.md index 4cdd85e..618edbf 100644 --- a/krav/07 Brukeradministrasjon og tilgangsstyring/applikasjoner/02 Iterasjon 3 - Grunnleggende tilgangsstyring for intern support/opprette_applikasjon.design.md +++ b/krav/07 Brukeradministrasjon og tilgangsstyring/applikasjoner/02 Iterasjon 3 - Grunnleggende tilgangsstyring for intern support/opprette_applikasjon.design.md @@ -11,9 +11,10 @@ Opprettelse skjer i en **dialogboks (modal)** som åpnes fra listevisningen for Dialogboks med: - **Tittel:** "Opprett ny applikasjon" -- **Felter** (alle obligatoriske): - - Identitetsleverandør — valg mellom *Feide* og *Maskinporten* (FS skal ikke være valgbar) - - Ekstern ID — ID hos valgt identitetsleverandør (verifiseres ved innsending) +- **Felter** (obligatoriske, men avhengig av valgt identitetsleverandør): + - Identitetsleverandør — valg mellom *Feide* og *Maskinporten*; *FS* vises som alternativ kun for super-applikasjonsadministrator (Sikt kundestøtte) + - Ekstern ID — ID hos valgt identitetsleverandør (verifiseres ved innsending) — gjelder Feide og Maskinporten + - Navn — fylles ut i dialogen når identitetsleverandøren er FS (for Feide og Maskinporten hentes navnet fra idP-en) - Organisasjon — valgliste; antall valg avhenger av rollen: - Tilgang til kun én organisasjon: forhåndsvalgt og låst - Tilgang til flere organisasjoner: valgliste begrenset til disse @@ -23,7 +24,7 @@ Dialogboks med: ## Interaksjonsmønstre ### Primærhandling -*Opprett*-knappen sender skjemaet. Verifiserer ekstern ID mot identitetsleverandøren, sjekker unik visningsnavn og unik ID. Ved suksess lukkes dialogen og brukeren navigeres til detaljsiden for applikasjonen. +*Opprett*-knappen sender skjemaet. Verifiserer ekstern ID mot identitetsleverandøren, sjekker unik visningsnavn og unik ID. Er identitetsleverandøren FS, verifiseres i stedet at organisasjonen har en FS-datakilde i alle miljøer før noe opprettes. Ved suksess lukkes dialogen og brukeren navigeres til detaljsiden for applikasjonen. ### Sekundære handlinger - *Avbryt* lukker dialogen uten å opprette @@ -44,6 +45,7 @@ Dialogboks med: | Feil (ID ikke funnet) | Feilmelding ved ID-feltet: "ID-en kunne ikke verifiseres hos {identitetsleverandør}" | | Feil (ID i bruk) | Feilmelding ved ID-feltet: "ID-en er allerede registrert" | | Feil (visningsnavn i bruk) | Feilmelding på toppen av dialogen: "Visningsnavnet «{navn}» er allerede i bruk" — siden navnet hentes fra idP-en, kan brukeren ikke endre det her | +| Feil (mangler FS-datakilde) | Feilmelding på toppen av dialogen: "Organisasjonen mangler FS-datakilde i {miljø} — applikasjonen ble ikke opprettet". Dialogen holdes åpen med utfylte verdier | | Suksess | Dialog lukkes, navigasjon til detaljside, eventuelt toast/banner "Applikasjonen er opprettet" på detaljsiden | ## Per-scenario detaljer @@ -51,8 +53,11 @@ Dialogboks med: ### Scenario: Velge identitetsleverandør ved opprettelse Valget mellom Feide og Maskinporten presenteres tydelig (radioknapper eller segmentert kontroll). Etter opprettelse vises identitetsleverandøren som låst/skrivebeskyttet på detaljsiden. -### Scenario: FS er ikke en valgbar identitetsleverandør -FS skal ikke vises som alternativ i dialogen i det hele tatt. +### Scenario: FS er valgbar identitetsleverandør for Sikt kundestøtte +FS vises som et tredje alternativ i idP-velgeren når brukeren har super-applikasjonsadministrator-rollen. Velges FS, erstattes feltet for ekstern ID av et navnefelt, og dialogen forklarer at applikasjonen får den samme identiteten i alle miljøer og at passord settes etterpå per miljø. + +### Scenario: FS er ikke valgbar for øvrige administratorer +For administratorer uten super-applikasjonsadministrator-rollen skal FS ikke vises som alternativ i dialogen i det hele tatt. ### Scenario: Opprette applikasjon når administrator har tilgang til kun én organisasjon Organisasjonsfeltet er forhåndsvalgt med administratorens eneste organisasjon og kan ikke endres. @@ -78,6 +83,15 @@ Den interne ID-en vises ikke i dialogen, men kan vises på detaljsiden etter opp ### Scenariomal: Opprettelse avvises når visningsnavn allerede er i bruk Feilmeldingen plasseres på toppen av dialogen, ikke ved et felt — fordi visningsnavnet ikke er et felt brukeren har fylt ut. Teksten må forklare at navnet hentes fra idP-en og foreslå hva brukeren kan gjøre (f.eks. bytte navn i idP-en eller kontakte eier av eksisterende applikasjon). +### Scenario: Sikt kundestøtte oppretter applikasjon med FS som identitetsleverandør +Dialogen viser ikke miljøvalg — det skal være tydelig at applikasjonen gjelder i alle miljøer. Detaljsiden bør etter opprettelsen vise at passord mangler, og lede videre til passordflyten per miljø. + +### Scenario: Opprettelsen avvises når organisasjonen mangler FS-datakilde i et miljø +Feilmeldingen navngir miljøet som mangler FS-datakilde, og gjør det klart at ingenting ble opprettet — heller ikke i miljøene som var i orden. + +### Scenario: Passord settes per miljø etter opprettelsen +Passord settes ikke i opprettelsesdialogen. Detaljsiden er inngangen til passordflyten, med ett passord per miljø. + ### Scenario: Nyopprettet applikasjon er ikke aktiv i noen miljøer Detaljsiden viser tydelig at applikasjonen ikke er aktiv i noen miljøer og hva som må til for å aktivere den (tildele tilgang). @@ -86,7 +100,7 @@ Vurder en informasjonsboks på detaljsiden som forklarer at applikasjonen kan au ## Avklarte valg -- **IdP-velger:** Radioknapper med Feide og Maskinporten +- **IdP-velger:** Radioknapper med Feide og Maskinporten, og i tillegg FS for super-applikasjonsadministrator - **Organisasjonsvelger:** Vanlig nedtrekksliste (uten søk), også for super-applikasjonsadministrator - **Plassering av "Opprett applikasjon"-knapp:** I `ActionButtons`-slot i `ListPageLayout` (etablert prosjektmønster for handlinger i listevisninger) - **Suksess-feedback:** Toast/snackbar på detaljsiden etter navigasjon ("Applikasjonen er opprettet") diff --git a/krav/07 Brukeradministrasjon og tilgangsstyring/applikasjoner/02 Iterasjon 3 - Grunnleggende tilgangsstyring for intern support/opprette_applikasjon.feature b/krav/07 Brukeradministrasjon og tilgangsstyring/applikasjoner/02 Iterasjon 3 - Grunnleggende tilgangsstyring for intern support/opprette_applikasjon.feature index 9753adb..95a2619 100644 --- a/krav/07 Brukeradministrasjon og tilgangsstyring/applikasjoner/02 Iterasjon 3 - Grunnleggende tilgangsstyring for intern support/opprette_applikasjon.feature +++ b/krav/07 Brukeradministrasjon og tilgangsstyring/applikasjoner/02 Iterasjon 3 - Grunnleggende tilgangsstyring for intern support/opprette_applikasjon.feature @@ -7,19 +7,22 @@ Egenskap: Opprette applikasjon slik at tilganger kan tildeles. En applikasjon har én identitetsleverandør som velges ved opprettelse — - Feide eller Maskinporten. Identitetsleverandøren kan ikke endres + Feide, Maskinporten eller FS. Identitetsleverandøren kan ikke endres senere, men applikasjonen kan tildeles tilganger i flere miljøer. Applikasjonen identifiseres eksternt ved ID-en fra idP-en og internt ved en systemgenerert unik ID. Visningsnavnet, som hentes fra idP-en, må være globalt unikt på tvers av alle organisasjoner. - FS som identitetsleverandør er utfaset for nye applikasjoner og kan - ikke velges ved opprettelse. Eksisterende FS-applikasjoner består - som data og forvaltes i den samme applikasjonsoversikten som Feide- - og Maskinporten-applikasjoner — alle administrasjonshandlinger - (listevisning, tilgangsstyring, passordbytte, beskrivelse, - deaktivering) gjelder også for dem. Det er kun opprettelse som er - stengt. + FS som identitetsleverandør er fortsatt utfaset for nye eksterne + integrasjoner, men Sikt kundestøtte kan opprette applikasjoner med FS + som identitetsleverandør — maskinbrukere — fra applikasjonsoversikten. + For øvrige administratorer er FS ikke valgbart. En slik applikasjon + opprettes uten valg av miljø: identiteten blir den samme i alle + miljøer, og passord settes etterpå per miljø. Eksisterende + FS-applikasjoner består som data og forvaltes i den samme + applikasjonsoversikten som Feide- og Maskinporten-applikasjoner — + alle administrasjonshandlinger (listevisning, tilgangsstyring, + passordbytte, beskrivelse, deaktivering) gjelder også for dem. # Krav fra Confluence: K8 Opprette ny API-bruker, Discovery: Registrer applikasjon (4612784227), Rammeinnsikt: Grunnleggende selvbetjent administrasjon av API-brukere (4401102853) @@ -30,7 +33,15 @@ Egenskap: Opprette applikasjon Så kan jeg velge én av identitetsleverandørene Feide og Maskinporten Og identitetsleverandøren settes på applikasjonen og kan ikke endres senere - Scenario: FS er ikke en valgbar identitetsleverandør + @planned + Scenario: FS er valgbar identitetsleverandør for Sikt kundestøtte + Gitt jeg har super-applikasjonsadministrator-rollen + Når jeg starter opprettelse av en ny applikasjon + Så kan jeg i tillegg velge FS som identitetsleverandør + + @planned + Scenario: FS er ikke valgbar for øvrige administratorer + Gitt jeg har applikasjonsadministrator-rollen for egen organisasjon Når jeg starter opprettelse av en ny applikasjon Så er FS ikke tilgjengelig som identitetsleverandør @@ -118,6 +129,32 @@ Egenskap: Opprette applikasjon | Feide | | Maskinporten | + @planned + Regel: Applikasjon med FS som identitetsleverandør opprettes av Sikt kundestøtte og gjelder i alle miljøer + + Scenario: Sikt kundestøtte oppretter applikasjon med FS som identitetsleverandør + Gitt jeg har super-applikasjonsadministrator-rollen + Og organisasjonen har en registrert FS-datakilde i alle miljøer + Når jeg oppretter en ny applikasjon med identitetsleverandør FS, et navn og en organisasjon + Så er applikasjonen opprettet + Og applikasjonen har den samme identiteten i alle miljøer + Og opprettelsen krevde ikke at jeg valgte miljø + + Scenario: Opprettelsen avvises når organisasjonen mangler FS-datakilde i et miljø + Gitt jeg har super-applikasjonsadministrator-rollen + Og organisasjonen mangler registrert FS-datakilde i minst ett miljø + Når jeg forsøker å opprette en ny applikasjon med identitetsleverandør FS for organisasjonen + Så avvises opprettelsen i sin helhet + Og det fremgår hvilket miljø organisasjonen mangler FS-datakilde i + Og applikasjonen er ikke opprettet i noe miljø + + Scenario: Passord settes per miljø etter opprettelsen + Gitt jeg har opprettet en ny applikasjon med identitetsleverandør FS + Og applikasjonen har ennå ikke noe passord + Når applikasjonen skal autentisere seg i et miljø + Så må det først settes et passord for applikasjonen i det miljøet + Og passordet settes med den samme passordflyten som for øvrige applikasjoner + Regel: Nyopprettet applikasjon har status Aktiv Scenario: Nyopprettet applikasjon har status Aktiv som standard @@ -135,3 +172,4 @@ Egenskap: Opprette applikasjon Gitt jeg har opprettet en ny applikasjon Så kan applikasjonen autentisere seg umiddelbart med sin eksterne identitet Men applikasjonen får ikke tilgang til data før den har en tilgang i et miljø + Og en applikasjon med FS som identitetsleverandør kan autentisere seg i et miljø så snart passordet for miljøet er satt diff --git a/krav/07 Brukeradministrasjon og tilgangsstyring/applikasjoner/02 Iterasjon 3 - Grunnleggende tilgangsstyring for intern support/systemkrav.md b/krav/07 Brukeradministrasjon og tilgangsstyring/applikasjoner/02 Iterasjon 3 - Grunnleggende tilgangsstyring for intern support/systemkrav.md index 1f25088..db827b7 100644 --- a/krav/07 Brukeradministrasjon og tilgangsstyring/applikasjoner/02 Iterasjon 3 - Grunnleggende tilgangsstyring for intern support/systemkrav.md +++ b/krav/07 Brukeradministrasjon og tilgangsstyring/applikasjoner/02 Iterasjon 3 - Grunnleggende tilgangsstyring for intern support/systemkrav.md @@ -29,7 +29,7 @@ Iterasjonen forutsetter at oversikt og detaljer fra Iterasjon 2 allerede er på **Brukerhistorie:** Som bruker med applikasjonsadministrator-rollen ønsker jeg å opprette en ny applikasjon, slik at nye integrasjoner kan konfigureres. -**Kort beskrivelse:** En applikasjon har én identitetsleverandør som velges ved opprettelse — Feide eller Maskinporten — og identitetsleverandøren kan ikke endres senere. FS er utfaset som identitetsleverandør for nye applikasjoner og kan ikke velges; eksisterende FS-applikasjoner består som data og forvaltes i den samme applikasjonsoversikten som Feide- og Maskinporten-applikasjoner — alle administrasjonshandlinger (listevisning, tilgangsstyring, passordbytte, beskrivelse, deaktivering) gjelder også for dem, det er kun opprettelse som er stengt. Feide og Maskinporten krever en ID som verifiseres mot kilden ved opprettelse; navnet hentes fra samme oppslag, og ID-en kan ikke registreres på nytt hvis applikasjonen allerede finnes. Systemet tildeler i tillegg en intern unik ID til hver applikasjon, og visningsnavnet (hentet fra idP-en) må være globalt unikt på tvers av alle organisasjoner. Alle administratorer må velge en organisasjon — vanlig administrator velger blant sine, super-applikasjonsadministrator blant alle. Nyopprettet applikasjon har ingen tilganger og er ikke aktiv i noen miljøer, men kan autentisere seg umiddelbart med sin eksterne identitet. +**Kort beskrivelse:** En applikasjon har én identitetsleverandør som velges ved opprettelse — Feide, Maskinporten eller FS — og identitetsleverandøren kan ikke endres senere. FS er fortsatt utfaset som identitetsleverandør for nye eksterne integrasjoner, men Sikt kundestøtte kan opprette applikasjoner med FS som identitetsleverandør (maskinbrukere); for øvrige administratorer er FS ikke valgbart. En slik applikasjon opprettes uten valg av miljø og får den samme identiteten i alle miljøer — mangler organisasjonen en registrert FS-datakilde (organisasjonens FS-installasjon i miljøet) i ett av miljøene, avvises hele opprettelsen med en begrunnelse, og ingen applikasjon blir opprettet. Passord settes etterpå per miljø med den vanlige passordflyten. Eksisterende FS-applikasjoner består som data og forvaltes i den samme applikasjonsoversikten som Feide- og Maskinporten-applikasjoner — alle administrasjonshandlinger (listevisning, tilgangsstyring, passordbytte, beskrivelse, deaktivering) gjelder også for dem. Feide og Maskinporten krever en ID som verifiseres mot kilden ved opprettelse; navnet hentes fra samme oppslag, og ID-en kan ikke registreres på nytt hvis applikasjonen allerede finnes. Systemet tildeler i tillegg en intern unik ID til hver applikasjon, og visningsnavnet (hentet fra idP-en) må være globalt unikt på tvers av alle organisasjoner. Alle administratorer må velge en organisasjon — vanlig administrator velger blant sine, super-applikasjonsadministrator blant alle. Nyopprettet applikasjon har ingen tilganger og er ikke aktiv i noen miljøer, men kan autentisere seg umiddelbart med sin eksterne identitet. ### K6, K13 — Tildele tilgang til applikasjon @@ -66,4 +66,5 @@ Iterasjonen forutsetter at oversikt og detaljer fra Iterasjon 2 allerede er på - Iterasjonen forutsetter at Iterasjon 2 (oversikt, detaljer, tilganger, passordbytte, beskrivelse) er på plass. - K10 er bevisst utelatt — deaktivering er sluttilstanden, ingen permanent sletting. - Selvbetjent administrasjon av tilganger (K13/K14) er allerede dekket av disse features via rettighetsregler — Iterasjon 4 fokuserer derfor på sporbarhet, ikke duplikater av denne funksjonaliteten. -- FS som identitetsleverandør er utfaset for nye applikasjoner i tråd med rammeinnsikten (Confluence 4401102853). Eksisterende FS-applikasjoner består som data og forvaltes i den nye applikasjonsoversikten på lik linje med Feide- og Maskinporten-applikasjoner — alle administrasjonshandlinger (listevisning, tilgangsstyring, passordbytte, beskrivelse, deaktivering, reaktivering) gjelder for dem. Det er kun opprettelse som er stengt. Maskinbruker-POC-en for legacy FS-applikasjoner avvikles når den nye løsningen er på plass — det er den nye applikasjonsoversikten som blir det eneste administrasjonsgrensesnittet. +- FS som identitetsleverandør er fortsatt utfaset for nye eksterne integrasjoner i tråd med rammeinnsikten (Confluence 4401102853). Eksisterende FS-applikasjoner består som data og forvaltes i den nye applikasjonsoversikten på lik linje med Feide- og Maskinporten-applikasjoner — alle administrasjonshandlinger (listevisning, tilgangsstyring, passordbytte, beskrivelse, deaktivering, reaktivering) gjelder for dem. Maskinbruker-POC-en for legacy FS-applikasjoner avvikles når den nye løsningen er på plass — det er den nye applikasjonsoversikten som blir det eneste administrasjonsgrensesnittet. +- Teambeslutning 2026-08-17: opprettelse av applikasjoner med FS som identitetsleverandør (maskinbrukere) åpnes i applikasjonsoversikten, avgrenset til Sikt kundestøtte. Utfasingen står som strategi — det som åpnes er opprettelsesveien for support, ikke FS som identitetsleverandør for nye eksterne integrasjoner. Opprettelsen er miljøløs og følger alt-eller-ingenting-prinsippet: identiteten gjelder i alle miljøer, og mangler organisasjonen en FS-datakilde i ett av dem, blir ingenting opprettet. Akseptkriteriene står i [`BRU-APP-API-009`](opprette_applikasjon.feature).