Skip to content

diggsweden/sdg-intermediation-se

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Logo

SDG Bevisdelning, inom det tekniska systemet för bevisutbyte

Här finns beskrivningen av API:et intermediationSE vilket är det API som svenska bevisproducenter implementerar, för att via Diggs förhandsgranskningstjänst, låta en användare dela bevis via det tekniska systemet för bevisutbyte (OOTS).

Open-API-specen finns här

För frågor om API:et, hör av er till oss

Bevisdelning och förhandsgranskning, översiktligt flöde

flowchart LR
    subgraph Digg
        direction LR
        FGT(Förhandsgranskningstjänsten)-->AT(SDG Auktorisationstjänst)
        AT-->LT(Legitimeringstjänst)
    end
    subgraph Bevisproducent 
        FGT-->BT(Bevistjänst)
    end
Loading

Flödesbeskrivning

  1. Förhandsgranskningstjänsten återautentiserar användaren mha SDG auktorisationstjänst som i sin tur nyttjar legitimeringstjänsten Sweden Connect.
  2. En lyckat autentisering ger förhandsgranskningstjänsten ett åtkomstintyg (accesstoken) som skickas med till bevisproducentens bevistjänst.
  3. Med hjälp av åtkomstintyget auktoriserar bevisproducenten API-anropet och lämnar ett bevissvar till förhandsgranskningstjänsten där användaren avgör om beviset ska delas och föras över för vidare användning i sitt pågående förfarande.

Bevisdelning och förhandsgranskning, detaljerat flöde

sequenceDiagram
    participant USR as User
    participant PDFE as ProcedureDemoFE
    participant PSFE as PreviewSpaceFE
    participant PSBE as PreviewSpaceBE
    participant DSD as DSD
    participant IMSE as IntermediationSE
    participant VAL as Valkey
    box Auktorisation
    participant AS as AuthorizationServer
    participant ATS as AuthenticationService
    end
    participant EP as EvidenceProvider

    USR ->> PDFE: 1. Start procedure
    PDFE ->> PSFE: 2. Redirect to preview
    PSFE ->> PSBE: 3. GET /authenticate/login
    PSBE ->> DSD: 4. Get LOA for Evidence
    DSD ->> PSBE: 5. Return LOA
    PSBE ->> AS: 6. AuthenticationRequest, with redirect uri, to AuthorizationServer
    Note over AS,ATS: 7. User authentication
    AS ->> PSBE: 8. Response from AuthorizationServer to PSBE including authentication code
    PSBE ->> AS: 9. IdTokenRequest(code)
    AS ->> PSBE: 10. TokenResponse(idtoken, accesstoken, refreshtoken)
    PSBE ->> AS: 11. AuthorizationRequest, with redirect uri, to AuthorizationServer
    AS ->> PSBE: 12. Redirect from AuthorizationServer to PSBE including authorization code
    PSBE ->> AS: 13. AccessTokenRequest(code)
    AS ->> PSBE: 14. TokenResponse(accesstoken, refreshtoken)
    PSBE ->> VAL: 15. Store accesstoken for reuse
    PSBE ->> PSFE: 16. Redirect from PSBE to PSFE
    PSFE ->> PSBE: 17. Post /documents/available to fetch evidences
    PSBE ->> AS: 18. Get user info (accesstoken)
    AS ->> PSBE: 19. User info response
    PSBE ->> PSBE: 20. Match evidence request against user information
    PSBE ->> IMSE: 21. POST /evidence-files (accesstoken)
    IMSE ->> EP: 22. POST /evidence-files (accesstoken)
    EP ->> EP: 23. Validate accesstoken
    EP -->> IMSE: 24. Return documents
    IMSE -->> PSBE: 25. Return documents
    PSBE -->> PSFE: 26. Show documents
    PSFE -->> PDFE: 27. Share documents
Loading

Flödesbeskrivning

  1. Användaren besöker förfarandet och förbereder en bevisbegäran
  2. Användaren initierar autentisering
  3. Användaren väljer att logga in och initierar legitimeringsförfrågan
  4. Get Level of assurance from the Data Service Directory
  5. Return tLOA from DSD
  6. PreviewSpaceBE bygger ihop och skickar ett AuthenticationRequest till AuthorizationServer, samtidigt blir användaren omdirigerad till id-tjänsten
  7. Användaren legitimerar sig i id-tjänsten
  8. AuthorizationServer svarar förbestämd callback endpoint med en authentication code
  9. PreviewSpaceBE bygger ihop och skickar ett idtoken request till AuthorizationServer
  10. AuthorizationServer svarar med idtoken, accesstoken, refreshtoken.
  11. PreviewSpaceBE bygger ihop och skickar ett AuthorizationRequest till AuthorizationServer
  12. AuthorizationServer svarar förbestämd callback endpoint med en authorization code
  13. PreviewSpaceBE bygger ihop och skickar ett accesstoken request
  14. AuthorizationServer svarar med accesstoken och refreshtoken
  15. PreviewSpaceBE sparar ner accesstoken i redis
  16. Användaren blir omdirigerad tillbaka till PSFE
  17. Bevishämtning initieras
  18. PreviewSpaceBE skickar en förfrågan till AuthorizationServer för att hämta användarinformation
  19. AuthorizationServer svarar med användarinformation
  20. PreviewSpaceBE matchar information från evidence request mot användarinformationen.
  21. PreviewSpaceBE skickar förfrågan, som innehåller accesstoken, för bevishämtning till IntermediationSE
  22. IntermediationSE skickar förfrågan, som innehåller accesstoken, till bevisproducent
  23. Bevisproducent validerar accesstoken
  24. Bevisproducent returnerar IntermediationSE med bevis
  25. IntermediationSE returnerar bevis till PreviewSpaceBE
  26. PreviewSpaceBE returnerar bevis till PreviewSpaceFE som visar upp hämtade bevis för användaren.
  27. Användare väljer att dela bevis med förfarande

About

API to be implemented by Swedish evidence providers

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages