Certifikatspublicering-REST-bindning till SMP

Anslutning för leverantörer av accesspunkteoperatörer
Version: 1.1
Gäller fr o m: 2024-11-18

Beskrivning av teknisk REST-bindning för certifikatspublicering

Denna specifikation beskriver det publika gränssnitt som ger möjlighet att hämta en deltagarorganisations certifikat. Publicerade certifikat kan användas i två syften – signeringscertifikat och certifikat för kryptering. Kryptering och signering mellan deltagarorganisationernas meddelandesystem görs i enlighet med Kuverteringsspecifikationen (XHE) och Transportmodell Utökad Bas.

Denna specifikation beskriver hur uppslagning och hämtning av publicerade certifikat utförs. Specifikationen beskriver framöver hur certifikatspubliceringstjänsten exponerar certifikat som en utökning av eDelivery servicemetadata (SMP).

Inledning

Denna specifikation beskriver det REST-baserade gränssnitt som används för att hämta certifikat samt det XML-format som används för publiceringen.

Dokumentstruktur

Specifikationen innehåller följande delar:

  • Beskrivning av XML-strukturen för publicering av certifikat som en utökning av SMP SignedServiceMetadata
  • Beskrivning av hur uppbyggnaden av en REST-baserade URL för att hämta publicerade certifikat

Intressenter

Detta dokument syftar till att stödja följande intressenter i deras arbete, dess informationsbehov samt ge svar på vanligt förekommande frågeställningar.

Intressenter

  • IT-arkitekter, utvecklare
    • Som utvärderar, analyserar, designar, bygger, och testar programvaror.

Referenser

Referens till

Länk

SMPv1

https://docs.oasis-open.org/bdxr/bdx-smp/v1.0/bdx-smp-v1.0.html

Certifikatspublicering med bindning mot SMP

Informationsmodell

Tabellen nedan beskriver de uppgifter som är relevanta för certifikatspublicering. Respektive uppgift beskrivs kort samt har en placering (XPATH) i syntaxen SMP v1 SignedServiceMetadata XML Schema. Mer detaljer kring XML-strukturen beskrivs i kapitlet Syntaxmappning.

Informationsentitet

Beskrivning (placering i parentes)

Deltagarens identifierare

Den identifierare som deltagarorganisationen använder eDelivery Transportinfrastruktur

(SignedServiceMetadata/ServiceMetadata/ServiceInformation/ParticipantIdentifier)

Certifikat

Deltagarens certifikat för signering och kryptering

(SignedServiceMetadata/ServiceMetadata/ServiceInformation/Extension/smc:Certificate/smb:ContentBinaryObject)

Typ av certifikat

Typ av certifikat (signering eller kryptering)

(SignedServiceMetadata/ServiceMetadata/ServiceInformation/Extension/smc:Certificate/smb:TypeCode)

Syntaxmappning

Kard

Elementnamn

Kommentar

SignedServiceMetadata

Rot-element

1..1

• ServiceMetadata

 

1..1

• • ServiceInformation

 

1..1

• • • ParticipantIdentifier

Deltagarens identifierare

1..1

• • • ParticipantIdentifier/@scheme

Typ av identifiare
fast värde;

iso6523-actorid-upis

1..n

• • • Extension

 

1..1

• • • • ExtensionID

Typ av extension,

Fast värde:

urn:fdc:digg.se:edelivery:xml-extension:smp-certpub:1.0

1..1

• • • • smc:Certificate

 

1..1

• • • • • smb:TypeCode

Typ av certifikat.

 

Kod för certifikat som använts av sändaren för signering: urn:fdc:digg.se:edelivery:certpub:signing-cert

 

Kod för certifikat som använts för kryptering:

urn:fdc:digg.se:edelivery:certpub:encryption-cert

1..1

• • • • • smb:ContentBinaryObject

Certifikatet i PEM-format (BASE64-kodat)

1..1

• • • • • smb:ContentBinaryObject/mimeCode

Fast värde:

application/base64

Namnrymder

Namnrymder och exempelprefix som används i XML-strukturen

Prefix

Namnrymd

[default]

http://docs.oasis-open.org/bdxr/ns/SMP/2016/05

smc

http://docs.oasis-open.org/bdxr/ns/SMP/2/AggregateComponents

smb

http://docs.oasis-open.org/bdxr/ns/SMP/2/BasicComponents

Lokalisering av certifikat

XPath för lokalisering av certifikat i XML-strukturen

Typ

XPath

Signerings-certifikat

/SignedServiceMetadata/ServiceMetadata/ServiceInformation/Extension[ExtensionID="urn:fdc:digg.se:edelivery:xml-extension:smp-certpub:1.0"]/smc:Certificate[smb:TypeCode=" urn:fdc:digg.se:edelivery:certpub:signing-cert"]/smb:ContentBinaryObject

Krypterings-certifikat

/SignedServiceMetadata/ServiceMetadata/ServiceInformation/Extension[ExtensionID="urn:fdc:digg.se:edelivery:xml-extension:smp-certpub:1.0"]/smc:Certificate[smb:TypeCode=" urn:fdc:digg.se:edelivery:certpub:encryption-cert"]/smb:ContentBinaryObject

REST-bindning

Lokalisering av certifikatspubliceringen enligt denna specifikation använder de principer som gäller för slagning i SMP. En URL byggs upp enligt för DNS/SML-slagning som genom NAPTR anvisar webb-adressen till publiceringstjänsten.

Sändande applikation hämtar mottagande deltagares publika nyckel genom slagning mot den mottagningstjänst som gäller för meddelandetypen som ska krypteras. Mottagande applikation hämtar signeringscertifikat (för kontroll av att mottaget meddelande är signerat med rätt certifikat) genom slagning mot den mottagningstjänst som används för meddelandekvittens.

En URL byggs upp med hjälp av deltagarens identifierare och den aktuella mottagningstjänsten.

Resurs

URI

HTTP Metod

XML rot element

Certifikats-publicering

/{identifier scheme}::{id}/ser vices/ {docType}

GET

<SignedServiceMetadata>

Exempel:

https://domän/iso6523-actorid-upis%3A%3A0203%3Areceivingexample.se/services/busdox-docid-qns%3A%3Aurn%3Ariv%3Ainfrastructure%3Amessaging%3Amessagewithattachments%3A2%3A%3Amessage%3A%3A2.0%3A%3Atm-base-ext-sigenc

För mer information om REST-bindningen, se [SMPv1] kapitel 3.4.1 REST interface

Kontroll av resultatets signatur

Certifikatsinformationen ingår i det signerade service-metadata som returneras av tjänsten. Kontroll av signaturen görs enligt principerna i [SMPv1] 3.6.2.2 Verifying the signature.

Typiskt scenario (icke normativt)

Nedan följer en enkel beskrivning av de steg som avsändare respektive mottagare gör för att nyttja certifikat för signering och publicering.

Förutsättning

Deltagarna har publicerat sina certifikat i certifikatpubliceringstjänsten.

Avsändarens meddelandetjänst

  1. skapar nyttolast
  2. Hämtar krypteringscertifikat genom att göra en slagning i certifikatspubliceringstjänsten baserat på mottagarens identifierare och den meddelandetyp (för nyttolasten) som är aktuell
  3. Krypterar nyttolast med det certifikat som mottagaren angivit som krypteringscertifikat
  4. Placerar krypterad nyttolast i kuvert (t.ex. XHE)
  5. Signerar kuvertet med eget signeringscertifikat
  6. Skickar

Mottagarens meddelandetjänst

  1. Tar emot meddelande
  2. Kontrollerar meddelandets integritet genom att validera signaturens riktighet
  3. Hämtar avsändarens signeringscertifikat genom att göra en slagning baserad på avsändarens identifierare och den meddelandetyp som används för meddelandekvittens.
  4. Kontrollerar att samma certifikat använts för signering som också hämtats från certifikatpubliceringstjänsten
  5. Dekrypterar nyttolasten med egen privat nyckel (som hör ihop med det krypteringscertifikatet som avsändaren använt)
  6. Validerar att nyttolast är följsamt med aktuellt meddelandeformat (XML Schema/schematron eller motsvarande)
  7. Skapar kvittensmeddelande och placerar i kuvert (t.ex. XHE)
  8. Signerar kvittens
  9. Skickar kvittens
Hjälpte denna information dig?

Ditt svar hjälper oss att förbättra sidan

Senast uppdaterad: