|
<< Fare clic per visualizzazione il sommario >> Percorso: API di piattaforma > JamioPlug > JamioPlug Document Automation > Firma elettronica > ExtractSignatureDetailsFromDocument |
Analizza un file firmato ed estrae i dettagli sintetici e analitici delle firme apposte, riportando eventuali informazioni disponibili nel report di firma.
Metodo
PlugDocumentAutomation /ExtractSignatureDetailsFromDocument
Input |
|||
Nome |
Descrizione |
Tipo |
Opzionale |
serverAddress |
Indirizzo server da un Dominio esterno (per il Dominio della sessione corrente, utilizzare nullo o vuoto). |
String |
Y |
token |
Token di sessione (per la sessione corrente nel dominio corrente potrebbe essere null o vuoto). |
String |
Y |
resourceReference |
Collegamento alla risorsa contenente il file da analizzare. Può essere un riferimento ad un Attachment, un Componente File, un allegato di processo, un Documento o un'altra risorsa contenente allegati. Se la risorsa è di tipo Document e contiene più componenti file viene utilizzato: •il componente principale se è di tipo File; •in assenza di componente principale, deve esserci un solo componente di tipo File. Se la risorsa contiene una lista di attachments, deve esserci un solo file. |
Reference |
|
testMode |
True se è richiesta l'esecuzione del metodo in modalità test. Se non specificato, viene effettuata l'esecuzione del metodo in modalità live. |
Boolean |
Y |
Output |
|
||
Nome |
Descrizione |
Tipo |
|
returnValue |
Restituisce un dato strutturato che contiene i seguenti campi: •SignatureForm: di tipo testo, può assumere i valori "cades", "pades" or "xades"; •Result: di tipo testo, può assumere i valori "ok", "warning" or "error"; •ReportString: di tipo testo, JSON contenente tutte le informazioni relative all'analisi della firma; •ReportFile: ti tipo Collegamento al file JSON contenente tutte le informazioni relative all'analisi della firma; •Count: di tipo intero, che riporta il numero di firme apposte sul documento; •Signatures: lista di dati strutturati che riportano per ogni firma apposta sul documento: osubject, di tipo testo, le informazioni complessive relative al firmatario (il "Soggetto") in un unico blocco di testo; ogivenName, di tipo testo, il nome proprio del titolare. Può essere riferito ad una persona fisica, un'organizzazione o una persona che appartiene ad un'organizzazione; osurname, di tipo testo, il cognome del titolare. Può essere riferito ad una persona fisica, un'organizzazione o una persona che appartiene ad un'organizzazione; oserialNumber, di tipo testo, un codice identificativo univoco. In Italia, per le persone fisiche, contiene il Codice Fiscale preceduto dalla stringa TINIT- (Tax Identification Number Italy), che serve a standardizzare il dato a livello europeo; oorganization, di tipo testo, il nome dell'azienda, ente pubblico o società a cui appartiene il firmatario (es. Rossi S.r.l.), se la firma è di tipo aziendale/professionale; oorganizationIdentifier, di tipo testo, l'identificativo fiscale dell'azienda. Segue lo standard europeo: VATIT- (Partita IVA italiana) seguito dal numero numerico; ovalidFrom, di tipo testo, la data e l'ora esatta in cui il certificato di firma ha iniziato a essere legalmente valido; ovalidTo, di tipo testo, la data e l'ora esatta in cui scade la validità del certificato di firma; osignatureResult, di tipo testo, il risultato della verifica crittografica. Indica se la firma è intatta o se il documento è stato alterato dopo la firma; osigningTime, di tipo testo, la data e ora di apposizione della firma; ovalidationSignatureResult, di tipo testo, l'esito finale della conformità legale della firma (es. valida, non valida, sconosciuta); ovalidationSignatureMessage, di tipo testo, un messaggio testuale che spiega l'esito della firma (es. "La firma è valida e soddisfa i requisiti del regolamento eIDAS"). ovalidationSignatureId, di tipo testo, un codice tecnico interno che mappa lo stato specifico di quella firma; ovalidationCertificateMessage, di tipo testo, lo stato del certificato del firmatario (es. specifica se è attivo, scaduto o se è stato revocato/sospeso prima della scadenza); ovalidationCertificateId, di tipo testo, il codice che indica lo stato del certificato del firmatario (es. specifica se è attivo, scaduto o se è stato revocato/sospeso prima della scadenza); ovalidationIssuerMessage, di tipo testo, il responso sui controlli effettuati sull'Ente Certificatore. Conferma se chi ha rilasciato la firma è ancora una Certification Authority autorizzata e inclusa negli elenchi ufficiali europei (Trusted List); ovalidationIssuerId, di tipo testo, il codice che indica il responso sui controlli effettuati sull'Ente Certificatore. Conferma se chi ha rilasciato la firma è ancora una Certification Authority autorizzata e inclusa negli elenchi ufficiali europei (Trusted List); oissuer, di tipo testo, la stringa testuale completa che descrive l'autorità di certificazione; oissuerOrganization, di tipo testo, il nome dell'Ente Certificatore che ha emesso e garantito il certificato (es. Aruba, InfoCert, Poste Italiane); oissuerOrganizationIdentifier, di tipo testo, la Partita IVA o il codice identificativo europeo dell'Ente Certificatore; oissuerCountry, di tipo testo, la nazione di appartenenza del certificatore (es. IT per l'Italia); osignatureWarningId, di tipo testo, un codice di avviso (Warning). Se valorizzato, indica un'anomalia non bloccante, ma da verificare (es. la firma è valida ma è stata usata una marca temporale non standard, oppure il certificato è scaduto dopo che il documento era già stato firmato).
In modalità testMode = True, viene generato un returnvalue di default con i seguenti valori:
{ "subject", "SURNAME=Rossi, GIVENNAME=Mario,CN=Mario Rossi, SERIALNUMBER=BRCRNN80T45A048Q, DN=AG123BD" }, { "givenName", "Mario" }, { "surname", "Rossi" }, { "serialNumber", "BRCRNN80T45A048Q" }, { "organization", "" }, { "organizationIdentifier", "" }, { "validFrom", "2021-03-08T09:21:09Z" }, { "validTo", "2046-03-02T09:21:09Z" }, { "signatureResult", "ok" }, { "signingTime", "2025-06-03T09:08:07Z" }, { "validationSignatureResult", "ok" }, { "validationSignatureMessage", "Valido" }, { "validationSignatureId", "validation.valid" }, { "validationCertificateMessage", "Valido" }, { "validationCertificateId", "validation.valid" }, { "validationIssuerMessage", "Valido" }, { "validationIssuerId", "validation.valid" }, { "issuer", "C=IT,L=Arezzo,O=ArubaPEC S.p.A., organizationIdentifier=VATIT-01879020517, OU=Qualified Trust Service Provider, CN=ArubaPEC EU Qualified Certificates CA G1" }, { "issuerOrganization", "ArubaPEC S.p.A." }, { "issuerOrganizationIdentifier", "VATIT-01879020517" }, { "issuerCountry", "IT" }, { "signatureWarningId", "" } |
Dataset |
|
Commenti
L’estrazione delle informazioni del firmatario avviene navigando il rapporto di firma, individuando il certificato associato alla firma e leggendo, ove presenti, le proprietà interne del certificato.
In presenza di firme Matrioska CAdES su CAdES o CAdES su PAdES, la funzionalità analizza esclusivamente la firma esterna e non estrae informazioni sulle firme interne.
Firme successive in PAdES e firme parallele in CAdES vengono, invece, gestite.
Il metodo si comporta come segue:
Restituisce |
Condizione |
Errore PLUG_NotASignedDocument |
Se il file referenziato in resourceReference non contiene firme. |
Autorizzazioni
Per eseguire il metodo è necessario possedere il permesso di Lettura sulla risorsa referenziata dal collegamento identityReference.