Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand All @@ -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
Expand All @@ -44,15 +45,19 @@ 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

### 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.
Expand All @@ -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).

Expand All @@ -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")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -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)

Expand All @@ -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

Expand Down Expand Up @@ -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
Expand All @@ -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
Original file line number Diff line number Diff line change
Expand Up @@ -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

Expand Down Expand Up @@ -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).