eZīmogs+ mākonī integrācijas vadlīnijas

Prasības eZīmogs+ mākonī integrēšanai savā sistēmā

Sekojiet šai plūsmai, lai apzīmogotu dokumentu ar eZīmogs+ mākonī, izmantojot SignAPI un eParaksts integrācijas platformu.

ℹ️

SignAPI eSealCreate metode nav attiecināma uz eZīmogs+ mākonī.

Priekšnoteikumi

Pirms sākt, pārliecinieties, vai varat:

  • piekļūt parakstīšanas platformai - SignAPI;
  • piekļūt eParaksts e-Identitātes platformaieidas.eparaksts.lv;
  • iegūt galalietotāja autentifikācijas sertifikātu;
  • iegūt galalietotāja kvalificēto zīmoga sertifikātu (qSeal);
  • autentificēt servera puses (backend) pieprasījumus, izmantojot savus integrācijas piekļuves datus.

Gala lietotājs ir fiziska persona, kas ir pilnvarota apzīmogot dokumentus uzņēmuma vārdā.


Veiksmīgā scenārija plūsma

SolisDarbībaRezultātes
1Lietotāja sertifikātu iegūšanaJums ir autentifikācijas sertifikāts un qSeal sertifikāts
2Starpserveru piekļuves marķiera (access token) pieprasīšanaJūs saņemat servera piekļuves (introspekta) marķieri
3Sāciet SignAPI sesijuTiek izveidota parakstīšanas sesija
4Augšupielādējiet failu un aprēķiniet parakstāmos datusParakstāmi dati tiek sagatavoti, izmantojot qSeal sertifikātu
5Digitālā zīmoga izveideJūs saņemat paraksta vērtību
6Pabeidziet apzīmogošanas procesuZīmogs tiek pievienot dokumentam
7Lejupielādējiet un validējiet apzīmogoto dokumentuJums ir gatavs apzīmogots dokuments

1. Iegūstiet galalietotāja sertifikātus

Iegūstiet apzīmogošanas procesam nepieciešamos sertifikātus.

Jums ir nepieciešama piekļuve:

  • galalietotāja autentifikācijas sertifikātam
  • galalietotāja kvalificēta elektroniskā zīmoga (qSeal) sertifikātam

Autentifikācijas sertifikāta iegūšanai izmantojiet vienu no šīm metodēm:

Autentifikācijas metodeKā iegūt sertifikātu
Izmantojiet eParaksts integrācijas platformuUse the eParaksts integration platform at eidas.eparaksts.lv
eID karteIzmantojiet pārlūkprogrammas spraudni, kas nolasa sertifikātus no viedkaršu lasītāja

Kvalificēta elektroniskā zīmoga (qSeal) sertifikāts tiek izmantots vēlāk, lai aprēķinātu parakstāmos datus.


2. Pieprasiet servera piekļuves (introspekta) marķieri

Pēc lietotāja sertifikātu iegūšanas, izmantojiet eParaksts integrācijas platformu kopā ar saviem piekļuves datiem, lai izpildītu aizmugurservisa pieprasījumu.

Atbilde satur servera piekļuves marķieri, ko sauc arī par introspekta marķieri (introspect token).

Izmantojiet šo marķieri, lai autentificētu pieprasījumus SignAPI pakalpojumam.


3. Sāciet SignAPI sesiju

Autentificējieties SignAPI, izmantojot serveru piekļuves (introspekta) marķieri.

Pēc tam sāciet SignAPI sesiju dokumentu apzīmogošanas procesam.


4. Augšupielādējiet failu un aprēķiniet parakstāmos datus

Augšupielādējiet failu SignAPI.

Pēc tam aprēķiniet parakstāmos datus, izmantojot kvalificēta elektroniskā zīmoga (qSeal) sertifikātu, kas iegūts 1. solī.

Parakstāmie dati ir nepieciešami, lai izveidotu digitālo zīmogu.


5. Izveidojiet digitālo zīmogu

Izveidojiet digitālo zīmogu, izmantojot eParaksts integrācijas platformu eidas eidas.eparaksts.lv.

Izmantojiet vienu no šīm metodēm:

POST /trustedx-resources/esigp/v1/signatures/server/raw
POST /trustedx-resources/esigp/v1/signatures/server/batch

6. Pabeidziet apzīmogošanas procesu

Pabeidziet dokumentu apzīmogošanas procesu, izmantojot:

  • lietotāja autentifikācijas sertifikātu, eID vai eParaksts mobile
  • iepriekšējā solī saņemto paraksta vērtību

Pēc šīs darbības dokumentam tiek pievienots digitālais zīmogs.


7. Lejupielādējiet un validējiet apzīmogoto dokumentu

Lejupielādējiet apzīmogoto dokumentu no SignAPI.

Pārbaudiet apzīmogoto dokumentu, pirms tas tiek atgriezts lietotājam vai saglabāts sistēmā.


Saistītā dokumentācija

Pilnu SignAPI pakalpojuma dokumentāciju skatiete SignAPI dokumentācija.


Noderīgi padomi

Parakstīšanas identitātes tipi

Ir četri parakstīšanas identitātes veidi:

Parakstīšanas identitātes tipsMērķis
Mobilā identitāte uzlabotai elektroniskajai parakstīšanaiIzmanto uzlabotai elektroniskajai parakstīšanai ar eParaksts mobile
Mobilā identitāte autentifikācijaiIzmanto autentifikācijai ar eParaksts mobile
Servera identitāte kvalificētai elektroniskai parakstīšanaiserveridIzmanto kvalificētai elektroniskai parakstīšanai
Kvalificēta elektroniskā zīmoga identitāte, qsealcIzmanto kvalificētai elektroniskai apzīmogošanai ar eZīmogs+ mākonī

Vienam lietotājam var būt vairākas qsealc identitātes.

Juridiskās personas zīmoga identitātes

Juridiskās personas zīmoga identitātes ir identitātes ar juridiskās personas kvalificētu e-zīmoga sertifikātu.

Lietotāja marķieris var saturēt nulli, vienu vai vairākas juridiskās personas zīmoga identitātes. Visas kopējā nosaukuma (Common Name- CN) vērtības ir unikālas.

Katras juridiskās personas zīmoga identifikācijai jābūt šādām etiķetēm:

EtiķeteApraksts
eparakstseParaksts identitātes etiķete
qsealcKvalificēta elektroniskā zīmoga sertifikāta etiķete
CN:<certificate common name>Sertifikāta CN vērtība
x509:keyUsage:contentCommitmentNorāda, ka sertifikātu var izmantot parakstīšanai vai apzīmogošanai

Lai atlasītu nepieciešamo parakstīšanās identitāti, izgūstiet obligātās CN:<certificate common name> vērtības un izmantojiet tās, lai izveidotu pieejamo parakstīšanas identitāšu sarakstu.

Lietotāja paroles ievades dialogs

Paroles ievades dialogā tiek parādīta sertifikāta CN vērtība, lai palīdzētu lietotājam saprast, kura sertifikāta parole tiek pieprasīta.

Piemēri:

Sertifikāta veidsLietotājam parādītās vērtības piemērs
Individuālā paraksta sertifikātsMĀRA PARAUDZIŅA
eZīmogs+ mākonī sertifikātsSIA PARAUDZIŅŠ (ACCOUNTING): eZīmogs

Identitātes etiķešu parakstīšana eZīmogs+ mākonī

Pieejamās parakstīšanas identitātes ir apzīmētas ar tagiem. eZīmogs+ mākonī izmantojiet qsealc marķējumu, lai identificētu kvalificētas elektroniskā zīmoga identitātes.

eZīmogs+ mākonī identitātes etiķešu piemēri:

[
  "eparaksts",
  "qsealc",
  "qsealcVersion1",
  "x509:keyUsage:contentCommitment",
  "SIA PARAUDZIŅŠ (RAŽOŠANA) : eZīmogs"
]

Lietotāja marķiera paraugs


Skatīt pilnu lietotāja marķiera paraugu
  {
    "_omitted_before": "...",
    "sign_identities": [
      {
        "access": [
          {
            "user_id": "efc651efcdec32f1e6cab9dc0f0cdf60"
          }
        ],
        "domain": "citizen",
        "self": "https://eparaksts/trustedx-resources/esigp/v1/sign_identities/sqnd2nvpkr0siar572hi8a9t1h",
        "description": "eparaksts:qsealc:sign",
        "links": {
          "Signatures.create.server.raw": {
            "auth": {
              "oauth2": {
                "scopes": [
                  "urn:safelayer:eidas:sign:identity:use:server"
                ]
              }
            }
          }
        },
        "id": "sqnd2nvpkr0siar572hi8a9t1h",
        "type": "pki:x509",
        "labels": [
          "qsealc",
          "qsealcVersion1",
          "CN:SIA DEMO QSEALC (Testēšana) : eZīmogs",
          "x509:keyUsage:contentCommitment",
          "eparaksts",
          "tknid:nRI7j+e/FlfLFmFB/3L15cmhdmA="
        ],
        "status": {
          "value": "enabled"
        }
      },
      {
        "access": [
          {
            "user_id": "efc651efcdec32f1e6cab9dc0f0cdf60"
          }
        ],
        "domain": "citizen",
        "self": "https://eparaksts/trustedx-resources/esigp/v1/sign_identities/fmc8755q6fgqg341jlo7pkucm5",
        "description": "eparaksts:qsealc:sign",
        "links": {
          "Signatures.create.server.raw": {
            "auth": {
              "oauth2": {
                "scopes": [
                  "urn:safelayer:eidas:sign:identity:use:server"
                ]
              }
            }
          }
        },
        "id": "fmc8755q6fgqg341jlo7pkucm5",
        "type": "pki:x509",
        "labels": [
          "qsealc",
          "qsealcVersion1",
          "CN:SIA DEMO QSEALC : eZīmogs",
          "x509:keyUsage:contentCommitment",
          "tknid:nwUFDyZk5kTrLa9gJijd5bS+PPM=",
          "eparaksts"
        ],
        "status": {
          "value": "enabled"
        }
      },
      {
        "access": [
          {
            "user_id": "efc651efcdec32f1e6cab9dc0f0cdf60"
          }
        ],
        "device_id": "3ae81f567fbe23cbb672a7b1e9b30d5db2793b4d",
        "domain": "citizen",
        "self": "https://eparaksts/trustedx-resources/esigp/v1/sign_identities/v05nvkmq3lgjh4f6n2naoe7aee",
        "description": "eparaksts:mobileid:auth",
        "id": "v05nvkmq3lgjh4f6n2naoe7aee",
        "type": "pki:x509",
        "labels": [
          "mobileidVersion2",
          "mobileid",
          "x509:keyUsage:digitalSignature",
          "eparaksts"
        ],
        "status": {
          "value": "enabled"
        }
      },
      {
        "access": [
          {
            "user_id": "efc651efcdec32f1e6cab9dc0f0cdf60"
          }
        ],
        "device_id": "3ae81f567fbe23cbb672a7b1e9b30d5db2793b4d",
        "domain": "citizen",
        "self": "https://eparaksts/trustedx-resources/esigp/v1/sign_identities/7rifb8vo8msc54f3nbfu9hv96h",
        "description": "eparaksts:mobileid:sign",
        "id": "7rifb8vo8msc54f3nbfu9hv96h",
        "type": "pki:x509",
        "labels": [
          "mobileidVersion2",
          "mobileid",
          "x509:keyUsage:contentCommitment",
          "eparaksts"
        ],
        "status": {
          "value": "enabled"
        }
      },
      {
        "access": [
          {
            "user_id": "efc651efcdec32f1e6cab9dc0f0cdf60"
          }
        ],
        "domain": "citizen",
        "self": "https://eparaksts/trustedx-resources/esigp/v1/sign_identities/7mmprhva8url12kk1vauj2ikuj",
        "description": "eparaksts:serverid:sign",
        "links": {
          "Signatures.create.server.raw": {
            "auth": {
              "oauth2": {
                "scopes": [
                  "urn:safelayer:eidas:sign:identity:use:server"
                ]
              }
            }
          }
        },
        "id": "7mmprhva8url12kk1vauj2ikuj",
        "type": "pki:x509",
        "labels": [
          "tknid:GqiMOC71ahoIeMNJUsDWicFANAw=",
          "serveridVersion1",
          "x509:keyUsage:contentCommitment",
          "CN:ANDRIS PARAUDZIŅŠ",
          "eparaksts",
          "serverid"
        ],
        "status": {
          "value": "enabled"
        }
      }
    ],
    "_omitted_after": "..."
  }