Reader utökar policyskyddade PDF-dokument med hjälp av Portable Protection Library reader-extending-policy-protected-pdf-documents-using-portable-protection-library
Lär dig mer om dokumentsäkerhet, lästillägg och Java Programming Language för att utöka dokumentskyddet i PDF.
Du kan använda dokumentskydd för att begränsa åtkomsten till specifika PDF-dokument till endast behöriga användare. Du kan också bestämma hur en mottagare ska kunna använda ett skyddat dokument. Du kan till exempel ange om mottagarna ska kunna skriva ut, kopiera eller redigera text i ett dokument som skyddas av dokumentsäkerhetsregler. Mer information om dokumentsäkerhet finns i om dokumentsäkerhet.
Du kan använda läsartillägg för att aktivera interaktiva funktioner i Adobe PDF-dokument via Acrobat Reader. Dessa interaktiva funktioner som normalt bara är tillgängliga via Adobe Acrobat Professional och Standard. Om du vill veta mer om de interaktiva funktioner som läsartillägget kan aktivera kan du läsa Adobe Experience Manager Forms DocAssurance-tjänst.
Du kan använda det portabla skyddsbiblioteket för att tillämpa skyddsprofiler på dokumentet utan att behöva skicka dokumentet via nätverket. Det är bara säkerhetsreferenser och skyddsprofiler som rör sig över nätverket. Det faktiska dokumentet lämnar aldrig klienten och skyddsprofiler tillämpas lokalt på klienten.
Reader utökning av säkerhetsskyddspolicyskyddade PDF-dokument reader-extending-document-security-policy-protected-pdf-documents
Skyddade dokument är krypterade. Du kan inte använda standardAPI:er för läsartillägg för att tillämpa, ta bort och hämta användningsrättigheter för principskyddade PDF-dokument. Endast Reader Extensions-tjänsten i Portable Protection Library tillhandahåller API:er för att tillämpa, ta bort och hämta användningsrättigheter för dokument som skyddas av dokumentsäkerhetsprinciper i PDF.
Tjänsten Reader Extensions reader-extensions-service
Tilläggstjänsten för läsare lägger till användningsrättigheter i ett policyskyddat PDF-dokument, vilket aktiverar funktioner som normalt inte är tillgängliga när ett PDF-dokument öppnas med Adobe Acrobat Reader. Den har även API:er för att ta bort och hämta användarrättigheter för ett policyskyddat dokument.
Reader Extensions-tjänsten stöder fullt ut PDF-dokument som bygger på PDF standard 1.6 och senare. Förutom Acrobat Reader behöver användare från tredje part inga ytterligare program eller plugin-program för att kunna använda de profilskyddade PDF-dokumenten.
Du kan utföra följande uppgifter med tjänsten Reader Extensions:
- Lägg in användarrättigheter i ett policyskyddat PDF-dokument.
- Ta bort användningsrättigheterna för ett policyskyddat PDF-dokument.
- Hämta användningsrättigheter som gäller ett policyskyddat PDF-dokument.
Använda användarrättigheter i ett dokument som skyddas av dokumentsäkerhetsregler i PDF apply-usage-rights-to-a-document-security-policy-protected-pdf-document
Du kan använda applyUsageRights
Java API för att lägga in användarrättigheter i policyskyddade PDF-dokument. Användningsrättigheterna gäller funktioner som är tillgängliga som standard i Acrobat men inte i Adobe Reader, t.ex. möjligheten att lägga till kommentarer i ett formulär eller att fylla i formulärfält och spara formuläret. PDF-dokument som har användarrättigheter är aktiverade. En användare som öppnar ett rättighetsaktiverat dokument i Adobe Reader kan utföra åtgärder som är aktiverade för det specifika dokumentet.
Syntax: InputStream applyUsageRights(InputStream inputFile, File certFile, String credentialPassword, UsageRights usageRights)
Hämta användningsrättigheter som gäller ett policyskyddat PDF-dokument. retrieve-usage-rights-applied-to-a-policy-protected-pdf-document-nbsp
Du kan använda getDocumentUsageRights
Java API för att hämta läsartilläggets användningsrättigheter som tillämpas på ett policyskyddat PDF-dokument. Genom att hämta information om användningsrättigheter kan du lära dig mer om de funktioner som läsartillägget har aktiverat för det principskyddade PDF-dokumentet.
Syntax: public GetUsageRightsResult getDocumentUsageRights(InputStream inDoc)
Kodexempel code-sample
//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();
Ta bort användningsbehörighet för ett profilskyddat PDF-dokument remove-usage-rights-of-a-policy-protected-pdf-document
Du kan använda removeUsageRights
Java API för att ta bort användarrättigheter från ett policyskyddat dokument. Du måste ta bort användningsrättigheter från ett policyskyddat PDF-dokument för att kunna utföra andra AEM Forms-åtgärder i dokumentet. Du måste till exempel signera (eller certifiera) ett PDF-dokument digitalt innan du anger användningsbehörighet. Om du vill utföra åtgärder på ett policyskyddat dokument måste du därför ta bort användningsbehörighet från PDF-dokumentet, utföra andra åtgärder, t.ex. signera dokumentet digitalt och sedan återanvända användningsbehörighet för dokumentet.
Syntax: InputStream removeUsageRights(InputStream inputFile)
Kodexempel code-sample-1
//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();