2.3 SAD - Underskriftstjänsten Webb och API

2.3 SAD - Underskriftstjänsten Webb och API

Denna SAD beskriver arkitekturen för Underskriftstjänsten - Webb och API. För motsvarande beskrivning av artikeln Underskriftstjänsten - Bas, se Underskriftstjänsten - Bas



Innehållsförteckning



Revisionshistorik



Version

Datum

Författare

Kommentar

Version

Datum

Författare

Kommentar

0.1

2023-mm-dd

Kvick, Helene

Utkast

0.2

2023-mm-dd

Kvick, Helene

Justering, rättning 

0.3

2023-08-29

Eriksson, Stefan

Uppdatering av text och bilder

0.4

2023-09-01

Eriksson, Stefan

Uppdatering efter granskning

0.5

2023-09-19

Eriksson, Stefan

Mindre uppdateringar

0.6

2023-10-25

Eriksson, Stefan

Uppdatering efter granskning

0.7

2023-10-30

Eriksson, Stefan

Uppdatering efter granskning

2.0

2023-11-02

Eriksson, Stefan

Uppdatering efter granskning

2.1

2023-11-21

Eriksson, Stefan

Uppdaterad med API

2.2

2023-11-28

Eriksson, Stefan

Uppdatering efter granskning

2.3

2023-12-01

Eriksson, Stefan

Uppdatering med eIDAS

2.4

2023-12-08

Eriksson, Stefan

Uppdatering efter granskning

2.5

2023-12-13

Eriksson, Stefan

Uppdatering efter granskning

2.6

2023-12-20

Eriksson, Stefan

Uppdaterad med nytt metadata för signering

2.7

2024-09-26

@Helene Kvick (Deactivated)

Uppdaterad med intressent i webb

2.8

2024-11-18

Eriksson, Stefan

Uppdaterad med dokument konvertering

2.9

2024-12-11

Eriksson, Stefan

Uppdaterad efter granskning





Inledning

Nomenklatur

Nomenklaturen är hämtad från Referensarkitektur för identitet och åtkomst eller Referensarkitektur för elektronisk underskrift och stämpel om termen inte återfinns i listan nedan. För övriga begrepp, se SAD Underskriftstjänsten.



Begrepp

Beskrivning

Begrepp

Beskrivning

API

Application Programmer’s Interface, ett gränssnitt för system och applikationer

eID tjänst för privata e-legitimationer

Extern tjänst som stödjer legitimering samt legitimering för underskrift för privata e-legitimationer såsom BankID, Freja ID+ samt eIDAS.

On-premise

Syftar på applikationer som driftas lokalt i organisationens egna driftmiljöer samt av organisationens egen driftpersonal. 

  Syfte

Detta dokument syftar till att beskriva de funktioner som Underskriftstjänsten – Webb och API tillhandahåller, och hur denna funktionalitet tillgängliggörs via Underskriftstjänsten – Webb och API och dess gränssnitt mot anslutande system.

Underskriftstjänsten – Webb och API använder Underskriftstjänsten - elektronisk underskrift (P4) för att signera samt validera dokument enligt PAdES standarden, se vidare Profilhantering (Ref. P3) vilken signaturtyp som gäller per underskriftsprofil. Använd PAdES variant återfinns i den valideringsrapport under "Basic Policy" som skapas då signeringsuppdraget har blivit undertecknat av alla signatärer.

Avgränsningar

Detta dokument har inte som syfte att beskriva Underskriftstjänsten – Webb och API underliggande arkitektur eller logiska uppbyggnad.

 Målgrupp

De huvudsakliga målgrupperna för detta dokument är: systemförvaltare och systemarkitekter.

Referenser



Arkitekturell översikt

Följande förenklade arkitekturell översikt visar de viktigaste gränssnitten som berör Underskriftstjänsten - Webb och API. För en mer detaljerad bild se SAD - Underskriftstjänsten - Inera - Identitet och åtkomst (Ref. P7), där Underskriftstjänsten - Webb och API motsvarar en e-tjänst med inbyggd stödtjänst.



 


Tekniska gränssnitt mellan delsystem/komponenter

Följande bild visar gränssnitten mellan komponenterna som tillsammans realiserar funktionen Underskriftstjänsten – Webb och API.





SAML 2.0 Web SSO används vid legitimering av signatär. Endast privata e-legitimationer, utländska e-legitimationer (eIDAS) och SITHS eID stöds. För mer information om eIDAS se eIDAS - Underskriftstjänsten Webb och API (Ref. P11)

Sweden Connect Federated Signing DSS används vid underskrift.

SMTP protokollet används för att skicka aviseringar med e-post via en SMTP server.

HTTPS/JSON används i kommunikationen med API'et.

Utbyte av SAML metadata

Tjänst

Klient

Kommentar

Tjänst

Klient

Kommentar

eIDAS (IdP)

eID tjänst (SP)

eID tjänst agerar SP mot eIDAS

eIDAS (IdP)

eID tjänst (SP)

Metadata för signering

eID tjänst (IdP)

Underskriftstjänsten Webb (SP)

eID tjänst agerar IdP mot Underskriftstjänsten Webb

IdP (IdP)

Underskriftstjänsten Webb (SP)

IdP agerar IdP mot Underskriftstjänsten Webb

Underskriftstjänsten (DSS)

Underskriftstjänsten Webb (Signing Party)

Metadata för signering

IdP (IdP)

Underskriftstjänsten (DSS)

Metadata för signering

eID tjänst (IdP)

Underskriftstjänsten (DSS)

Metadata för signering

 Arkitekturella mål

  • Följsamhet mot Digitaliseringsmyndighetens specifikationer kring fristående underskriftstjänst

  • Följsamhet mot Ineras Referensarkitekturer (Ref. P5)

Prioriterade områden

  • Användning av underskriftsprofil vid skapande av signeringsuppdrag

  • Tillämpning av vald underskriftsprofil vid underskrift

  • Underskrift med SITHS eID och privata e-legitimationer

 Följsamhet till T-boken

N/A

Användargränssnitt

Underskriftstjänsten – Webb och API är en applikation som presenterar ett användargränssnitt där både uppdragsskapare och signatärer kan logga in. Uppdragsskapare loggar in och skapar signeringsuppdrag genom att ladda upp de dokument som ska undertecknas, anger vilka som ska underteckna dokument samt initierar underskriftsflödet.

Signatärer får en avisering om att ett undertecknande krävs och de kan då logga in i Underskriftstjänsten – Webb och API, läsa dokumentet och sen antingen underteckna alternativt neka en underteckning av dokumentet.

För handhavade information samt övriga bilder på användargränssnittet, se Användarhandboken (Ref. P6).

Via användargränssnittet kan uppdragsskaparen ladda ner en valideringsrapport samt en händelselogg för ett avslutat signeringsuppdrag. För mer information gällande dessa dokument, se Händelselogg och Valideringsrapport (Ref. P10).

Användningsfall - Webb och API

Användningsfall - Översikt

Översikt över de mest signifikanta användningsfallen.

Ref

Beskrivning

Ref

Beskrivning

AF1

Uppdragsskapare skapar signeringsuppdrag

AF2

Signatär undertecknar signeringsuppdrag

AF3

Uppdragsskapare hämtar underskrivna dokument

AF4

Alternativflöde : Signatär avbryter underskriftsflödet

AF5

Alternativflöde : Visa signeringsuppdrag som intressent

AF6

Exportering av faktureringsunderlag

AF API-1 

Skapa signeringsuppdrag

AF API-1.1 

Alternativflöde: Skapa signeringsuppdrag med intressenter

AF API-1.2

Alternativflöde: Skapa signeringsuppdrag med automatisk statusuppdatering (callback)

AF API-2

Visa signeringsuppdrag

AF API-2.1

Alternativflöde : Visa signeringsuppdrag som intressent

AF API-3

Avbryta signeringsuppdrag

AF API-3.1

Alternativflöde : Avbryta och radera signeringsuppdrag

AF API-4

Hämtning av signerade dokument

AF API-5

Hantera mottagen automatisk statusuppdatering (callback)

Aktörsinformation

Aktör

Beskrivning

Aktör

Beskrivning

Uppdragsskapare

Fysisk person som innehar SITHS e-legitimation som administrerar signeringsuppdrag

Signatär

Fysisk person som innehar en e-legitimation som skall underteckna ett uppdrag

Intressent

Fysisk person som innehar SITHS e-legitimation som vill få aviseringar när ett signeringsuppdrag signeras alternativt avbryts. En intressent ges även rättighet att läsa uppdragsinformationen.

Användare

Fysisk person som använder verksamhetssystemet för att hantera signeringsupprag där verksamhetssystemet agera mellanhand mot Underskriftstjänsten - API.

Systemadministratör 

Fysisk person som innehar SITHS e-legitimation som administrerar tjänsten

Verksamhetssystem

Verksamhetssystem som kommunicerar med API'et

Logisk realisering av användningsfall - Webb

 AF1 - Uppdragsskapare skapar signeringsuppdrag

Textuell beskrivning

Flödet startar när en uppdragsskapare (visas som administratör i bilden) ska skapa ett signeringsuppdrag.

  1. Uppdragsskaparen loggar in i Underskriftstjänsten - Webb med sin e-legitimation. Endast personer med SITHS e-legitimation kan agera uppdragsskapare.

  2. Underskriftstjänsten - Webb visar tillgängliga signeringsuppdrag.

  3. Uppdragsskaparen skapar ett signeringsuppdrag genom att:

    1. ange en rubrik

    2. ange en optionell beskrivning

    3. ange giltighetstid för signeringsuppdraget, om ingen giltighetstid anges används ett konfigurerat standard värde.

    4. ange gallringstid för signeringsuppdraget, om ingen gallringstid anges används ett konfigurerat standard värde.

    5. ange de dokument som skall undertecknas genom att ladda upp ett eller flera dokument

    6. eventuellt ladda upp en eller flera bilagor som inte ska undertecknas men som bifogas för ytterligande information

    7. ange den eller de signatärer som ska underteckna dokumenten, för varje signatär anges:

      1. Namn

      2. E-postadress

      3. Underskriftsprofil samt eventuellt ett eller flera av de attribut som vald underskriftsprofil kräver

    8. ange om undertecknandet skall ske sekventiellt eller parallellt

      1. i ett sekventiell underskriftsflöde kan endast en signatär i taget underteckna. Det är först när aktuell signatär har undertecknat signeringsuppdraget som nästa signatär i kedjan får en avisering om att ett signeringsuppdrag finns tillgängligt. 

      2. i ett parallellt underskriftsflöde  får alla signatärer en avisering samtidigt om att ett signeringsuppdrag är tillgängligt. Viss logik finns för att förhindra att fler än en signatär kan underteckna åt gången.

      3. Alla signatärer får även en avisering då signeringsuppdraget är undertecknat av alla signatärer.

  4. Om aktuellt ange intressenter för uppdraget

    1. Ange användarid (med HSAid för att få rättigheter till att läsa uppdraget) e-postadress

    2. Intressent får avisering när uppdraget skapats samt vid uppdateringar som sker på uppdraget

  5. Är det ej aktuellt med intressent för uppdraget skapar man uppdraget utan att ange intressent

  6. Underskriftstjänsten - Webb sparar det skapade signeringsuppdraget tillsammans med alla uppladdade dokumentet som uppdragsskaparen lagt till i signeringsuppdraget.

  7. Underskriftstjänsten - Webb konverterar de dokument som ska signeras som ej är i PDF format till PDF format.

  8. Underskriftstjänsten - Webb skickar aviseringar till uppdragsskaparen samt berörda signatärer och angivna intressenter.

Realisering



AF2 - Signatär undertecknar signeringsuppdrag

Textuell beskrivning

Flödet startar när en signatär har fått en avisering (e-post) angående att det finns ett tillgängligt signeringsuppdrag som ska undertecknas.

  1. Signatären klickar på den länk som finns angivet i det aviseringsmejl som signatären har fått angående det nya signeringsuppdraget.

    1. Mejlet innehåller även information om vilken typ av legitimering som behövs för att kunna underteckna signeringsuppdraget.

  2. Signatären skickas vidare till Underskriftstjänsten - Webb där denna får legitimera sig med sin e-legitimation.

    1. Om signeringsuppdraget kräver ett medarbetaruppdrag och signatären loggar in utan ett medarbetaruppdrag visas ett felmeddelande. Signatären måste då logga ut och logga in igen med ett medarbetaruppdrag. 

    2. Om signeringsuppdraget kräver ett specifikt medarbetaruppdrag och signatären loggar in med fel medarbetaruppdrag visas ett felmeddelande. Signatären måste då logga ut och logga in igen med rätt medarbetaruppdrag.

    3. Om signeringsuppdraget kräver ett specifikt HSAid och signatären loggar in med fel HSAid visas ett felmeddelande. Signatären måste då logga ut och logga in igen med rätt HSAid.

    4. Om signatären legitimerar sig med en e-legitimation som inte kan användas för att underteckna signeringsuppdraget visas ett felmeddelande. Signatären måste då logga ut och försöka igen.

  3. Underskriftstjänsten - Webb visar signeringsuppdraget, de dokument som skall undertecknas samt eventuellt bilagor för den inloggade signatären.

  4. Signatären  granskar dokumenten och går vidare för att underteckna.

  5. Underskriftstjänsten - Webb förbereder dokumenten för underskrift.

    1. Underskriftstjänsten - Webb väljer vilken logisk IdP som skall anropas utifrån signeringsuppdragets underskriftsprofil.

    2. Underskriftstjänsten - Webb extraherar användarattribut från den initiala autentiseringen för att i SignRequest till Underskriftstjänsten kunna peka ut vem som skall utföra underskriften.

  6. Underskriftstjänsten - Webb skickar underskriftsbegäran (DSS SignRequest) till Underskriftstjänsten. SignRequest innehåller bland annat vilket data som skall signeras(<csig:SignTasks>), vem som skall utföra underskriften (<csig:Signer>), det underskriftsmeddelande som skall visas för Signatären (SignMessage), krav på tillitsnivå för legitimeringen, samt vilket underskriftsprofil som önskas (<csig:AuthnProfile>).

  7. Underskriftstjänsten utför undertecknandet, se Underskriftstjänstens användningsfall.

  8. Underskriftstjänsten - Webb får tillbaka undertecknat dokument data.

  9. Om fler signatärer ska underteckna:

    1. vid ett sekventiellt underskriftsflöde aviseras nästa signatär i kedjan och exekveringen avbryts

    2. vid ett parallellt underskriftsflöde sker ingen avisering då alla signatärer redan har fått en avisering och exekveringen avbryts

  10. När alla signatärer har undertecknat signeringsuppdraget validerar Underskriftstjänsten - Webb signaturen på dokumenten och skapar en valideringsrapport.

  11. Underskriftstjänsten - Webb loggar alla händelser som rör signeringsuppdraget under hela underskriftsflödet. Denna händelselogg kan laddas ner av uppdragsskaparen när signeringsuppdraget är avslutat.

  12. Underskriftstjänsten - Webb aviserar uppdragsskaparen att signeringsuppdraget är underskrivet.

  13. Underskriftstjänsten - Webb aviserar eventuella intressenter att signeringsuppdraget är underskrivet.

  14. Underskriftstjänsten - Webb aviserar de signatärer som ännu ej fått avisering att signeringsuppdraget är underskrivet.

  15. Signatärer kan nu ladda ner/hämta de underskrivna dokumenten.

  16. Underskriftstjänsten - Webb gallrar/raderar signeringsuppdraget inklusive alla dokument efter vald gallringstid.

Realisering

AF3 - Uppdragsskapare hämtar underskrivna dokument

Textuell beskrivning

Flödet startar när ett signeringsuppdrag är avslutat och uppdragsskaparen (visas som administratör i bilden) vill hämta de underskrivna dokumenten.

  1. Uppdragsskaparen loggar in i Underskriftstjänsten - Webb med sin e-legitimation. Endast personer med SITHS e-legitimation kan agera uppdragsskapare.

  2. Underskriftstjänsten - Webb visar en lista med signeringsuppdrag sorterade på status.

  3. Uppdragsskaparen väljer det avslutade uppdraget

  4. Uppdragsskaparen väljer det eller de dokument som ska laddas ner.

  5. Uppdragsskaparen kan i detta skede även ta bort/radera signeringsuppdraget, vilket leder till att även alla dokument raderas.

Realisering


Publik Information