Show Menu
ARGOMENTI×

Reader che estende i documenti PDF protetti tramite criterio tramite la libreria Protezione portatile

Per estendere i documenti PDF protetti tramite criterio, è necessario avere familiarità con i concetti di protezione dei documenti, estensione dei lettori e linguaggio di programmazione Java.
È possibile utilizzare la protezione dei documenti per limitare l'accesso a documenti PDF specifici solo agli utenti autorizzati. È inoltre possibile determinare in che modo un destinatario può utilizzare un documento protetto. Ad esempio, è possibile specificare se i destinatari possono stampare, copiare o modificare il testo di un documento protetto tramite criterio. Per ulteriori informazioni sulla protezione dei documenti, vedere Informazioni sulla protezione dei documenti.
È possibile utilizzare le estensioni dei lettori per abilitare le funzioni interattive nel documento Adobe PDF tramite Acrobat Reader. Queste funzioni interattive normalmente disponibili solo tramite Adobe Acrobat Professional e Standard. Per informazioni sulle funzioni interattive che possono essere abilitate dall'estensione del lettore, consulta Adobe Experience Manager Forms DocAssurance Service .
È possibile utilizzare la libreria di protezione portatile per applicare criteri al documento senza che sia necessario che il documento viaggia in rete. Solo le credenziali di sicurezza e i dettagli relativi alle politiche di protezione viaggiano sulla rete. Il documento effettivo non lascia mai il client e i criteri di protezione vengono applicati localmente sul client.

Reader che estende i documenti PDF protetti tramite criterio

I documenti protetti tramite criterio sono documenti crittografati. Non potete utilizzare le API standard per l'estensione dei lettori per applicare, rimuovere e recuperare i diritti di utilizzo di documenti PDF protetti tramite criterio. Solo il servizio Reader Extensions della libreria Protezione portatile consente alle API di applicare, rimuovere e recuperare i diritti di utilizzo di documenti PDF protetti tramite criterio.

Reader Extensions, servizio

Il servizio di estensione del lettore aggiunge i diritti di utilizzo a un documento PDF protetto tramite criterio, attivando le funzioni normalmente non disponibili quando un documento PDF viene aperto con Adobe Acrobat Reader. Dispone inoltre di API per rimuovere e recuperare i diritti di utilizzo di un documento protetto tramite criterio.
Il servizio Reader Extensions supporta completamente i documenti PDF basati sullo standard PDF 1.6 e versioni successive. Oltre ad Acrobat Reader, gli utenti di terze parti non richiedono software o plug-in aggiuntivi per utilizzare i documenti PDF protetti tramite criterio.
Con il servizio Reader Extensions è possibile effettuare le seguenti operazioni:
  • Applicare diritti di utilizzo a un documento PDF protetto tramite criterio.
  • Rimuovere i diritti di utilizzo di un documento PDF protetto tramite criterio.
  • Ottenete i diritti di utilizzo applicati a un documento PDF protetto tramite criterio.

Applicazione dei diritti di utilizzo a un documento PDF protetto tramite criterio

Potete utilizzare l'API applyUsageRights Java per applicare diritti di utilizzo ai documenti PDF protetti tramite criterio. I diritti di utilizzo si riferiscono a funzionalità disponibili per impostazione predefinita in Acrobat ma non in Adobe Reader, ad esempio la possibilità di aggiungere commenti a un modulo o di compilare campi modulo e salvare il modulo. I documenti PDF a cui sono stati applicati diritti di utilizzo sono denominati documenti abilitati per i diritti. L'utente che apre un documento con diritti in Adobe Reader può eseguire operazioni abilitate per tale documento specifico.
Sintassi: InputStream applyUsageRights(InputStream inputFile, File certFile, String credentialPassword, UsageRights usageRights)
Parametro
Descrizione
inputFile
Specificare InputStream che rappresenta il documento PDF a cui applicare i diritti di utilizzo. Potete utilizzare i documenti protetti per la protezione dei documenti di LiveCycle Rights Management o AEM Forms.
certFile
Specificare l'oggetto File che rappresenta un file .jks. Il file .jks è un file keystore. Indica un certificato che concede diritti di utilizzo.
credentialPassword
Specificate la password dell'archivio di chiavi.
usageRights
Specifica un oggetto di tipo UsageRights . L'oggetto usageRights rappresenta diritti individuali che possono essere applicati a un documento PDF protetto tramite criterio.

Ottenete i diritti di utilizzo applicati a un documento PDF protetto tramite criterio.  

Potete utilizzare l'API getDocumentUsageRights Java per recuperare i diritti di utilizzo dell'estensione del lettore applicati a un documento PDF protetto tramite criterio. Ottenendo informazioni sui diritti di utilizzo, è possibile ottenere informazioni sulle funzioni che l'estensione del lettore di funzioni ha attivato per il documento PDF protetto tramite criterio.
Sintassi: public GetUsageRightsResult getDocumentUsageRights(InputStream inDoc)
Parametro
Descrizione
inDoc
Specificare InputStream che rappresenta il documento PDF da cui recuperare i diritti di utilizzo. Potete utilizzare i documenti protetti per la protezione dei documenti di LiveCycle Rights Management o AEM Forms.

Esempio di codice

//Create a ServiceClientFactory instance
ServiceClientFactory factory = ServiceClientFactory.createInstance(connectionProps);
//Create a RightsManagementClient object
RightsManagementClient2 rmClient2= new RightsManagementClient2(factory);

String inputFileName = "C:\\Sample\\protected.pdf"; //Input file can be RM protected or unprotected pdf file
File certFile = new File("C:\\Sample\\cert.jks"); //RE certificate file
String password = "password"; //password for RE certificate
UsageRights usageRights = getUsageRights(true,true,false,false,true,true,false,false,false,false,true);

//RE rights to be applied on the file : FormFillIn, FormDataImportExport, SubmitStandalone, OnlineForms, DynamicFormField, DynamicFormPages, BarcodeDecoding, DigitalSignatures, Comments, CommentsOnline, EmbeddedFiles

InputStream inputFileStream = new FileInputStream(inputFileName);
InputStream output = rmClient2.getRightsManagementReaderExtensionService().applyUsageRights(inputFileStream, certFile, credentialPassword, rights);

String outputFileName = "C:\\Sample\\ReAdded.pdf";
//Save the PDF document
File myFile = new File(outputFileName);
FileOutputStream outputStream = new FileOutputStream(myFile);

int read = 0;
byte[] bytes = new byte[1024];

while ((read = output.read(bytes)) != -1) {

    outputStream.write(bytes, 0, read);
}

System.out.println("UsageRights applied successfully to the document. ”);
 outputStream.close();
inputFileStream.close();

//Get Usage Rights for the output pdf document
InputStream fileWithRe = new FileInputStream(myFile);

GetUsageRightsResult usageRights = rmClient2.getRightsManagementReaderExtensionService().getDocumentUsageRights(fileWithRe);

UsageRights rights = usageRights.getRights();
String right1 = rights1.toString();
System.out.println("RE rights for the file are :\n"+right1);
 fileWithRe.close();

Rimozione dei diritti di utilizzo di un documento PDF protetto tramite criterio

Potete utilizzare l'API removeUsageRights Java per rimuovere i diritti di utilizzo da un documento protetto tramite criterio. La rimozione dei diritti di utilizzo da un documento PDF protetto tramite criterio è necessaria per eseguire altre operazioni AEM Forms sul documento. Ad esempio, è necessario firmare (o certificare) digitalmente un documento PDF prima di impostare i diritti di utilizzo. Pertanto, se si desidera eseguire operazioni su un documento protetto tramite criterio, è necessario rimuovere i diritti di utilizzo dal documento PDF, eseguire altre operazioni, ad esempio firmare digitalmente il documento e quindi riapplicare i diritti di utilizzo al documento.
Sintassi: InputStream removeUsageRights(InputStream inputFile)
Parametro
Descrizione
inputFile
Specificare InputStream che rappresenta il documento PDF da cui rimuovere i diritti di utilizzo . Potete utilizzare i documenti protetti per la protezione dei documenti di LiveCycle Rights Management o AEM Forms.

Esempio di codice

//Create a ServiceClientFactory instance
ServiceClientFactory factory = ServiceClientFactory.createInstance(connectionProps);
//Create a RightsManagementClient object
RightsManagementClient2 rmClient2= new RightsManagementClient2(factory);

String inputFileName = "C:\\Sample\\fileWithRe.pdf"; //Input file can be RM protected or unprotected pdf file
InputStream inputFileStream = new FileInputStream(inputFileName);

InputStream fileStream = rmClient2.getRightsManagementReaderExtensionService().removeUsageRights(inputFileStream);

String outputFileName = "C:\\Sample\\ReRemoveded.pdf";
//Save the PDF document
File myFile = new File(outputFileName);
FileOutputStream outputStream = new FileOutputStream(myFile);

int read = 0;
byte[] bytes = new byte[1024];

while ((read = fileStream.read(bytes)) != -1) {

    outputStream.write(bytes, 0, read);
}
System.out.println("RE rights removed successfully from the document.”);
outputStream.close();
inputFileStream.close();