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
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 |
|---|---|
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
Ref | Dokument ID | URL | |
|---|---|---|---|
| 1 | P1 | SITHS | |
| 2 | P2 | SITHS eID apparna | https://inera.atlassian.net/wiki/spaces/ST/pages/3475212527/Utgivning+och+anv+ndning+av+SITHS+eID |
| 3 | P3 | Underskriftsprofiler | |
| 4 | P4 | ||
| 5 | P5 | ||
| 6 | P6 | ||
| 7 | P7 | SAD - Underskriftstjänsten - Inera - Identitet och åtkomst | |
| 8 | P8 | eID tjänst | |
| 9 | P9 | Riksarkivet | |
| 10 | P10 | Händelselogg och Valideringsrapport | |
| 11 | P11 | eIDAS - Underskriftstjänsten Webb och API |
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 |
|---|---|---|
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 |
|---|---|
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 |
|---|---|
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.
Uppdragsskaparen loggar in i Underskriftstjänsten - Webb med sin e-legitimation. Endast personer med SITHS e-legitimation kan agera uppdragsskapare.
Underskriftstjänsten - Webb visar tillgängliga signeringsuppdrag.
Uppdragsskaparen skapar ett signeringsuppdrag genom att:
ange en rubrik
ange en optionell beskrivning
ange giltighetstid för signeringsuppdraget, om ingen giltighetstid anges används ett konfigurerat standard värde.
ange gallringstid för signeringsuppdraget, om ingen gallringstid anges används ett konfigurerat standard värde.
ange de dokument som skall undertecknas genom att ladda upp ett eller flera dokument
eventuellt ladda upp en eller flera bilagor som inte ska undertecknas men som bifogas för ytterligande information
ange den eller de signatärer som ska underteckna dokumenten, för varje signatär anges:
Namn
E-postadress
Underskriftsprofil samt eventuellt ett eller flera av de attribut som vald underskriftsprofil kräver
ange om undertecknandet skall ske sekventiellt eller parallellt
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.
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.
Alla signatärer får även en avisering då signeringsuppdraget är undertecknat av alla signatärer.
Om aktuellt ange intressenter för uppdraget
Ange användarid (med HSAid för att få rättigheter till att läsa uppdraget) e-postadress
Intressent får avisering när uppdraget skapats samt vid uppdateringar som sker på uppdraget
Är det ej aktuellt med intressent för uppdraget skapar man uppdraget utan att ange intressent
Underskriftstjänsten - Webb sparar det skapade signeringsuppdraget tillsammans med alla uppladdade dokumentet som uppdragsskaparen lagt till i signeringsuppdraget.
Underskriftstjänsten - Webb konverterar de dokument som ska signeras som ej är i PDF format till PDF format.
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.
Signatären klickar på den länk som finns angivet i det aviseringsmejl som signatären har fått angående det nya signeringsuppdraget.
Mejlet innehåller även information om vilken typ av legitimering som behövs för att kunna underteckna signeringsuppdraget.
Signatären skickas vidare till Underskriftstjänsten - Webb där denna får legitimera sig med sin e-legitimation.
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.
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.
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.
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.
Underskriftstjänsten - Webb visar signeringsuppdraget, de dokument som skall undertecknas samt eventuellt bilagor för den inloggade signatären.
Signatären granskar dokumenten och går vidare för att underteckna.
Underskriftstjänsten - Webb förbereder dokumenten för underskrift.
Underskriftstjänsten - Webb väljer vilken logisk IdP som skall anropas utifrån signeringsuppdragets underskriftsprofil.
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.
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>).Underskriftstjänsten utför undertecknandet, se Underskriftstjänstens användningsfall.
Underskriftstjänsten - Webb får tillbaka undertecknat dokument data.
Om fler signatärer ska underteckna:
vid ett sekventiellt underskriftsflöde aviseras nästa signatär i kedjan och exekveringen avbryts
vid ett parallellt underskriftsflöde sker ingen avisering då alla signatärer redan har fått en avisering och exekveringen avbryts
När alla signatärer har undertecknat signeringsuppdraget validerar Underskriftstjänsten - Webb signaturen på dokumenten och skapar en valideringsrapport.
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.
Underskriftstjänsten - Webb aviserar uppdragsskaparen att signeringsuppdraget är underskrivet.
Underskriftstjänsten - Webb aviserar eventuella intressenter att signeringsuppdraget är underskrivet.
Underskriftstjänsten - Webb aviserar de signatärer som ännu ej fått avisering att signeringsuppdraget är underskrivet.
Signatärer kan nu ladda ner/hämta de underskrivna dokumenten.
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.
Uppdragsskaparen loggar in i Underskriftstjänsten - Webb med sin e-legitimation. Endast personer med SITHS e-legitimation kan agera uppdragsskapare.
Underskriftstjänsten - Webb visar en lista med signeringsuppdrag sorterade på status.
Uppdragsskaparen väljer det avslutade uppdraget
Uppdragsskaparen väljer det eller de dokument som ska laddas ner.
Uppdragsskaparen kan i detta skede även ta bort/radera signeringsuppdraget, vilket leder till att även alla dokument raderas.
