Altinn / Altinn/altinn-auth

Ny brukerflate | Aktørvalg

Open
#87 0 comments 0 reactions 0 assignees View on GitHub
Etter19JuniRelease
Dominant language
C#
Stars
4
Forks
3
Avg merge
2d 21h
Merged PRs (30d)
59

Description

Image

[Link til Figma](https://www.figma.com/design/NCHt0jCzsfdI6dhovYc7MU/Team-Tilgangstyring?node-id=120-12743&t=OBz3xKuiTm12XqJp-1)

# Beskrivelse

Ny aktør beriket med alle avgivere bruker har tilgang til gjennom:
- Eksterne roller
- Tilgangspakker
- Admin-roller i Altinn
- Ressurs-/App-tilganger
- Instans-tilganger
- (Altinn 2 roller)

Dette gjelder da både direkte tilganger gitt til bruker, og tilganger gitt til virksomheter bruker har nøkkelrolle i.

Dersom avgiver som har gitt tilgangen er en hovedenhet skal også alle underenheter inkluderes, med unntak for instans-tilganger hvor tilgangen _ikke_ skal arves til underenhetene.

## Definisjoner

`Aktør` - Person eller Organisasjon man får tilgang på vegne av
`Eksterne roller` - Hovedsakelig Enhetsregister (ER) for roller på vegne av virksomheter og organisasjoner eller Folkeregisteret (FREG) for privatpersoner (i første omgang bare PRIV/Privatperson rolle for seg selv. Vergemål vil komme senere)
`Tilgangspakker` - Erstatter dagens Altinn roller fra Altinn 2 og er start punkt for knytning av tilganger til tjenester, apps og ressurser i Altinn
`Admin-roller i Altinn` - Administrasjonsroller for de som ha tilgang til å kunne utføre ulike former for tilgangsstyring i Altinn. F.eks Tilgangsstyrer, Hovedadministrator, Klientadministrator, API-Administrator
`Ressurs-/App-tilganger` - Delegeringer av Altinn Apps eller Ressurser i Ressursregisteret
`Instans-tilganger` - Delegeringer av enkelt instanser av Altinn Apps eller Ressurser i Ressursregisteret
`Stort eller lite aktørvalg` - Handler om størrelsen aktørvalget tar på en skjerm visuelt
`Lokalt eller globalt aktørvalg` - Lokal vs global handler om at valget av aktør endrer aktør kun i lokal produktløsning (Tilgangsstyringsløsningnen, Innboksen, InfoPortal) eller i alle produktene i Altinn (dvs. jeg endrer aktør i Tilgangsstyring, da endrer jeg også i Innboksen)

## Avklaringer

### Inngår en felles egen løsningen for innlogging og aktørkoordinasjon globalt i denne leveransen?
Nei, innlogging er ikke en del av denne leveransen.
Men aktørkordinasjon er det!

### Hvis du lenkes direkte til tilgangsstyringssidende uten å ha vært pålogget/valgt aktør fra før av?
* Default til deg selv
* Åpne stort (lokalt) aktørvalg for å tvinge bruker til å velge aktør
* Hvis ikke pålogget: Bruk Altinn's nye innloggingsløsning og redirecte tilbake uten å velge aktør. (Havner da som enten seg selv eller som en defaultaktør) (Out of scope? Vi må bare håndtere caset hvor du ikke har en valgt aktør)

### Hvis du står på en side som krever spesiell tilgang og bytter til en aktør som ikke har det
- Vis feilmelding som ber bruker bytte aktør eller gå til en gyldig side

### Hvilke teams påvirkes?
* Tilgangsstyring
* Arbeidsflate
* InfoPortal
* (Apps/Studio?)

### Men hva med A2 og studio-apper som er avhengig av AltinnReportee-cookien?
Vi kan ikke garantere at appene vil komme over på ny løsning ila året → vi må oppdatere denne cookien selv når man gjør nye aktørvalg lokalt i løsningene. Litt krunglete, og derfor et argument for et mer helhetlig globalt aktørvalg. (Men forhåpentligvis så vil dette ikke være nødvendig for alltid)
Alternativt må StudioAppene alltid vise aktørvelger når man går inn i apper for å sette denne cookien selv.

## Løsning

I tillegg til at aktørbytte skal påvirke innholdet lokalt i Tilgangsstyringsløsningen, foreslår vi at den også skal propageres globalt gjennom en handoff via url.
Dvs. at når man går fra en løsning til en annen (eks fraTilgangsstyring til Innbboks) så sendes med en url-parameter som indikerer id-en til aktøren man representerer. Vi foreslår at denne id en er partyUuid-en som brukes i autorisasjon og som er tilgjengelig i kallet man får fra autorisasjonsbackend når man henter listen over aktører.

På sikt kan man se på å kryptere denne id-en for å sikre den mer når den sendes i url i browseren. (Dvs. sikre den for logging med altinn-securify, som pr nå kun er i forslagsfasen https://github.com/altinn/altinn-securify)

OBS: Dette vil kreve god koordinasjon på tvers av team!

## In scope

- Støtte avgiverliste for systembrukere
- Lokalt aktørvalg
- Global propagering gjennom handoff mellom løsningene

## Out of scope (evt. senere leveranse)

- Egne API endepunkter for Tjenesteeiere eller
- Felles Altinn Innloggingsløsning

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with the linked Figma design and the issue's In scope list for system-user actor lists, local actor selection, and global handoff. Map how actor coordination crosses Tilgangsstyring, Arbeidsflate, and InfoPortal; done means these flows work locally and propagate the selected actor between solutions without breaking the stated access rules.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp, figma
Domain
authorization, frontend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.