Vai al contenuto

Namirial Sign API Service (2.0.0)

Namirial Sign: API Service

API Service è un servizio locale che espone un insieme di API utilizzate per la firma, l'autenticazione e il recupero delle informazioni di base sui certificati locali/di sistema, consentendo l'utilizzo di tali funzionalità da parte di applicazioni di terze parti.

Configurazione della porta

API Service si mette in ascolto su una porta configurabile nelle impostazioni di Namirial Sign. La porta predefinita è 11543. Una volta configurata la porta, qualsiasi applicazione di terze parti dovrà essere configurata per inviare richieste a tale porta.

Scarica la descrizione OpenAPI
Lingue
Server
Endpoint locale predefinito di API Service
https://127.0.0.1:11543

Service

Endpoint per stato e ciclo di vita del servizio

Operazioni

Card

Informazioni sulla smart card e sul titolare

Operazioni

Certificates

Individuazione e reportistica dei certificati

Operazioni

Ricerca dei certificati di firma disponibili

Richiesta

Restituisce i certificati di firma disponibili. Utilizzare pkcs11=pkcs11 per i certificati presenti sul dispositivo e pkcs11=system per i certificati di sistema.

Query
pkcs11string or null(Pkcs11Source)

Sorgente del certificato. Usa pkcs11 per i dispositivi fisici e system per i certificati di sistema.

Predefinito "pkcs11"
Enum"pkcs11""system"
curl -i -X POST \
  'https://127.0.0.1:11543/findSigningCertificates?pkcs11=pkcs11'

Risposte

Certificati di firma disponibili raggruppati per origine del certificato.

Corpoapplication/json
CertificatesArray of objects(CertificateGroup)obbligatorio
Certificates[].​Keyobject(CertificateGroupKey)obbligatorio
Certificates[].​Key.​CertificateLocationstring(CertificateLocation)obbligatorio
Enum"PKCS11""SYSTEM"
Certificates[].​Key.​CardReaderNamestringobbligatorio
Certificates[].​ValueArray of objects(SigningCertificate)obbligatorio
Certificates[].​Value[].​ValidFromstringobbligatorio

Inizio validità del certificato.

Esempio: "2025-05-28 15:19:57"
Certificates[].​Value[].​SerialNumberstringobbligatorio
Esempio: "1000"
Certificates[].​Value[].​Thumbprintstringobbligatorio
Esempio: "fcc3b7d22482973174bf326285ecf825c5e927d469acf1fc85e5dfb805876e1c"
Certificates[].​Value[].​Subjectstringobbligatorio
Esempio: "example.com"
Certificates[].​Value[].​SubjectFullstringobbligatorio
Esempio: "CN=example.com,OU=Example Unit,O=Example Organization,L=Rome,S=Italy,C=IT"
Certificates[].​Value[].​Issuerstringobbligatorio
Esempio: "example.com"
Certificates[].​Value[].​IssuerFullstringobbligatorio
Esempio: "CN=example.com,OU=Example Unit,O=Example Organization,L=Rome,S=Italy,C=IT"
Certificates[].​Value[].​ValidUntilstringobbligatorio

Data di scadenza del certificato.

Esempio: "2035-05-26 15:19:57"
Certificates[].​Value[].​HasPrivateKeybooleanobbligatorio
Certificates[].​Value[].​PemRepresentationstringobbligatorio

certificato in formato PEM.

Certificates[].​Value[].​KeyUsagesstringobbligatorio

Key usage del certificato.

Esempio: "DigitalSignature;Non-Repudiation"
Certificates[].​Value[].​SupportedSigningHashAlgorithmsArray of stringsobbligatorio
Elementi Enum"SHA1""SHA256""SHA384""SHA512"
Esempio: ["SHA1","SHA256","SHA384","SHA512"]
Certificates[].​Value[].​CertificateLocationstring(CertificateLocation)obbligatorio
Enum"PKCS11""SYSTEM"
Certificates[].​Value[].​CardReaderNamestringobbligatorio
Esempio: "Bit4id Digital-DNA 0"
Certificates[].​Value[].​CertificateChainArray of objects(CertificateChainItem)obbligatorio

Certificate chain.

Certificates[].​Value[].​CertificateChain[].​property name*anyproprietà aggiuntiva
Certificates[].​Value[].​SubjectIsUniquebooleanobbligatorio
Certificates[].​Value[].​RootCertificateThumbprintstring or nullobbligatorio
Errorstring or nullobbligatorio
Successbooleanobbligatorio
Risposta
application/json
{ "Certificates": [ { … } ], "Error": null, "Success": true }

Ottieni i certificati presenti sulla smart card

Richiesta

curl -i -X GET \
  https://127.0.0.1:11543/getCertificates

Risposte

Certificati disponibili sulla smart card.

Corpoapplication/json
certificatesArray of objects(BasicCertificateInfo)obbligatorio
certificates[].​subjectstringobbligatorio
certificates[].​expirationstringobbligatorio
Esempio: "26/05/35"
Risposta
application/json
{ "certificates": [ { … }, { … } ] }

Ottieni il report dei certificati

Richiesta

curl -i -X GET \
  https://127.0.0.1:11543/log

Risposte

Report in formato testo contenente informazioni sui lettori connessi e sui certificati.

Corpotext/plain
string
Risposta
text/plain
=== Connected readers report ===
Reader: [Bit4id Digital-DNA 0]
- ck_id: 3357b15c7b689ea593685b573beab6bec4a6e7b6f0def25fa20ab87bfbe07209 cert: example.com ca: example.com
=== End report ===

Signing

Endpoint per firma di file remoti, upload e hash

Operazioni