AddAdvancedSignatureByOTP

<< Fare clic per visualizzazione il sommario >>

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

AddAdvancedSignatureByOTP

Appone su un documento una firma elettronica avanzata che afferisce ad una persona fisica, tramite verifica codice OTP.

 

Metodo

PlugDocumentAutomation /AddAdvancedSignatureByOTP

 

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

Y

secretCode

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

String

 

verificationId

Identificativo di verifica dell'operazione di validazione della firma con OTP.

String

 

otpCode

Codice OTP che deve fornire l'utente per quel verificationID.

String

 

resourceReference

Collegamento alla risorsa contenente il file da firmare.

Può essere un riferimento ad un Attachment, un FileComponent, un allegato di processo, un Document o un'altra risorsa contenente attachments.

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

 

signatureType

Tipo di firma da applicare: può essere Pades, Cades o Xades.

Se non specificato e il file è in formato PDF viene utilizzato Pades, se è in formato XML Xades, in tutti gli altri casi Cades.

String

Y

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:

SignedDocument: collegamento al documento firmato;

EvidenceReport: collegamento al report di firma che riporta informazioni sul firmatario, il certificato ed il documento firmato;

SignedDocumentName: stringa che riporta il nome completo del file firmato;

EvidenceReportName:stringa che riporta il nome completo del report di firma.

In modalità test, la firma elettronica non viene applicata al documento e viene restituito in output il medesimo file di input. Viene comunque generato un report di firma con le informazioni valorizzabili.

Dataset

 

 

Commenti

Il metodo AddAdvancedSignatureByOTP 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 AddAdvancedSignatureByOTP:

1.verifica la presenza del certificato di firma per l'identità identityReference e lo legge. Il certificato di firma deve essere stato precedentemente generato tramite il metodo EnableTransactionalAdvancedSignature o il metodo EnableAdvancedSignature. Per utilizzare i certificati di firma generati con il metodo EnableAdvancedSignature, è necessario ottenere il codice OTP ed il verificationId utilizzando servizi di generazione OTP (per ulteriori informazioni contattare il customer service Openwork).

2.recupera il documento da firmare e verifica la compatibilità tra il tipo di file ed il tipo di firma (solo per pdf ed xml);

3.verifica l'OTP inserito, se in input sono stati specificati verificationId e otpCode; se è valorizzato solo uno dei due restituisce errore;

4.verificato l'OTP, esegue la firma del documento e compone il report di firma.

 

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

PLUG_Error

Se signatureType riporta un tipo di firma che non si applica al documento da firmare resourceReference.

Errore

PLUG_Error

Se signatureType è diverso da Pades, Xades o Cades.

Errore

PLUG_Error

Se è stato specificato il parametro verificationId e non otpCode.

Errore

PLUG_Error

Se è stato specificato il parametro otpCode e non verificationId.

Errore

PLUG_Error

Se il codice riportato in secretCode non è corretto.

Errore

PLUG_OtpCodeExpired

Se il codice OTP inserito è scaduto.

Errore

PLUG_Error

Se si vuole apporre una firma elettronica xades ad un file riportato in resourceReference su cui è già apposta una firma xades.

Errore

PLUG_Error

Se il file xml che si vuole firmare non è ben formato e la firma richiesta è di tipo xades.

Errore

Certificate beyond usability limit - PLUG_NotAllowedCertificate

Se il certificato di firma associato all'identità indicata nel parametro identityReference è scaduto o è valido, ma non usabile.

 

Autorizzazioni

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