PDF-documenten versleutelen en ontsleutelen encrypting-and-decrypting-pdf-documents
Over de coderingsservice
Met de coderingsservice kunt u documenten versleutelen en decoderen. Wanneer een document wordt versleuteld, wordt de inhoud ervan onleesbaar. Een geautoriseerde gebruiker kan het document decoderen om toegang tot de inhoud te krijgen. Als een PDF-document met een wachtwoord is versleuteld, moet de gebruiker het wachtwoord voor openen opgeven voordat het document in Adobe Reader of Adobe Acrobat kan worden weergegeven. Als een PDF-document met een certificaat is versleuteld, moet de gebruiker het PDF-document decoderen met de openbare sleutel die overeenkomt met het certificaat (de persoonlijke sleutel) waarmee het PDF-document is versleuteld.
U kunt deze taken uitvoeren met behulp van de coderingsservice:
-
Codeer een PDF-document met een wachtwoord. (Zie PDF-documenten versleutelen met een wachtwoord.)
-
Codeer een PDF-document met een certificaat. (Zie PDF-documenten versleutelen met certificaten.)
-
Verwijder op wachtwoord gebaseerde versleuteling uit een PDF-document. (Zie Wachtwoordversleuteling verwijderen.)
-
Verwijder op een certificaat gebaseerde versleuteling uit een PDF-document. (Zie Versleuteling op basis van een certificaat verwijderen.)
-
Ontgrendel het document van de PDF zodat andere de dienstverrichtingen kunnen worden uitgevoerd. Nadat een met een wachtwoord gecodeerd PDF-document bijvoorbeeld is ontgrendeld, kunt u er een digitale handtekening op toepassen. (Zie Versleutelde PDF-documenten ontgrendelen.)
-
Bepaal het versleutelingstype van een beveiligd PDF-document. (Zie Type codering bepalen.)
note note NOTE Voor meer informatie over de dienst van de Encryptie, zie Services Reference for AEM Forms.
PDF-documenten versleutelen met een wachtwoord encrypting-pdf-documents-with-a-password
Wanneer u een PDF-document versleutelt met een wachtwoord, moet een gebruiker het wachtwoord opgeven om het PDF-document te openen in Adobe Reader of Acrobat. Voordat een andere AEM Forms-bewerking, zoals het digitaal ondertekenen van het PDF-document, op het document kan worden uitgevoerd, moet een met wachtwoord gecodeerd PDF-document worden ontgrendeld.
Overzicht van de stappen summary-of-steps
Voer de volgende stappen uit om een PDF-document met een wachtwoord te coderen:
- Inclusief projectbestanden.
- Maak een Encryption Client API-object.
- Een PDF-document ophalen om te versleutelen.
- Stel opties voor codering tijdens runtime in.
- Voeg het wachtwoord toe.
- Sla het gecodeerde PDF-document op als een PDF-bestand.
Projectbestanden opnemen
Neem de benodigde bestanden op in uw ontwikkelingsproject. Als u een clienttoepassing maakt met Java, neemt u de benodigde JAR-bestanden op. Als u webservices gebruikt, dient u de proxybestanden op te nemen.
De volgende JAR-bestanden moeten worden toegevoegd aan het klassepad van uw project:
- adobe-livecycle-client.jar
- adobe-usermanager-client.jar
- adobe-encryption-client.jar
- adobe-utilities.jar (vereist als AEM Forms wordt geïmplementeerd op JBoss)
- jbossall-client.jar (vereist als AEM Forms wordt geïmplementeerd op JBoss)
Een Encryption Client API-object maken
Om programmatically een de dienstverrichting van de Encryptie uit te voeren, moet u een de dienstcliënt van de Encryptie tot stand brengen.
Een PDF-document ophalen om te versleutelen
U moet een niet-gecodeerd PDF-document verkrijgen om het document met een wachtwoord te versleutelen. Als u probeert een PDF-document te beveiligen dat al is versleuteld, veroorzaakt u een uitzondering.
Opties voor codering tijdens runtime instellen
Als u een PDF-document met een wachtwoord wilt versleutelen, geeft u vier waarden op, waaronder twee wachtwoordwaarden. Het eerste wachtwoord wordt gebruikt om het PDF-document te versleutelen en moet worden opgegeven bij het openen van het PDF-document. De tweede wachtwoordwaarde, de master wachtwoordwaarde genoemd, wordt gebruikt om encryptie uit het document van de PDF te verwijderen. Wachtwoordwaarden zijn hoofdlettergevoelig en deze twee wachtwoordwaarden kunnen niet dezelfde waarden zijn.
U moet de PDF-documentbronnen opgeven die u wilt versleutelen. U kunt het volledige document van de PDF, alles behalve de meta-gegevens van het document, of enkel de gehechtheid van het document coderen. Als u alleen de bijlagen van het document versleutelt, wordt een gebruiker om een wachtwoord gevraagd wanneer hij of zij toegang probeert te krijgen tot de bestandsbijlagen.
Wanneer u een PDF-document versleutelt, kunt u machtigingen opgeven die aan het beveiligde document zijn gekoppeld. Door machtigingen op te geven, kunt u de handelingen beheren die een gebruiker die een met een wachtwoord gecodeerd PDF-document opent, mag uitvoeren. Als u bijvoorbeeld met succes formuliergegevens wilt extraheren, moet u de volgende machtigingen instellen:
- PASSWORD_EDIT_ADD
- WACHTWOORD_EDIT_MODIFY
PasswordEncryptionPermission opsommingswaarden.Het wachtwoord toevoegen
Nadat u een onbeveiligd PDF-document hebt opgehaald en waarden voor de codering hebt ingesteld, kunt u een wachtwoord toevoegen aan het PDF-document.
Het gecodeerde PDF-document opslaan als een PDF-bestand
U kunt het met een wachtwoord gecodeerde PDF-document opslaan als een PDF-bestand.
Zie ook
Een PDF-document versleutelen met de Java API
Een PDF-document versleutelen met de API voor webservices
Inclusief AEM Forms Java-bibliotheekbestanden
Verbindingseigenschappen instellen
API voor coderingsservice - Snel aan de slag
PDF-documenten versleutelen met certificaten
Een PDF-document versleutelen met de Java API encrypt-a-pdf-document-using-the-java-api
Codeer een PDF-document met een wachtwoord met behulp van de API voor versleuteling (Java):
-
Inclusief projectbestanden.
Neem JAR-bestanden van de client, zoals adobe-encryption-client.jar, op in het klassenpad van uw Java-project.
-
Maak een versleutelingsclient-API.
- Een
ServiceClientFactoryobject dat verbindingseigenschappen bevat. - Een
EncryptionServiceClientobject door de constructor ervan te gebruiken en door te gevenServiceClientFactoryobject.
- Een
-
Een PDF-document ophalen om te versleutelen.
- Een
java.io.FileInputStream-object dat het PDF-document vertegenwoordigt dat moet worden gecodeerd met de constructor ervan en dat een tekenreekswaarde doorgeeft die de locatie van het PDF-document aangeeft. - Een
com.adobe.idp.Documentobject door de constructor ervan te gebruiken en door te gevenjava.io.FileInputStreamobject.
- Een
-
Stel opties voor codering tijdens runtime in.
- Een
PasswordEncryptionOptionSpecobject door de constructor ervan aan te roepen. - Geef de bronnen van het PDF-document op die u wilt versleutelen door het
PasswordEncryptionOptionSpecobjectsetEncryptOptionmethode en eenPasswordEncryptionOptionopsommingswaarde waarmee de documentbronnen worden opgegeven die moeten worden gecodeerd. Als u bijvoorbeeld het gehele PDF-document wilt versleutelen, inclusief de metagegevens en de bijlagen, geeft uPasswordEncryptionOption.ALL. - Een
java.util.Listobject dat de versleutelingsmachtigingen opslaat met deArrayListconstructor. - Geef een machtiging op door de opdracht
java.util.Listobject 'sadden het overgaan van een opsommingswaarde die aan de toestemming beantwoordt die u wilt plaatsen. Als u bijvoorbeeld de machtiging wilt instellen waarmee een gebruiker gegevens in het PDF-document kan kopiëren, geeft uPasswordEncryptionPermission.PASSWORD_EDIT_COPY. (Herhaal deze stap voor elke machtiging die moet worden ingesteld). - Geef de compatibiliteitsoptie voor Acrobat op door de
PasswordEncryptionOptionSpecobjectsetCompatabilitymethode en het overgaan van een opsommingswaarde die het de verenigbaarheidsniveau van Acrobat specificeert. U kunt bijvoorbeeldPasswordEncryptionCompatability.ACRO_7. - Geef de wachtwoordwaarde op waarmee een gebruiker het gecodeerde PDF-document kan openen door het
PasswordEncryptionOptionSpecobjectsetDocumentOpenPasswordmethode en het overgaan van een koordwaarde die het open wachtwoord vertegenwoordigt. - Geef de waarde voor het master wachtwoord op waarmee een gebruiker de versleuteling uit het PDF-document kan verwijderen door het
PasswordEncryptionOptionSpecobjectsetPermissionPasswordmethode en het overgaan van een koordwaarde die het master wachtwoord vertegenwoordigt.
- Een
-
Voeg het wachtwoord toe.
Codeer het PDF-document door het
EncryptionServiceClientobjectencryptPDFUsingPassworden geeft de volgende waarden door:- De
com.adobe.idp.Document-object dat het PDF-document bevat dat met het wachtwoord moet worden gecodeerd. - De
PasswordEncryptionOptionSpecobject dat opties voor codering tijdens runtime bevat.
De
encryptPDFUsingPasswordmethode retourneert eencom.adobe.idp.Documentobject dat een met wachtwoord gecodeerd PDF-document bevat. - De
-
Sla het gecodeerde PDF-document op als een PDF-bestand.
- Een
java.io.Fileen zorg dat de bestandsextensie .pdf is. - De
com.adobe.idp.DocumentobjectcopyToFilemethode om de inhoud van decom.adobe.idp.Documentnaar het bestand. Zorg ervoor dat u decom.adobe.idp.Documentobject dat is geretourneerd door deencryptPDFUsingPasswordmethode.
- Een
Zie ook
Snel starten (SOAP-modus): Een PDF-document versleutelen met de Java API
Inclusief AEM Forms Java-bibliotheekbestanden
Verbindingseigenschappen instellen
Een PDF-document versleutelen met de API voor webservices encrypting-a-pdf-document-using-the-web-service-api
Codeer een PDF-document met een wachtwoord met behulp van de API voor versleuteling (webservice):
-
Inclusief projectbestanden.
Creeer een Microsoft .NET project dat MTOM gebruikt. Zorg ervoor dat u de volgende definitie van WSDL gebruikt:
http://localhost:8080/soap/services/EncryptionService?WSDL&lc_version=9.0.1.note note NOTE Vervangen localhostmet het IP-adres van de server die als host fungeert voor AEM Forms. -
Maak een Encryption Client API-object.
-
Een
EncryptionServiceClientobject met de standaardconstructor. -
Een
EncryptionServiceClient.Endpoint.Addressobject gebruikenSystem.ServiceModel.EndpointAddressconstructor. Geef een tekenreekswaarde die de WSDL opgeeft door aan de AEM Forms-service (bijvoorbeeldhttp://localhost:8080/soap/services/EncryptionService?WSDL.) U hoeft delc_versionkenmerk. Dit kenmerk wordt gebruikt wanneer u een serviceverwijzing maakt.) -
Een
System.ServiceModel.BasicHttpBindingobject door de waarde van het object op te halenEncryptionServiceClient.Endpoint.Bindingveld. De geretourneerde waarde omzetten inBasicHttpBinding. -
Stel de
System.ServiceModel.BasicHttpBindingobjectMessageEncodingveld naarWSMessageEncoding.Mtom. Deze waarde zorgt ervoor dat MTOM wordt gebruikt. -
Laat basisauthentificatie van HTTP door de volgende taken uit te voeren toe:
- Wijs de gebruikersnaam van het AEM aan het veld toe
EncryptionServiceClient.ClientCredentials.UserName.UserName. - De bijbehorende wachtwoordwaarde aan het veld toewijzen
EncryptionServiceClient.ClientCredentials.UserName.Password. - De constante waarde toewijzen
HttpClientCredentialType.Basicnaar het veldBasicHttpBindingSecurity.Transport.ClientCredentialType. - De constante waarde toewijzen
BasicHttpSecurityMode.TransportCredentialOnlynaar het veldBasicHttpBindingSecurity.Security.Mode.
- Wijs de gebruikersnaam van het AEM aan het veld toe
-
-
Een PDF-document ophalen om te versleutelen.
- Een
BLOBobject met behulp van de constructor. DeBLOBwordt gebruikt om een PDF-document op te slaan dat met een wachtwoord is versleuteld. - Een
System.IO.FileStream-object door de constructor ervan aan te roepen en een tekenreekswaarde door te geven die de bestandslocatie vertegenwoordigt van het te coderen PDF-document en de modus waarin het bestand moet worden geopend. - Maak een bytearray waarin de inhoud van de
System.IO.FileStreamobject. U kunt de grootte van de bytearray bepalen door deSystem.IO.FileStreamobjectLengtheigenschap. - De bytearray vullen met streamgegevens door de
System.IO.FileStreamobjectReaden geeft u de bytearray, de startpositie en de streamlengte door die u wilt lezen. - Vul de
BLOBobject door de inhoud van de bytearray toe te wijzen aan deBLOBobjectMTOMlid.
- Een
-
Stel opties voor codering tijdens runtime in.
- Een
PasswordEncryptionOptionSpecobject met behulp van de constructor. - Geef de bronnen voor het PDF-document op die u wilt versleutelen door een
PasswordEncryptionOptionopsommingswaarde voor dePasswordEncryptionOptionSpecobjectencryptOptionlid. Om de volledige PDF, met inbegrip van zijn meta-gegevens en zijn gehechtheid te coderen, wijsPasswordEncryptionOption.ALLaan dit gegevenslid. - Geef de compatibiliteitsoptie Acrobat op door een
PasswordEncryptionCompatabilityopsommingswaarde voor dePasswordEncryptionOptionSpecobjectcompatabilitylid. Wijs bijvoorbeeldPasswordEncryptionCompatability.ACRO_7aan dit gegevenslid. - Geef de wachtwoordwaarde op waarmee een gebruiker het gecodeerde PDF-document kan openen door een tekenreekswaarde toe te wijzen die het geopende wachtwoord vertegenwoordigt voor de
PasswordEncryptionOptionSpecobjectdocumentOpenPasswordlid. - Geef de wachtwoordwaarde op waarmee een gebruiker versleuteling uit het PDF-document kan verwijderen door een tekenreekswaarde toe te wijzen die het master wachtwoord voor de
PasswordEncryptionOptionSpecobjectpermissionPasswordlid.
- Een
-
Voeg het wachtwoord toe.
Codeer het PDF-document door het
EncryptionServiceClientobjectencryptPDFUsingPassworden geeft de volgende waarden door:- De
BLOB-object dat het PDF-document bevat dat met het wachtwoord moet worden gecodeerd. - De
PasswordEncryptionOptionSpecobject dat opties voor codering tijdens runtime bevat.
De
encryptPDFUsingPasswordmethode retourneert eenBLOBobject dat een met wachtwoord gecodeerd PDF-document bevat. - De
-
Sla het gecodeerde PDF-document op als een PDF-bestand.
- Een
System.IO.FileStreamdoor de constructor ervan aan te roepen en een tekenreekswaarde door te geven die de bestandslocatie van het beveiligde PDF-document vertegenwoordigt. - Maak een bytearray waarin de gegevensinhoud van de
BLOBobject dat is geretourneerd door deencryptPDFUsingPasswordmethode. Vul de bytearray met de waarde van deBLOBobjectMTOMlid. - Een
System.IO.BinaryWriterobject door de constructor aan te roepen en deSystem.IO.FileStreamobject. - Schrijf de inhoud van de bytearray naar een PDF-bestand door het
System.IO.BinaryWriterobjectWriteen geeft u de bytearray door.
- Een
Zie ook
AEM Forms aanroepen met SwaRef
PDF-documenten versleutelen met certificaten encrypting-pdf-documents-with-certificates
Met codering op basis van certificaten kunt u een document voor specifieke ontvangers versleutelen met behulp van technologie voor openbare sleutels. Verschillende ontvangers kunnen verschillende machtigingen voor het document krijgen. Veel aspecten van versleuteling worden mogelijk gemaakt door de technologie van de openbare sleutel. Een algoritme wordt gebruikt om twee grote aantallen te produceren, die als worden bekend toetsen, die de volgende eigenschappen hebben:
- Eén sleutel wordt gebruikt om een set gegevens te coderen. Vervolgens kan alleen de andere sleutel worden gebruikt om de gegevens te decoderen.
- Het is onmogelijk om de ene sleutel van de andere te onderscheiden.
Een van de toetsen fungeert als de persoonlijke sleutel van een gebruiker. Het is belangrijk dat alleen de gebruiker toegang heeft tot deze sleutel. De andere sleutel is de openbare sleutel van de gebruiker, die met anderen kan worden gedeeld.
Een certificaat met een openbare sleutel bevat de openbare sleutel van een gebruiker en identificeert informatie. De indeling X.509 wordt gebruikt voor het opslaan van certificaten. Certificaten worden doorgaans uitgegeven en digitaal ondertekend door een certificeringsinstantie (CA), een erkende entiteit die een zekere mate van vertrouwen biedt in de geldigheid van het certificaat. Certificaten hebben een vervaldatum waarna ze niet meer geldig zijn. Bovendien bevatten de certificaatintrekkingslijsten (CRL's) informatie over certificaten die vóór de vervaldatum zijn ingetrokken. CRL's worden periodiek gepubliceerd door certificeringsinstanties. De intrekkingsstatus van een certificaat kan ook via het online certificaatstatusprotocol (OCSP) via het netwerk worden opgehaald.
Overzicht van de stappen summary_of_steps-1
Voer de volgende stappen uit om een PDF-document te versleutelen met een certificaat:
- Inclusief projectbestanden.
- Maak een Encryption Client API-object.
- Een PDF-document ophalen om te versleutelen.
- Verwijs naar het certificaat.
- Stel opties voor codering tijdens runtime in.
- Maak een met een certificaat gecodeerd PDF-document.
- Sla het gecodeerde PDF-document op als een PDF-bestand.
Projectbestanden opnemen
Neem de benodigde bestanden op in uw ontwikkelingsproject. Als u een clienttoepassing maakt met Java, neemt u de benodigde JAR-bestanden op. Als u webservices gebruikt, dient u de proxybestanden op te nemen.
De volgende JAR-bestanden moeten worden toegevoegd aan het klassepad van uw project:
- adobe-livecycle-client.jar
- adobe-usermanager-client.jar
- adobe-encryption-client.jar
- adobe-utilities.jar (vereist als AEM Forms wordt geïmplementeerd op JBoss Application Server)
- jbossall-client.jar (vereist als AEM Forms wordt geïmplementeerd op JBoss Application Server)
Een Encryption Client API-object maken
Om programmatically een de dienstverrichting van de Encryptie uit te voeren, moet u een de dienstcliënt van de Encryptie tot stand brengen. Als u de Java Encryption Service API gebruikt, maakt u een EncrytionServiceClient object. Als u de webservice-API gebruikt, maakt u een EncryptionServiceService object.
Een PDF-document ophalen om te versleutelen
U moet een niet-gecodeerd PDF-document verkrijgen om te versleutelen. Als u probeert een PDF-document te beveiligen dat al is versleuteld, wordt een uitzondering gegenereerd.
Verwijzing naar het certificaat
Als u een PDF-document wilt versleutelen met een certificaat, verwijst u naar een certificaat dat wordt gebruikt om een PDF-document te versleutelen. Het certificaat is een .cer-bestand, een .crt-bestand of een .pem-bestand. Een PKCS#12-bestand wordt gebruikt voor het opslaan van persoonlijke sleutels met de bijbehorende certificaten.
Wanneer u een PDF-document versleutelt met een certificaat, geeft u de machtigingen op die aan het beveiligde document zijn gekoppeld. Door machtigingen op te geven, kunt u de handelingen beheren die een gebruiker die een met een certificaat gecodeerd PDF-document opent, kan uitvoeren.
Opties voor codering tijdens runtime instellen
Geef de bronnen voor het PDF-document op die u wilt versleutelen. U kunt het volledige document van de PDF, alles behalve de meta-gegevens van het document, of slechts de gehechtheid van het document coderen.
Een met een certificaat gecodeerd PDF-document maken
Nadat u een onbeveiligd PDF-document hebt opgehaald, naar het certificaat verwijst en uitvoeringsopties hebt ingesteld, kunt u een met een certificaat gecodeerd PDF-document maken. Nadat het PDF-document is versleuteld, hebt u de bijbehorende openbare sleutel nodig om het te decoderen.
Het gecodeerde PDF-document opslaan als een PDF-bestand
U kunt het gecodeerde PDF-document opslaan als een PDF-bestand.
Zie ook
Een PDF-document versleutelen met een certificaat met de Java API
Een PDF-document versleutelen met een certificaat met de webservice-API
Inclusief AEM Forms Java-bibliotheekbestanden
Verbindingseigenschappen instellen
API voor coderingsservice - Snel aan de slag
PDF-documenten versleutelen met een wachtwoord
Een PDF-document versleutelen met een certificaat met de Java API encrypt-a-pdf-document-with-a-certificate-using-the-java-api
Codeer een PDF-document met een certificaat met behulp van de API voor versleuteling (Java):
-
Inclusief projectbestanden.
Neem JAR-bestanden van de client, zoals adobe-encryption-client.jar, op in het klassenpad van uw Java-project.
-
Maak een Encryption Client API-object.
- Een
ServiceClientFactoryobject dat verbindingseigenschappen bevat. - Een
EncryptionServiceClientobject door de constructor ervan te gebruiken en door te gevenServiceClientFactoryobject.
- Een
-
Een PDF-document ophalen om te versleutelen.
- Een
java.io.FileInputStream-object dat het PDF-document vertegenwoordigt dat moet worden gecodeerd met de constructor ervan en dat een tekenreekswaarde doorgeeft die de locatie van het PDF-document aangeeft. - Een
com.adobe.idp.Documentobject door de constructor ervan te gebruiken en door te gevenjava.io.FileInputStreamobject.
- Een
-
Verwijs naar het certificaat.
- Een
java.util.Listobject dat machtigingsinformatie opslaat met de constructor ervan. - Geef de machtigingen voor het versleutelde document op door de opdracht
java.util.Listobjectaddmethode en eenCertificateEncryptionPermissionsopsommingswaarde die de machtigingen vertegenwoordigt die zijn verleend aan de gebruiker die het beveiligde PDF-document opent. Als u bijvoorbeeld alle machtigingen wilt opgeven, geeft uCertificateEncryptionPermissions.PKI_ALL_PERM. - Een
Recipientobject met behulp van de constructor. - Een
java.io.FileInputStreamobject dat staat voor het certificaat dat wordt gebruikt om het PDF-document te versleutelen met de constructor ervan en een tekenreekswaarde doorgeeft die de locatie van het certificaat opgeeft. - Een
com.adobe.idp.Documentobject door de constructor ervan te gebruiken en door te gevenjava.io.FileInputStreamobject dat het certificaat vertegenwoordigt. - De
RecipientobjectsetX509Certen geeft decom.adobe.idp.Documentobject dat het certificaat bevat. (Daarnaast worden deRecipient-object kan als certificaatbron een alias voor een Truststore-certificaat of LDAP-URL hebben.) - Een
CertificateEncryptionIdentityobject dat machtiging- en certificaatinformatie opslaat met de constructor ervan. - De
CertificateEncryptionIdentityobjectsetPermsen geeft dejava.util.Listobject dat machtigingsgegevens opslaat. - De
CertificateEncryptionIdentityobjectsetRecipienten geeft deRecipientobject dat certificaatgegevens opslaat. - Een
java.util.Listobject dat certificaatinformatie opslaat met de constructor ervan. - De
java.util.Listvoegt methode van object toe en geeft deCertificateEncryptionIdentityobject. (Ditjava.util.Listobject wordt als parameter doorgegeven aan deencryptPDFUsingCertificatesmethode.)
- Een
-
Stel opties voor codering tijdens runtime in.
- Een
CertificateEncryptionOptionSpecobject door de constructor ervan aan te roepen. - Geef de bronnen van het PDF-document op die u wilt versleutelen door het
CertificateEncryptionOptionSpecobjectsetOptionmethode en eenCertificateEncryptionOptionopsommingswaarde waarmee de documentbronnen worden opgegeven die moeten worden gecodeerd. Als u bijvoorbeeld het gehele PDF-document wilt versleutelen, inclusief de metagegevens en de bijlagen, geeft uCertificateEncryptionOption.ALL. - Geef de compatibiliteitsoptie voor Acrobat op door de
CertificateEncryptionOptionSpecobjectsetCompatmethode en eenCertificateEncryptionCompatibilityopsommingswaarde die het Acrobat-compatibiliteitsniveau opgeeft. U kunt bijvoorbeeldCertificateEncryptionCompatibility.ACRO_7.
- Een
-
Maak een met een certificaat gecodeerd PDF-document.
Codeer het PDF-document met een certificaat door het
EncryptionServiceClientobjectencryptPDFUsingCertificatesen geeft de volgende waarden door:- De
com.adobe.idp.Document-object dat het te coderen PDF-document bevat. - De
java.util.Listobject dat certificaatgegevens opslaat. - De
CertificateEncryptionOptionSpecobject dat opties voor codering tijdens runtime bevat.
De
encryptPDFUsingCertificatesmethode retourneert eencom.adobe.idp.Document-object dat een met een certificaat gecodeerd PDF-document bevat. - De
-
Sla het gecodeerde PDF-document op als een PDF-bestand.
- Een
java.io.Fileen zorg ervoor dat de bestandsnaamextensie .pdf is. - De
com.adobe.idp.DocumentobjectcopyToFilemethode om de inhoud van decom.adobe.idp.Documentnaar het bestand. Zorg ervoor dat u decom.adobe.idp.Documentobject dat is geretourneerd door deencryptPDFUsingCertificatesmethode.
- Een
Zie ook
Snel starten (SOAP-modus): Een PDF-document versleutelen met een certificaat met de Java API
Inclusief AEM Forms Java-bibliotheekbestanden
Verbindingseigenschappen instellen
Een PDF-document versleutelen met een certificaat met de webservice-API encrypt-a-pdf-document-with-a-certificate-using-the-web-service-api
Codeer een PDF-document met een certificaat met behulp van de API voor versleuteling (webservice):
-
Inclusief projectbestanden.
Creeer een Microsoft .NET project dat MTOM gebruikt. Zorg ervoor dat u de volgende definitie van WSDL gebruikt:
http://localhost:8080/soap/services/EncryptionService?WSDL&lc_version=9.0.1.note note NOTE Vervangen localhostmet het IP-adres van de server die als host fungeert voor AEM Forms. -
Maak een Encryption Client API-object.
-
Een
EncryptionServiceClientobject met de standaardconstructor. -
Een
EncryptionServiceClient.Endpoint.Addressobject gebruikenSystem.ServiceModel.EndpointAddressconstructor. Geef een tekenreekswaarde die de WSDL opgeeft door aan de AEM Forms-service (bijvoorbeeldhttp://localhost:8080/soap/services/EncryptionService?WSDL.) U hoeft delc_versionkenmerk. Dit kenmerk wordt gebruikt wanneer u een serviceverwijzing maakt.) -
Een
System.ServiceModel.BasicHttpBindingobject door de waarde van het object op te halenEncryptionServiceClient.Endpoint.Bindingveld. De geretourneerde waarde omzetten inBasicHttpBinding. -
Stel de
System.ServiceModel.BasicHttpBindingobjectMessageEncodingveld naarWSMessageEncoding.Mtom. Deze waarde zorgt ervoor dat MTOM wordt gebruikt. -
Laat basisauthentificatie van HTTP door de volgende taken uit te voeren toe:
- Wijs de gebruikersnaam van het AEM aan het veld toe
EncryptionServiceClient.ClientCredentials.UserName.UserName. - De bijbehorende wachtwoordwaarde aan het veld toewijzen
EncryptionServiceClient.ClientCredentials.UserName.Password. - De constante waarde toewijzen
HttpClientCredentialType.Basicnaar het veldBasicHttpBindingSecurity.Transport.ClientCredentialType. - De constante waarde toewijzen
BasicHttpSecurityMode.TransportCredentialOnlynaar het veldBasicHttpBindingSecurity.Security.Mode.
- Wijs de gebruikersnaam van het AEM aan het veld toe
-
-
Een PDF-document ophalen om te versleutelen.
- Een
BLOBobject met behulp van de constructor. DeBLOBwordt gebruikt om een PDF-document op te slaan dat met een certificaat is versleuteld. - Een
System.IO.FileStream-object door de constructor ervan aan te roepen en een tekenreekswaarde door te geven die de bestandslocatie vertegenwoordigt van het te coderen PDF-document en de modus waarin het bestand moet worden geopend. - Maak een bytearray waarin de inhoud van de
System.IO.FileStreamobject. U kunt de grootte van de bytearray bepalen door deSystem.IO.FileStreamobjectLengtheigenschap. - De bytearray vullen met streamgegevens door de
System.IO.FileStreamobjectReaden geeft u de bytearray, de startpositie en de streamlengte door die u wilt lezen. - Vul de
BLOBobject door het toe te wijzenMTOMeigenschap met de inhoud van de bytearray.
- Een
-
Verwijs naar het certificaat.
- Een
Recipientobject met behulp van de constructor. In dit object worden certificaatgegevens opgeslagen. - Een
BLOBobject met behulp van de constructor. DitBLOB-object het certificaat opslaan waarmee het PDF-document wordt versleuteld. - Een
System.IO.FileStream-object door de constructor ervan aan te roepen en een tekenreekswaarde door te geven die de bestandslocatie van het certificaat en de modus waarin het bestand moet worden geopend, vertegenwoordigt. - Maak een bytearray waarin de inhoud van de
System.IO.FileStreamobject. U kunt de grootte van de bytearray bepalen door deSystem.IO.FileStreamobjectLengtheigenschap. - De bytearray vullen met streamgegevens door de
System.IO.FileStreamobjectReaden geeft u de bytearray, de startpositie en de streamlengte door die u wilt lezen. - Vul de
BLOBobject door de inhoud van de bytearray toe te wijzen aan deBLOBobjectMTOMlid. - Wijs het
BLOBobject waarin het certificaat is opgeslagen in hetRecipientobjectx509Certlid. - Een
CertificateEncryptionIdentityobject dat certificaatinformatie opslaat met de constructor ervan. - Wijs het
Recipientobject waarin het certificaat is opgeslagen in hetCertificateEncryptionIdentityhet gegevenslid van de ontvanger van het object. - Een
Objectarray en wijs deCertificateEncryptionIdentityobject naar het eerste element van hetObjectarray. DitObjectarray wordt als parameter doorgegeven aan deencryptPDFUsingCertificatesmethode.
- Een
-
Stel opties voor codering tijdens runtime in.
- Een
CertificateEncryptionOptionSpecobject met behulp van de constructor. - Geef de bronnen voor het PDF-document op die u wilt versleutelen door een
CertificateEncryptionOptionopsommingswaarde voor deCertificateEncryptionOptionSpecobjectoptionlid. Om het volledige document van de PDF, met inbegrip van zijn meta-gegevens en zijn gehechtheid te coderen, wijsCertificateEncryptionOption.ALLaan dit gegevenslid. - Geef de compatibiliteitsoptie Acrobat op door een
CertificateEncryptionCompatibilityopsommingswaarde voor deCertificateEncryptionOptionSpecobjectcompatlid. Wijs bijvoorbeeldCertificateEncryptionCompatibility.ACRO_7aan dit gegevenslid.
- Een
-
Maak een met een certificaat gecodeerd PDF-document.
Codeer het PDF-document met een certificaat door het
EncryptionServiceServiceobjectencryptPDFUsingCertificatesen geeft de volgende waarden door:- De
BLOB-object dat het te coderen PDF-document bevat. - De
Objectarray die certificaatgegevens opslaat. - De
CertificateEncryptionOptionSpecobject dat opties voor codering tijdens runtime bevat.
De
encryptPDFUsingCertificatesmethode retourneert eenBLOB-object dat een met een certificaat gecodeerd PDF-document bevat. - De
-
Sla het gecodeerde PDF-document op als een PDF-bestand.
- Een
System.IO.FileStreamdoor de constructor ervan aan te roepen en een tekenreekswaarde door te geven die de bestandslocatie van het beveiligde PDF-document vertegenwoordigt. - Maak een bytearray waarin de gegevensinhoud van de
BLOBobject dat is geretourneerd door deencryptPDFUsingCertificatesmethode. Vul de bytearray met de waarde van deBLOBobjectbinaryDatalid. - Een
System.IO.BinaryWriterobject door de constructor aan te roepen en deSystem.IO.FileStreamobject. - Schrijf de inhoud van de bytearray naar een PDF-bestand door het
System.IO.BinaryWriterobjectWriteen geeft u de bytearray door.
- Een
Zie ook
AEM Forms aanroepen met SwaRef
Versleuteling op basis van een certificaat verwijderen removing-certificate-based-encryption
Op een certificaat gebaseerde versleuteling kan uit een PDF-document worden verwijderd, zodat gebruikers het PDF-document in Adobe Reader of Acrobat kunnen openen. Als u versleuteling wilt verwijderen uit een PDF-document dat is versleuteld met een certificaat, moet naar een openbare sleutel worden verwezen. Nadat de versleuteling is verwijderd uit een PDF-document, is het niet meer beveiligd.
Overzicht van de stappen summary_of_steps-2
Voer de volgende stappen uit om op een certificaat gebaseerde versleuteling te verwijderen uit een PDF-document:
- Inclusief projectbestanden.
- Maak een versleutelingsserviceclient.
- Hiermee wordt het gecodeerde PDF-document opgehaald.
- Versleuteling verwijderen.
- Sla het PDF-document op als een PDF-bestand.
Projectbestanden opnemen
Neem de benodigde bestanden op in uw ontwikkelingsproject. Als u een clienttoepassing maakt met Java, neemt u de benodigde JAR-bestanden op. Als u webservices gebruikt, dient u de proxybestanden op te nemen.
De volgende JAR-bestanden moeten worden toegevoegd aan het klassepad van uw project:
- adobe-livecycle-client.jar
- adobe-usermanager-client.jar
- adobe-encryption-client.jar
- adobe-utilities.jar (vereist als AEM Forms wordt geïmplementeerd op JBoss Application Server)
- jbossall-client.jar (vereist als AEM Forms wordt geïmplementeerd op JBoss Application Server)
Een coderingsserviceclient maken
Om programmatically een de dienstverrichting van de Encryptie uit te voeren, moet u een de dienstcliënt van de Encryptie tot stand brengen. Als u de Java Encryption Service API gebruikt, maakt u een EncrytionServiceClient object. Als u de webservice-API gebruikt, maakt u een EncryptionServiceService object.
Het versleutelde PDF-document ophalen
U moet een versleuteld PDF-document verkrijgen om op een certificaat gebaseerde versleuteling te verwijderen. Als u probeert versleuteling te verwijderen uit een niet-versleuteld PDF-document, wordt een uitzondering gegenereerd. Op dezelfde manier wordt een uitzondering gegenereerd als u probeert versleuteling op basis van een certificaat te verwijderen uit een met een wachtwoord gecodeerd document.
Codering verwijderen
Als u versleutelde PDF-documenten wilt versleutelen op basis van een certificaat, hebt u zowel een versleuteld PDF-document als de persoonlijke sleutel nodig die overeenkomt met de sleutel waarmee het PDF-document is versleuteld. De aliaswaarde van de persoonlijke sleutel wordt opgegeven wanneer op een certificaat gebaseerde versleuteling wordt verwijderd uit een versleuteld PDF-document. Voor informatie over de openbare sleutel, zie PDF-documenten versleutelen met certificaten.
Het PDF-document opslaan
Nadat op een certificaat gebaseerde versleuteling is verwijderd uit een versleuteld PDF-document, kunt u het PDF-document opslaan als een PDF-bestand. Gebruikers kunnen het PDF-document openen in Adobe Reader of Acrobat.
Zie ook
Op certificaten gebaseerde codering verwijderen met de Java API
Op certificaten gebaseerde versleuteling verwijderen met de webservice-API
Inclusief AEM Forms Java-bibliotheekbestanden
Verbindingseigenschappen instellen
API voor coderingsservice - Snel aan de slag
Op certificaten gebaseerde codering verwijderen met de Java API remove-certificate-based-encryption-using-the-java-api
Verwijder op een certificaat gebaseerde versleuteling uit een PDF-document met de API voor versleuteling (Java):
-
Inclusief projectbestanden.
Neem JAR-bestanden van de client, zoals adobe-encryption-client.jar, op in het klassenpad van uw Java-project.
-
Maak een versleutelingsserviceclient.
- Een
ServiceClientFactoryobject dat verbindingseigenschappen bevat. - Een
EncryptionServiceClientobject door de constructor ervan te gebruiken en door te gevenServiceClientFactoryobject.
- Een
-
Hiermee wordt het gecodeerde PDF-document opgehaald.
- Een
java.io.FileInputStreameen object dat het gecodeerde PDF-document vertegenwoordigt met de constructor ervan en een tekenreekswaarde doorgeeft die de locatie van het gecodeerde PDF-document aangeeft. - Een
com.adobe.idp.Documentobject door de constructor ervan te gebruiken en door te gevenjava.io.FileInputStreamobject.
- Een
-
Versleuteling verwijderen.
Verwijder op certificaat-gebaseerde encryptie uit het document van de PDF door aan te halen
EncryptionServiceClientobjectremovePDFCertificateSecurityen geeft de volgende waarden door:- De
com.adobe.idp.Documentobject dat het gecodeerde PDF-document bevat. - Een tekenreekswaarde die de aliasnaam van de persoonlijke sleutel opgeeft die overeenkomt met de sleutel die wordt gebruikt om het PDF-document te versleutelen.
De
removePDFCertificateSecuritymethode retourneert eencom.adobe.idp.Documentobject dat een onbeveiligd PDF-document bevat. - De
-
Sla het PDF-document op.
- Een
java.io.Fileen zorg dat de bestandsextensie .pdf is. - De
com.adobe.idp.DocumentobjectcopyToFilemethode om de inhoud van deDocumentnaar het bestand. Zorg ervoor dat u decom.adobe.idp.Documentobject dat is geretourneerd door deremovePDFCredentialSecuritymethode.
- Een
Zie ook
Snel starten (SOAP-modus): Op certificaten gebaseerde codering verwijderen met de Java API
Inclusief AEM Forms Java-bibliotheekbestanden
Verbindingseigenschappen instellen
Op certificaten gebaseerde versleuteling verwijderen met de webservice-API remove-certificate-based-encryption-using-the-web-service-api
Verwijder op een certificaat gebaseerde codering met de API voor codering (webservice):
-
Inclusief projectbestanden.
Creeer een Microsoft .NET project dat MTOM gebruikt. Zorg ervoor dat u de volgende definitie van WSDL gebruikt:
http://localhost:8080/soap/services/EncryptionService?WSDL&lc_version=9.0.1.note note NOTE Vervangen localhostmet het IP-adres van de server die als host fungeert voor AEM Forms. -
Maak een versleutelingsserviceclient.
-
Een
EncryptionServiceClientobject met de standaardconstructor. -
Een
EncryptionServiceClient.Endpoint.Addressobject gebruikenSystem.ServiceModel.EndpointAddressconstructor. Geef een tekenreekswaarde die de WSDL opgeeft door aan de AEM Forms-service (bijvoorbeeldhttp://localhost:8080/soap/services/EncryptionService?WSDL.) U hoeft delc_versionkenmerk. Dit kenmerk wordt gebruikt wanneer u een serviceverwijzing maakt.) -
Een
System.ServiceModel.BasicHttpBindingobject door de waarde van het object op te halenEncryptionServiceClient.Endpoint.Bindingveld. De geretourneerde waarde omzetten inBasicHttpBinding. -
Stel de
System.ServiceModel.BasicHttpBindingobjectMessageEncodingveld naarWSMessageEncoding.Mtom. Deze waarde zorgt ervoor dat MTOM wordt gebruikt. -
Laat basisauthentificatie van HTTP door de volgende taken uit te voeren toe:
- Wijs de gebruikersnaam van het AEM aan het veld toe
EncryptionServiceClient.ClientCredentials.UserName.UserName. - De bijbehorende wachtwoordwaarde aan het veld toewijzen
EncryptionServiceClient.ClientCredentials.UserName.Password. - De constante waarde toewijzen
HttpClientCredentialType.Basicnaar het veldBasicHttpBindingSecurity.Transport.ClientCredentialType. - De constante waarde toewijzen
BasicHttpSecurityMode.TransportCredentialOnlynaar het veldBasicHttpBindingSecurity.Security.Mode.
- Wijs de gebruikersnaam van het AEM aan het veld toe
-
-
Hiermee wordt het gecodeerde PDF-document opgehaald.
- Een
BLOBobject met behulp van de constructor. DeBLOBwordt gebruikt om het versleutelde PDF-document op te slaan. - Een
System.IO.FileStreamdoor de constructor ervan aan te roepen en een tekenreekswaarde door te geven die de bestandslocatie van het gecodeerde PDF-document en de modus waarin het bestand moet worden geopend, vertegenwoordigt. - Maak een bytearray waarin de inhoud van de
System.IO.FileStreamobject. U kunt de grootte van de bytearray bepalen door deSystem.IO.FileStreamobjectLengtheigenschap. - De bytearray vullen met streamgegevens door de
System.IO.FileStreamobjectReaden geeft u de bytearray, de startpositie en de streamlengte door die u wilt lezen. - Vul de
BLOBobject door de inhoud van de bytearray toe te wijzen aan deBLOBobjectMTOMlid.
- Een
-
Versleuteling verwijderen.
De
EncryptionServiceClientobjectremovePDFCertificateSecurityen geeft de volgende waarden door:- De
BLOBobject dat bestandsstreamgegevens bevat die een gecodeerd PDF-document vertegenwoordigen. - Een tekenreekswaarde die de aliasnaam van de openbare sleutel opgeeft die overeenkomt met de persoonlijke sleutel die wordt gebruikt om het PDF-document te versleutelen.
De
removePDFCredentialSecuritymethode retourneert eenBLOBobject dat een onbeveiligd PDF-document bevat. - De
-
Sla het PDF-document op.
- Een
System.IO.FileStreamdoor de constructor ervan aan te roepen en een tekenreekswaarde door te geven die de bestandslocatie van het onbeveiligde PDF-document vertegenwoordigt. - Maak een bytearray waarin de inhoud van de
BLOBobject dat is geretourneerd door deremovePDFPasswordSecuritymethode. Vul de bytearray met de waarde van deBLOBobjectMTOMlid. - Een
System.IO.BinaryWriterobject door de constructor aan te roepen en deSystem.IO.FileStreamobject. - Schrijf de inhoud van de bytearray naar een PDF-bestand door het
System.IO.BinaryWriterobjectWriteen geeft u de bytearray door.
- Een
Zie ook
AEM Forms aanroepen met SwaRef
Wachtwoordversleuteling verwijderen removing-password-encryption
Op wachtwoord gebaseerde versleuteling kan uit een PDF-document worden verwijderd, zodat gebruikers het PDF-document in Adobe Reader of Acrobat kunnen openen zonder een wachtwoord op te geven. Nadat op een wachtwoord gebaseerde versleuteling is verwijderd uit een PDF-document, is het document niet meer beveiligd.
Overzicht van de stappen summary_of_steps-3
Voer de volgende stappen uit om op een wachtwoord gebaseerde versleuteling te verwijderen uit een PDF-document:
- Projectbestanden opnemen
- Maak een versleutelingsserviceclient.
- Hiermee wordt het gecodeerde PDF-document opgehaald.
- Verwijder het wachtwoord.
- Sla het PDF-document op als een PDF-bestand.
Projectbestanden opnemen
Neem de benodigde bestanden op in uw ontwikkelingsproject. Als u een clienttoepassing maakt met Java, neemt u de benodigde JAR-bestanden op. Als u webservices gebruikt, moet u de proxybestanden opnemen.
De volgende JAR-bestanden moeten worden toegevoegd aan het klassepad van uw project:
- adobe-livecycle-client.jar
- adobe-usermanager-client.jar
- adobe-encryption-client.jar
- adobe-utilities.jar (vereist als AEM Forms wordt geïmplementeerd op JBoss)
- jbossall-client.jar (vereist als AEM Forms wordt geïmplementeerd op JBoss)
Een coderingsserviceclient maken
Om programmatically een de dienstverrichting van de Encryptie uit te voeren, moet u een de dienstcliënt van de Encryptie tot stand brengen. Als u de Java Encryption Service API gebruikt, maakt u een EncrytionServiceClient object. Als u de webservice-API gebruikt, maakt u een EncryptionServiceService object.
Het versleutelde PDF-document ophalen
U moet een gecodeerd PDF-document verkrijgen om op een wachtwoord gebaseerde versleuteling te verwijderen. Als u probeert versleuteling te verwijderen uit een niet-versleuteld PDF-document, wordt een uitzondering gegenereerd.
Het wachtwoord verwijderen
Om op wachtwoord-gebaseerde encryptie uit een gecodeerd document van de PDF te verwijderen, vereist u zowel een gecodeerd document van de PDF als een master wachtwoordwaarde die wordt gebruikt om encryptie uit het document van de PDF te verwijderen. Het wachtwoord waarmee een met wachtwoord gecodeerd PDF-document wordt geopend, kan niet worden gebruikt om versleuteling te verwijderen. Er wordt een master wachtwoord opgegeven wanneer het PDF-document met een wachtwoord is versleuteld. (Zie PDF-documenten versleutelen met een wachtwoord.)
Het PDF-document opslaan
Nadat de coderingsservice op wachtwoord gebaseerde codering uit een PDF-document heeft verwijderd, kunt u het PDF-document opslaan als een PDF-bestand. Gebruikers kunnen het PDF-document openen in Adobe Reader of Acrobat zonder een wachtwoord op te geven.
Zie ook
Inclusief AEM Forms Java-bibliotheekbestanden
Verbindingseigenschappen instellen
API voor coderingsservice - Snel aan de slag
PDF-documenten versleutelen met een wachtwoord
Op wachtwoorden gebaseerde codering verwijderen met de Java API remove-password-based-encryption-using-the-java-api
Verwijder op wachtwoord gebaseerde codering uit een PDF-document met behulp van de API voor codering (Java):
-
Inclusief projectbestanden.
Neem JAR-bestanden van de client, zoals adobe-encryption-client.jar, op in het klassenpad van uw Java-project.
-
Maak een versleutelingsserviceclient.
- Een
ServiceClientFactoryobject dat verbindingseigenschappen bevat. - Een
EncryptionServiceClientobject door de constructor ervan te gebruiken en door te gevenServiceClientFactoryobject.
- Een
-
Hiermee wordt het gecodeerde PDF-document opgehaald.
- Een
java.io.FileInputStreameen object dat het gecodeerde PDF-document vertegenwoordigt met de constructor ervan en een tekenreekswaarde doorgeeft die de locatie van het PDF-document aangeeft. - Een
com.adobe.idp.Documentobject door de constructor ervan te gebruiken en door te gevenjava.io.FileInputStreamobject.
- Een
-
Verwijder het wachtwoord.
Verwijder op wachtwoord-gebaseerde encryptie uit het document van de PDF door aan te halen
EncryptionServiceClientobjectremovePDFPasswordSecurityen geeft de volgende waarden door:- A
com.adobe.idp.Documentobject dat het gecodeerde PDF-document bevat. - Een tekenreekswaarde die de master wachtwoordwaarde opgeeft die wordt gebruikt om versleuteling te verwijderen uit het PDF-document.
De
removePDFPasswordSecuritymethode retourneert eencom.adobe.idp.Documentobject dat een onbeveiligd PDF-document bevat. - A
-
Sla het PDF-document op.
- Een
java.io.Fileen zorg ervoor dat de bestandsnaamextensie .pdf is. - De
com.adobe.idp.DocumentobjectcopyToFilemethode om de inhoud van deDocumentnaar het bestand. Zorg ervoor dat u deDocumentobject dat is geretourneerd door deremovePDFPasswordSecuritymethode.
- Een
Zie ook
Snel starten (SOAP-modus): Op wachtwoorden gebaseerde codering verwijderen met de Java API
Op wachtwoorden gebaseerde codering verwijderen met de webservice-API remove-password-based-encryption-using-the-web-service-api
Verwijder op wachtwoord gebaseerde codering met de API voor codering (webservice):
-
Inclusief projectbestanden.
Creeer een Microsoft .NET project dat MTOM gebruikt. Zorg ervoor dat u de volgende definitie van WSDL gebruikt:
http://localhost:8080/soap/services/EncryptionService?WSDL&lc_version=9.0.1.note note NOTE Vervangen localhostmet het IP-adres van de server die als host fungeert voor AEM Forms. -
Maak een versleutelingsserviceclient.
-
Een
EncryptionServiceClientobject met de standaardconstructor. -
Een
EncryptionServiceClient.Endpoint.Addressobject gebruikenSystem.ServiceModel.EndpointAddressconstructor. Geef een tekenreekswaarde die de WSDL opgeeft door aan de AEM Forms-service (bijvoorbeeldhttp://localhost:8080/soap/services/EncryptionService?WSDL.) U hoeft delc_versionkenmerk. Dit kenmerk wordt gebruikt wanneer u een serviceverwijzing maakt.) -
Een
System.ServiceModel.BasicHttpBindingobject door de waarde van het object op te halenEncryptionServiceClient.Endpoint.Bindingveld. De geretourneerde waarde omzetten inBasicHttpBinding. -
Stel de
System.ServiceModel.BasicHttpBindingobjectMessageEncodingveld naarWSMessageEncoding.Mtom. Deze waarde zorgt ervoor dat MTOM wordt gebruikt. -
Laat basisauthentificatie van HTTP door de volgende taken uit te voeren toe:
- Wijs de gebruikersnaam van het AEM aan het veld toe
EncryptionServiceClient.ClientCredentials.UserName.UserName. - De bijbehorende wachtwoordwaarde aan het veld toewijzen
EncryptionServiceClient.ClientCredentials.UserName.Password. - De constante waarde toewijzen
HttpClientCredentialType.Basicnaar het veldBasicHttpBindingSecurity.Transport.ClientCredentialType. - De constante waarde toewijzen
BasicHttpSecurityMode.TransportCredentialOnlynaar het veldBasicHttpBindingSecurity.Security.Mode.
- Wijs de gebruikersnaam van het AEM aan het veld toe
-
-
Hiermee wordt het gecodeerde PDF-document opgehaald.
- Een
BLOBobject met behulp van de constructor. DeBLOB-object wordt gebruikt om een met wachtwoord gecodeerd PDF-document op te slaan. - Een
System.IO.FileStreamdoor de constructor ervan aan te roepen en een tekenreekswaarde door te geven die de bestandslocatie van het gecodeerde PDF-document en de modus waarin het bestand moet worden geopend, vertegenwoordigt. - Maak een bytearray waarin de inhoud van de
System.IO.FileStreamobject. U kunt de grootte van de bytearray bepalen door deSystem.IO.FileStreamobjectLengtheigenschap. - De bytearray vullen met streamgegevens door de
System.IO.FileStreamobjectReaden geeft u de bytearray, de startpositie en de streamlengte door die u wilt lezen. - Vul de
BLOBobject door de inhoud van de bytearray toe te wijzen aan deBLOBobjectMTOMlid.
- Een
-
Verwijder het wachtwoord.
De
EncryptionServiceServiceobjectremovePDFPasswordSecurityen geeft de volgende waarden door:- De
BLOBobject dat bestandsstreamgegevens bevat die een gecodeerd PDF-document vertegenwoordigen. - Een tekenreekswaarde die de wachtwoordwaarde opgeeft die wordt gebruikt om versleuteling te verwijderen uit het PDF-document. Deze waarde wordt opgegeven wanneer het PDF-document met een wachtwoord wordt gecodeerd.
De
removePDFPasswordSecuritymethode retourneert eenBLOBobject dat een onbeveiligd PDF-document bevat. - De
-
Sla het PDF-document op.
- Een
System.IO.FileStreamdoor de constructor ervan aan te roepen en een tekenreekswaarde door te geven die de bestandslocatie van het onbeveiligde PDF-document vertegenwoordigt. - Maak een bytearray waarin de inhoud van de
BLOBobject dat is geretourneerd door deremovePDFPasswordSecuritymethode. Vul de bytearray met de waarde van deBLOBobjectMTOMlid. - Een
System.IO.BinaryWriterobject door de constructor aan te roepen en deSystem.IO.FileStreamobject. - Schrijf de inhoud van de bytearray naar een PDF-bestand door het
System.IO.BinaryWriterobjectWriteen geeft u de bytearray door.
- Een
Zie ook
AEM Forms aanroepen met SwaRef
Versleutelde PDF-documenten ontgrendelen unlocking-encrypted-pdf-documents
Een met wachtwoord gecodeerd of met een certificaat gecodeerd PDF-document moet worden ontgrendeld voordat een andere AEM Forms-bewerking kan worden uitgevoerd. Als u een bewerking probeert uit te voeren op een gecodeerd PDF-document, wordt een uitzondering gegenereerd. Nadat u een gecodeerd PDF-document hebt ontgrendeld, kunt u er een of meer bewerkingen op uitvoeren. Deze bewerkingen kunnen tot andere services behoren, zoals de Acrobat Reader DC Extension Service.
Overzicht van de stappen summary_of_steps-4
Voer de volgende stappen uit om een gecodeerd PDF-document te ontgrendelen:
- Inclusief projectbestanden.
- Maak een versleutelingsserviceclient.
- Hiermee wordt het gecodeerde PDF-document opgehaald.
- Ontgrendel het document.
- Voer een AEM Forms-bewerking uit.
Projectbestanden opnemen
Neem de benodigde bestanden op in uw ontwikkelingsproject. Als u een clienttoepassing maakt met Java, neemt u de benodigde JAR-bestanden op. Als u webservices gebruikt, moet u de proxybestanden opnemen.
De volgende JAR-bestanden moeten worden toegevoegd aan het klassepad van uw project:
- adobe-livecycle-client.jar
- adobe-usermanager-client.jar
- adobe-encryption-client.jar
- adobe-utilities.jar (vereist als AEM Forms wordt geïmplementeerd op JBoss Application Server)
- jbossall-client.jar (vereist als AEM Forms wordt geïmplementeerd op JBoss Application Server)
Een coderingsserviceclient maken
Om programmatically een de dienstverrichting van de Encryptie uit te voeren, moet u een de dienstcliënt van de Encryptie tot stand brengen. Als u de Java Encryption Service API gebruikt, maakt u een EncrytionServiceClient object. Als u de webservice-API gebruikt, maakt u een EncryptionServiceService object.
Het versleutelde PDF-document ophalen
U moet een versleuteld PDF-document verkrijgen om het te ontgrendelen. Als u probeert een PDF-document te ontgrendelen dat niet is versleuteld, wordt een uitzondering gegenereerd.
Het document ontgrendelen
Als u een met een wachtwoord gecodeerd PDF-document wilt ontgrendelen, hebt u zowel een versleuteld PDF-document als een wachtwoordwaarde nodig om een met een wachtwoord gecodeerd PDF-document te openen. Deze waarde wordt opgegeven wanneer het PDF-document met een wachtwoord wordt gecodeerd. (Zie PDF-documenten versleutelen met een wachtwoord.)
Als u een met een certificaat gecodeerd PDF-document wilt ontgrendelen, hebt u zowel een versleuteld PDF-document als de aliaswaarde van de openbare sleutel nodig die overeenkomt met de persoonlijke sleutel waarmee het PDF-document is versleuteld.
AEM Forms-bewerkingen uitvoeren
Nadat een gecodeerd PDF-document is ontgrendeld, kunt u er een andere servicebewerking op uitvoeren, zoals gebruiksrechten op toepassen. Deze bewerking behoort tot de Acrobat Reader DC Extensions-service.
Zie ook
Een versleuteld PDF-document ontgrendelen met de Java API
Een gecodeerd PDF-document ontgrendelen met de webservice-API
Inclusief AEM Forms Java-bibliotheekbestanden
Verbindingseigenschappen instellen
API voor coderingsservice - Snel aan de slag
Een versleuteld PDF-document ontgrendelen met de Java API unlock-an-encrypted-pdf-document-using-the-java-api
Een gecodeerd PDF-document ontgrendelen met de API voor versleuteling (Java):
-
Inclusief projectbestanden.
Neem JAR-bestanden van de client, zoals adobe-encryption-client.jar, op in het klassenpad van uw Java-project.
-
Maak een versleutelingsserviceclient.
- Een
ServiceClientFactoryobject dat verbindingseigenschappen bevat. - Een
EncryptionServiceClientobject door de constructor ervan te gebruiken en door te gevenServiceClientFactoryobject.
- Een
-
Hiermee wordt het gecodeerde PDF-document opgehaald.
- Een
java.io.FileInputStreameen object dat het gecodeerde PDF-document vertegenwoordigt met de constructor ervan en een tekenreekswaarde doorgeeft die de locatie van het gecodeerde PDF-document aangeeft. - Een
com.adobe.idp.Documentobject door de constructor ervan te gebruiken en door te gevenjava.io.FileInputStreamobject.
- Een
-
Ontgrendel het document.
Een versleuteld PDF-document ontgrendelen door het
EncryptionServiceClientobjectunlockPDFUsingPasswordofunlockPDFUsingCredentialmethode.Als u een PDF-document wilt ontgrendelen dat met een wachtwoord is versleuteld, roept u de opdracht
unlockPDFUsingPassworden geeft de volgende waarden door:- A
com.adobe.idp.Document-object dat het met wachtwoord gecodeerde PDF-document bevat. - Een tekenreekswaarde die de wachtwoordwaarde opgeeft waarmee een met wachtwoord gecodeerd PDF-document wordt geopend. Deze waarde wordt opgegeven wanneer het PDF-document met een wachtwoord wordt gecodeerd.
Als u een PDF-document wilt ontgrendelen dat met een certificaat is versleuteld, roept u de opdracht
unlockPDFUsingCredentialen geeft de volgende waarden door:- A
com.adobe.idp.Document-object dat het met een certificaat gecodeerde PDF-document bevat. - Een tekenreekswaarde die de aliasnaam van de openbare sleutel opgeeft die overeenkomt met de persoonlijke sleutel die wordt gebruikt om het PDF-document te versleutelen.
De
unlockPDFUsingPasswordenunlockPDFUsingCredentialmethoden retourneren beide eencom.adobe.idp.Document-object dat u doorgeeft aan een andere AEM Forms Java-methode om een bewerking uit te voeren. - A
-
Voer een AEM Forms-bewerking uit.
Voer een AEM Forms-bewerking uit op het ontgrendelde PDF-document om aan uw zakelijke vereisten te voldoen. Als u bijvoorbeeld gebruiksrechten wilt toepassen op een ontgrendeld PDF-document, geeft u de opdracht
com.adobe.idp.Documentobject dat is geretourneerd door een van deunlockPDFUsingPasswordofunlockPDFUsingCredentialaan deReaderExtensionsServiceClientobjectapplyUsageRightsmethode.
Zie ook
Snel starten (SOAP-modus): Een versleuteld PDF-document ontgrendelen met de Java API (SOAP-modus)
Gebruiksrechten toepassen op PDF-documenten
Inclusief AEM Forms Java-bibliotheekbestanden
Verbindingseigenschappen instellen
Een gecodeerd PDF-document ontgrendelen met de webservice-API unlock-an-encrypted-pdf-document-using-the-web-service-api
Een gecodeerd PDF-document ontgrendelen met de API voor versleuteling (webservice):
-
Inclusief projectbestanden.
Creeer een Microsoft .NET project dat MTOM gebruikt. Zorg ervoor dat u de volgende definitie van WSDL gebruikt:
http://localhost:8080/soap/services/EncryptionService?WSDL&lc_version=9.0.1.note note NOTE Vervangen localhostmet het IP-adres van de server die als host fungeert voor AEM Forms. -
Maak een versleutelingsserviceclient.
-
Een
EncryptionServiceClientobject met de standaardconstructor. -
Een
EncryptionServiceClient.Endpoint.Addressobject gebruikenSystem.ServiceModel.EndpointAddressconstructor. Geef een tekenreekswaarde die de WSDL opgeeft door aan de AEM Forms-service (bijvoorbeeldhttp://localhost:8080/soap/services/EncryptionService?WSDL.) U hoeft delc_versionkenmerk. Dit kenmerk wordt gebruikt wanneer u een serviceverwijzing maakt.) -
Een
System.ServiceModel.BasicHttpBindingobject door de waarde van het object op te halenEncryptionServiceClient.Endpoint.Bindingveld. De geretourneerde waarde omzetten inBasicHttpBinding. -
Stel de
System.ServiceModel.BasicHttpBindingobjectMessageEncodingveld naarWSMessageEncoding.Mtom. Deze waarde zorgt ervoor dat MTOM wordt gebruikt. -
Laat basisauthentificatie van HTTP door de volgende taken uit te voeren toe:
- Wijs de gebruikersnaam van het AEM aan het veld toe
EncryptionServiceClient.ClientCredentials.UserName.UserName. - De bijbehorende wachtwoordwaarde aan het veld toewijzen
EncryptionServiceClient.ClientCredentials.UserName.Password. - De constante waarde toewijzen
HttpClientCredentialType.Basicnaar het veldBasicHttpBindingSecurity.Transport.ClientCredentialType. - De constante waarde toewijzen
BasicHttpSecurityMode.TransportCredentialOnlynaar het veldBasicHttpBindingSecurity.Security.Mode.
- Wijs de gebruikersnaam van het AEM aan het veld toe
-
-
Hiermee wordt een versleuteld PDF-document opgehaald.
- Een
BLOBobject met behulp van de constructor. - Een
System.IO.FileStreamdoor de constructor ervan aan te roepen en een tekenreekswaarde door te geven die de bestandslocatie van het gecodeerde PDF-document en de modus waarin het bestand moet worden geopend, vertegenwoordigt. - Maak een bytearray waarin de inhoud van de
System.IO.FileStreamobject. U kunt de grootte van de bytearray bepalen door deSystem.IO.FileStreamobjectLengtheigenschap. - De bytearray vullen met streamgegevens door de
System.IO.FileStreamobjectReaden geeft u de bytearray, de startpositie en de streamlengte door die u wilt lezen. - Vul de
BLOBobject door de inhoud van de bytearray toe te wijzen aan deBLOBobjectMTOMlid.
- Een
-
Ontgrendel het document.
Een versleuteld PDF-document ontgrendelen door het
EncryptionServiceClientobjectunlockPDFUsingPasswordofunlockPDFUsingCredentialmethode.Als u een PDF-document wilt ontgrendelen dat met een wachtwoord is versleuteld, roept u de opdracht
unlockPDFUsingPassworden geeft de volgende waarden door:- A
BLOB-object dat het met wachtwoord gecodeerde PDF-document bevat. - Een tekenreekswaarde die de wachtwoordwaarde opgeeft waarmee een met wachtwoord gecodeerd PDF-document wordt geopend. Deze waarde wordt opgegeven wanneer het PDF-document met een wachtwoord wordt gecodeerd.
Als u een PDF-document wilt ontgrendelen dat met een certificaat is versleuteld, roept u de opdracht
unlockPDFUsingCredentialen geeft de volgende waarden door:- A
BLOB-object dat het met een certificaat gecodeerde PDF-document bevat. - Een tekenreekswaarde die de aliasnaam van de openbare sleutel opgeeft die overeenkomt met de persoonlijke sleutel die wordt gebruikt om het PDF-document te versleutelen.
De
unlockPDFUsingPasswordenunlockPDFUsingCredentialmethoden retourneren beide eencom.adobe.idp.Document-object dat u doorgeeft aan een andere AEM Forms-methode om een bewerking uit te voeren. - A
-
Voer een AEM Forms-bewerking uit.
Voer een AEM Forms-bewerking uit op het ontgrendelde PDF-document om aan uw zakelijke vereisten te voldoen. Als u bijvoorbeeld gebruiksrechten wilt toepassen op het ontgrendelde PDF-document, geeft u de opdracht
BLOBobject dat is geretourneerd door een van deunlockPDFUsingPasswordofunlockPDFUsingCredentialaan deReaderExtensionsServiceClientobjectapplyUsageRightsmethode.
Zie ook
AEM Forms aanroepen met SwaRef
Type codering bepalen determining-encryption-type
U kunt programmatically het type van encryptie bepalen die een document van PDF door de Dienst API van de Encryptie van Java of de Dienst API van de Encryptie van de Webdienst te gebruiken beschermt. Soms is het nodig dynamisch te bepalen of een PDF-document is versleuteld en, zo ja, het versleutelingstype. U kunt bijvoorbeeld bepalen of een PDF-document is beveiligd met op een wachtwoord gebaseerde codering of met een beleid voor Rights Managementen.
Een PDF-document kan worden beveiligd door de volgende coderingstypen:
- Codering op basis van wachtwoord
- Op een certificaat gebaseerde codering
- Een beleid dat door de dienst van het Rights Management wordt gecreeerd
- Een ander type codering
Overzicht van de stappen summary_of_steps-5
Ga als volgt te werk om te bepalen welk type codering een PDF-document beveiligt:
- Inclusief projectbestanden.
- Maak een versleutelingsserviceclient.
- Hiermee wordt het gecodeerde PDF-document opgehaald.
- Bepaal het versleutelingstype.
Projectbestanden opnemen
Neem de benodigde bestanden op in uw ontwikkelingsproject. Als u een clienttoepassing maakt met Java, neemt u de benodigde JAR-bestanden op. Als u webservices gebruikt, dient u de proxybestanden op te nemen.
De volgende JAR-bestanden moeten worden toegevoegd aan het klassepad van uw project:
- adobe-livecycle-client.jar
- adobe-usermanager-client.jar
- adobe-encryption-client.jar
- adobe-utilities.jar (vereist als AEM Forms wordt geïmplementeerd op JBoss Application Server)
- jbossall-client.jar (vereist als AEM Forms wordt geïmplementeerd op JBoss Application Server)
Een serviceclient maken
Om programmatically een de dienstverrichting van de Encryptie uit te voeren, moet u een de dienstcliënt van de Encryptie tot stand brengen. Als u de Java Encryption Service API gebruikt, maakt u een EncrytionServiceClient object. Als u de webservice-API gebruikt, maakt u een EncryptionServiceService object.
Het versleutelde PDF-document ophalen
U moet een document van de PDF verkrijgen om het type van encryptie te bepalen dat het beschermt.
Het versleutelingstype bepalen
U kunt bepalen welk type versleuteling een PDF-document beveiligt. Als het PDF-document niet is beveiligd, geeft de coderingsservice aan dat het PDF-document niet is beveiligd.
Zie ook
Het versleutelingstype bepalen met de Java API
Het versleutelingstype bepalen met de webservice-API
Inclusief AEM Forms Java-bibliotheekbestanden
Verbindingseigenschappen instellen
API voor coderingsservice - Snel aan de slag
Documenten beveiligen met beleid
Het versleutelingstype bepalen met de Java API determine-the-encryption-type-using-the-java-api
Bepaal het type codering waarmee een PDF-document wordt beveiligd met de API voor versleuteling (Java):
-
Inclusief projectbestanden.
Neem JAR-bestanden van de client, zoals adobe-encryption-client.jar, op in het klassenpad van uw Java-project.
-
Maak een serviceclient.
- Een
ServiceClientFactoryobject dat verbindingseigenschappen bevat. - Een
EncryptionServiceClientobject door de constructor ervan te gebruiken en door te gevenServiceClientFactoryobject.
- Een
-
Hiermee wordt het gecodeerde PDF-document opgehaald.
- Een
java.io.FileInputStream-object dat het PDF-document vertegenwoordigt door de constructor ervan te gebruiken en een tekenreekswaarde door te geven die de locatie van het PDF-document aangeeft. - Een
com.adobe.idp.Documentobject door de constructor ervan te gebruiken en door te gevenjava.io.FileInputStreamobject.
- Een
-
Bepaal het versleutelingstype.
- Bepaal het encryptietype door het roepen van
EncryptionServiceClientobjectgetPDFEncryptionen het doorgeven van decom.adobe.idp.Documentobject dat het PDF-document bevat. Deze methode retourneert eenEncryptionTypeResultobject. - De
EncryptionTypeResultobjectgetEncryptionTypemethode. Deze methode retourneert eenEncryptionTypeenum waarde die het encryptietype specificeert. Als het PDF-document bijvoorbeeld is beveiligd met op een wachtwoord gebaseerde codering, retourneert deze methodeEncryptionType.PASSWORD.
- Bepaal het encryptietype door het roepen van
Zie ook
Snel starten (SOAP-modus): Coderingstype bepalen met de Java API
Inclusief AEM Forms Java-bibliotheekbestanden
Verbindingseigenschappen instellen
Het versleutelingstype bepalen met de webservice-API determine-the-encryption-type-using-the-web-service-api
Bepaal het type codering waarmee een PDF-document wordt beveiligd met de API voor versleuteling (webservice):
-
Inclusief projectbestanden.
Creeer een Microsoft .NET project dat MTOM gebruikt. Zorg ervoor dat u de volgende definitie van WSDL gebruikt:
http://localhost:8080/soap/services/EncryptionService?WSDL&lc_version=9.0.1.note note NOTE Vervangen localhostmet het IP-adres van de server die als host fungeert voor AEM Forms. -
Maak een serviceclient.
-
Een
EncryptionServiceClientobject met de standaardconstructor. -
Een
EncryptionServiceClient.Endpoint.Addressobject gebruikenSystem.ServiceModel.EndpointAddressconstructor. Geef een tekenreekswaarde die de WSDL opgeeft door aan de AEM Forms-service (bijvoorbeeldhttp://localhost:8080/soap/services/EncryptionService?WSDL.) U hoeft delc_versionkenmerk. Dit kenmerk wordt gebruikt wanneer u een serviceverwijzing maakt.) -
Een
System.ServiceModel.BasicHttpBindingobject door de waarde van het object op te halenEncryptionServiceClient.Endpoint.Bindingveld. De geretourneerde waarde omzetten inBasicHttpBinding. -
Stel de
System.ServiceModel.BasicHttpBindingobjectMessageEncodingveld naarWSMessageEncoding.Mtom. Deze waarde zorgt ervoor dat MTOM wordt gebruikt. -
Laat basisauthentificatie van HTTP door de volgende taken uit te voeren toe:
- Wijs de gebruikersnaam van het AEM aan het veld toe
EncryptionServiceClient.ClientCredentials.UserName.UserName. - De bijbehorende wachtwoordwaarde aan het veld toewijzen
EncryptionServiceClient.ClientCredentials.UserName.Password. - De constante waarde toewijzen
HttpClientCredentialType.Basicnaar het veldBasicHttpBindingSecurity.Transport.ClientCredentialType. - De constante waarde toewijzen
BasicHttpSecurityMode.TransportCredentialOnlynaar het veldBasicHttpBindingSecurity.Security.Mode.
- Wijs de gebruikersnaam van het AEM aan het veld toe
-
-
Hiermee wordt het gecodeerde PDF-document opgehaald.
- Een
BLOBobject met behulp van de constructor. - Een
System.IO.FileStreamdoor de constructor ervan aan te roepen en een tekenreekswaarde door te geven die de bestandslocatie van het gecodeerde PDF-document en de modus waarin het bestand moet worden geopend, vertegenwoordigt. - Maak een bytearray waarin de inhoud van de
System.IO.FileStreamobject. U kunt de grootte van de bytearray bepalen door deSystem.IO.FileStreamobjectLengtheigenschap. - De bytearray vullen met streamgegevens door de
System.IO.FileStreamobjectReaden geeft u de bytearray, de startpositie en de streamlengte door die u wilt lezen. - Vul de
BLOBobject door de inhoud van de bytearray toe te wijzen aan deBLOBobjectMTOMlid.
- Een
-
Bepaal het versleutelingstype.
- De
EncryptionServiceClientobjectgetPDFEncryptionen geeft deBLOBobject dat het PDF-document bevat. Deze methode retourneert eenEncryptionTypeResultobject. - Hiermee wordt de waarde van de opdracht
EncryptionTypeResultobjectencryptionTypegegevensmethode. Als het PDF-document bijvoorbeeld is beveiligd met codering op basis van een wachtwoord, is de waarde van dit gegevenslidEncryptionType.PASSWORD.
- De
Zie ook
AEM Forms aanroepen met SwaRef