EnableTransactionalAdvancedSignature

<< Fare clic per visualizzazione il sommario >>

Percorso:  API di piattaforma > JamioPlug > JamioPlug Document Automation > Firma elettronica >

EnableTransactionalAdvancedSignature

Abilita la funzionalità di firma elettronica avanzata di un documento, creando un certificato di firma emesso per una specifica identità utilizzabile una sola volta, per una specifica transazione.

 

Metodo

PlugDocumentAutomation /EnableTransactionalAdvancedSignature

 

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

identityReference

Collegamento all'identità che deve firmare il documento.

Reference

 

transactionId

Identificativo della transazione che si sta eseguendo, può essere per esempio l’URL del documento che si vuole firmare.

String

 

channel

Canale di comunicazione su cui inviare il messaggio contenente il codice OTP che autorizza la transazione.

I canali ammessi sono Email e MessagingService.

Transport

 

senderId

Identificativo che compare come mittente del messaggio che autorizza la transazione. Valore di default Jamio PaaS.

String

Y

subject

Testo, in composizione con placeholder, che viene inserito come oggetto del messaggio per i trasporti che lo prevedono. Ad esempio l'oggetto di un messaggio Email.

String

Y

startMessage

Parte iniziale del messaggio che precede il codice OTP e autorizza la transazione. Il valore di default è “Per firmare il documento utilizza il codice ”.

String

Y

endMessage

Parte finale del messaggio che autorizza la transazione, riportato dopo il codice OTP. Il valore di default è un testo vuoto.

String

Y

fields

Dato strutturato che consente di sostituire eventuali placeholder presenti nei parametri startMessage, endMessage e subject con il corrispondente elemento presente nella struttura, avente nome uguale a quello del placeholder. Il nome del campo del dato strutturato rappresenta il placeholder da inserire nel testo del messaggio, mentre il valore del campo del dato strutturato il testo che sarà riportato nel messaggio in sostituzione del placeholder.

Dataset

Y

fieldMapping

Nome dei campi disponibili nella risorsa referenziata da identityReference per valorizzare il cognome dell'identità, il nome dell'identità, il codice fiscale dell'identità. I nomi dei campi che è possibile specificare nel dato strutturato sono firstName, lastName, fiscalCode tutti di tipo testo.

Dataset

Y

secretCode

Codice di 8 cifre che rappresenta la password dell'utente associata al certificato di firma.

String

 

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 l'identificativo di verifica restituito dal servizio di firma elettronica (verificationID).

In modalità test, la firma elettronica non viene abilitata ed al posto dell'identificativo di verifica viene restituito un testo casuale, formalmente valido.

String

 

 

Commenti

Il metodo EnableTransactionalAdvancedSignature verifica che per l'identità specificata nel campo collegamento identityReference:

sia disponibile un documento di riconoscimento valido. La verifica è effettuata sulle proprietà IdentificationDocument, IdentificationCodeExpiryDate e IdentificationCode dell'identità;

esiste un recapito email ed esso sia validato. La verifica è effettuata sulle proprietà ServiceEmail e ServiceEmailValidated dell'identità;

sia disponibile un recapito telefonico ed esso sia validato. La verifica è effettuata sulle proprietà ServiceMobilePhoneNumber e ServiceMobilePhoneNumberValidated dell'identità.

 

Se l'identità ha le caratteristiche utili, il metodo EnableTransactionalAdvancedSignature crea un certificato di firma elettronica della durata di 365 giorni, con password pari al valore specificato nel parametro secretCode ed invia un messaggio all'identità, tramite il canale specificato, contenente un codice OTP da utilizzare per autorizzare la transazione. In modalità test il messaggio non viene inviato.

Il certificato di firma elettronica creato è utilizzabile una sola volta, per una specifica transazione, entro a 365 giorni dalla sua attivazione. In seguito all'apposizione della firma, tramite l'utilizzo del metodo AddAdvancedSignatureByOTP, il certificato viene annullato senza revoca.

 

Se il certificato non viene utilizzato prima della scadenza, per poterne creare un altro è necessario invalidarlo utilizzando il metodo DisableAdvancedSignature.

 

Il metodo si comporta come segue:

Restituisce

Condizione

Errore

PLUG_MissingIdentificationDocument

Se l'identità referenziata in identityReference non dispone di un documento di riconoscimento.

Errore

PLUG_InvalidIdentificationCode

Se l'identità referenziata in identityReference dispone di un documento di riconoscimento scaduto.

Errore

PLUG_MissingIdentificationCode

Se l'identità referenziata in identityReference non dispone del codice del documento di riconoscimento.

Errore

PLUG_MissingEmailAddress

Se l'identità referenziata in identityReference non dispone di un indirizzo email.

Errore

PLUG_InvalidEmailAddress

Se l'identità referenziata in identityReference dispone di un indirizzo email, ma esso non è validato.

Errore

PLUG_MissingPhoneAddress

Se l'identità referenziata in identityReference non dispone di un recapito telefonico.

Errore

PLUG_InvalidPhoneAddress

Se l'identità referenziata in identityReference dispone di un recapito telefonico, ma esso non è validato.

Errore

ERR_ServiceInvocationException

Se fieldMapping riporta il nome di campi diversi dal tipo testo breve o testo lungo presenti nella risorsa referenziata da identityReference.

Errore

PLUG_Error

Se il codice riportato in secretCode non può essere utilizzato come password dell'utente per il certificato di firma.

Errore

Certificate already exists. - PLUG_Error

Se per l'identità specificata esiste già un certificato di firma con il transactionId specificato.

 

Autorizzazioni

Per eseguire il metodo è necessario possedere il permesso di Lettura sulla risorsa referenziata dal collegamento identityReference.