-
Notifications
You must be signed in to change notification settings - Fork 0
TheSolution
#L?sningsbeskrivning <img src#"https://github.com/Vastra-Gotalandsregionen/oppna-program-signing-service/wiki/images/solution.png" width"800"/>
- Klienten beg?r att f? n?got signerat(TBS ? To Be Signed) av SS. Rekommenderat ?r att skicka en kontrollsumma av TBS. Kontrollsumman ?r f?rslagsvis ber?knad utifr?n SHA-2(t.ex. SHA-256) f?r att f? en ?kad s?kerhet. SS beh?ver ?ven ha en submitUri dit signaturen skall skickas n?r den ?r klar. Valbart(optional) ?r att skicka in en clientType.
- Har ingen clientType skickats med visas ett val av tillg?ngliga clientTypes f?r anv?ndaren. SS tar fram ett block av html/xhtml(PKI Client Code) baserat p? clientType och TBS som den visar f?r klienten.
- PKI-klienten startar upp f?r signering hos anv?ndaren.
- Anv?ndaren matar in l?senord f?r sin privata nyckel och TBS signeras. PKI-klienten postar signaturen PKSC#7 eller XML-Signature) till SS. Vilket format som skickas till SS beror p? clientType.
- Signaturen verifieras via en OSIF tj?nst.
- Status f?r hur valideringen gick skickas tillbaka till SS.
- SS skickar signaturen till submitUri f?r lagring, detta sker ?ver ftps eller https. Om https v?ljs finns ?ven en m?jlighet f?r applikationen att sj?lv presentera status f?r signeringen (se steg 7). I annat fall kommer SS att hantera presentationen av status.
- Om X sj?lv kan och vill presentera status f?r signeringen g?r den en 302 redirect till en url som hanterar presentationen. Om X vill ?verl?ta detta till SS r?cker det med att svara med en vanlig 200 OK response.
- Om SS f?r en 302 redirect fr?n X skickar ?ven SS en 302 redirect tillbaka till klienten med samma location som X satte i sin redirect. Om SS f?r en 200 OK visar den en status sida f?r klienten.
- 302 redirect till location satt av X.
- X visar ett svar f?r klienten. Kommentarer
- Steg 10 och 11 kommer endast att intr?ffa om X g?r en 302 redirect i steg 8.
#S?kerhet F?r att garantera s?kerheten b?r all kommunikation ske ?ver en krypterad anslutning ? https. Det finns dock fortfarande en risk att SS blir utsatt f?r en attack och ers?tts av en "elak" SS som byter ut signatur och certifikat. F?r att f?rhindra detta ?r det starkt rekommenderat att X s?tter upp TLS mot SS. TLS syftar till att genom utbyte av certifikat mellan SS och X kan X grantera att identiteten p? SS. Allts?, med tillg?ng till SS publika nyckel kan X verifiera att det ?r SS som skickar signaturen till submitUri.
#Ordlista || Begrepp || F?rklaring || || TBS || To Be Signed. Data som skall signeras. || || submitUri || Uri dit signaturen skall skickas efter signering. || || clientType || Typ av signering, i dagsl?get har Signeringstj?nsten st?d f?r !BankId, Nordea, Posten och SITHS. ||