Schützen von Dokumenten durch Richtlinien

Die Beispiele in diesem Dokument gelten nur für eine AEM Forms on JEE-Umgebung.

Informationen zum Document Security-Service

Der Document Security-Service ermöglicht es Benutzern, Vertraulichkeitseinstellungen dynamisch auf Adobe PDF-Dokumente anzuwenden und die Kontrolle über die Dokumente zu behalten, unabhängig davon, wie weit sie verteilt werden.

Der Document Security-Service verhindert, dass Informationen über die Reichweite des Benutzers hinweg verteilt werden, indem er es Benutzern ermöglicht, die Kontrolle darüber zu behalten, wie Empfänger das richtliniengeschützte PDF-Dokument verwenden. Benutzer können angeben, wer ein Dokument öffnen kann, einschränken, wie es verwendet werden kann, und das Dokument nach seiner Verteilung überwachen. Benutzer können auch den Zugriff auf ein richtliniengeschütztes Dokument dynamisch steuern und sogar den Zugriff auf das Dokument dynamisch sperren.

Der Document Security-Service schützt auch andere Dateitypen wie Microsoft Word-Dateien (DOC-Dateien). Sie können die Document Security Client-API verwenden, um mit diesen Dateitypen zu arbeiten. Die folgenden Versionen werden unterstützt:

  • Microsoft Office 2003-Dateien (DOC-, XLS-, PPT-Dateien)
  • Microsoft Office 2007-Dateien (DOCX-, XLSX-, PPTX-Dateien)
  • PTC Pro/E-Dateien

In den beiden folgenden Abschnitten wird die Arbeit mit Word-Dokumenten erläutert:

Sie können diese Aufgaben mithilfe des Document Security-Services ausführen:

HINWEIS

Weitere Informationen zum Document Security-Service finden Sie in der Service-Referenz für AEM Forms.

Erstellen von Richtlinien

Sie können Richtlinien programmgesteuert mit der Document Security Java-API oder der Web Service-API erstellen. Eine Richtlinie ist eine Sammlung von Informationen, die Dokumentensicherheitseinstellungen, autorisierte Benutzer und Verwendungsrechte umfasst. Sie können eine beliebige Anzahl von Richtlinien erstellen und speichern, wobei Sie Sicherheitseinstellungen verwenden, die für unterschiedliche Situationen und Benutzer geeignet sind.

Richtlinien ermöglichen Ihnen die Durchführung folgender Aufgaben:

  • Geben Sie die Personen an, die das Dokument öffnen können. Die Empfänger können entweder zu Ihrer Organisation gehören oder externe Personen sein.
  • Geben Sie an, wie Empfänger das Dokument verwenden können. Sie können den Zugriff auf verschiedene Acrobat- und Adobe Reader-Funktionen einschränken. Zu diesen Funktionen gehört die Möglichkeit, Text zu drucken und zu kopieren, das Hinzufügen von Signaturen und das Hinzufügen von Kommentaren zu einem Dokument.
  • Sie können die Zugriffs- und Sicherheitseinstellungen jederzeit ändern, auch nachdem Sie das richtliniengeschützte Dokument verteilt haben.
  • Überwachen Sie die Verwendung des Dokuments nach seiner Verteilung. Sie können sehen, wie das Dokument verwendet wird und wer es verwendet. Sie können beispielsweise feststellen, wann ein Benutzer das Dokument geöffnet hat.

Erstellen einer Richtlinie mithilfe von Web-Services

Wenn Sie eine Richtlinie mithilfe der Webservice-API erstellen, verweisen Sie auf eine bestehende XML-Datei für Portable Document Rights Language (PDRL), die die Richtlinie beschreibt. Richtlinienberechtigungen und der Prinzipal werden im PDRL-Dokument definiert. Das folgende XML-Dokument ist ein Beispiel für ein PDRL-Dokument.

 <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
 <Policy PolicyInstanceVersion="1" PolicyID="5DA3F847-DE76-F9CC-63EA-49A8D59154DE" PolicyCreationTime="2004-08-30T00:02:28.294+00:00" PolicyType="1" PolicySchemaVersion="1.0" PolicyName="SDK Test Policy -4344050357301573237" PolicyDescription="An SDK Test policy" xmlns="https://www.adobe.com/schema/1.0/pdrl">
       <PolicyEntry>
          <ns1:Permission PermissionName="com.adobe.aps.onlineOpen" Access="ALLOW" xmlns:ns1="https://www.adobe.com/schema/1.0/pdrl" xmlns="https://www.adobe.com/schema/1.0/pdrl-ex" />

          <ns2:Permission PermissionName="com.adobe.aps.offlineOpen" Access="ALLOW" xmlns:ns2="https://www.adobe.com/schema/1.0/pdrl" xmlns="https://www.adobe.com/schema/1.0/pdrl-ex" />

          <ns3:Permission PermissionName="com.adobe.aps.pdf.editNotes" Access="ALLOW" xmlns:ns3="https://www.adobe.com/schema/1.0/pdrl" xmlns="https://www.adobe.com/schema/1.0/pdrl-ex" />

          <ns4:Permission PermissionName="com.adobe.aps.pdf.fillAndSign" Access="ALLOW" xmlns:ns4="https://www.adobe.com/schema/1.0/pdrl" xmlns="https://www.adobe.com/schema/1.0/pdrl-ex" />
          <Principal PrincipalNameType="SYSTEM">
             <PrincipalDomain>EDC_SPECIAL</PrincipalDomain>

             <PrincipalName>all_internal_users</PrincipalName>
          </Principal>
       </PolicyEntry>
       <PolicyEntry>
          <ns5:Permission PermissionName="com.adobe.aps.onlineOpen" Access="ALLOW" xmlns:ns5="https://www.adobe.com/schema/1.0/pdrl" xmlns="https://www.adobe.com/schema/1.0/pdrl-ex" />

          <ns6:Permission PermissionName="com.adobe.aps.offlineOpen" Access="ALLOW" xmlns:ns6="https://www.adobe.com/schema/1.0/pdrl" xmlns="https://www.adobe.com/schema/1.0/pdrl-ex" />

          <ns7:Permission PermissionName="com.adobe.aps.pdf.copy" Access="ALLOW" xmlns:ns7="https://www.adobe.com/schema/1.0/pdrl" xmlns="https://www.adobe.com/schema/1.0/pdrl-ex" />

          <ns8:Permission PermissionName="com.adobe.aps.pdf.printLow" Access="ALLOW" xmlns="https://www.adobe.com/schema/1.0/pdrl-ex" xmlns:ns8="https://www.adobe.com/schema/1.0/pdrl" />

          <ns9:Permission PermissionName="com.adobe.aps.policySwitch" Access="ALLOW" xmlns:ns9="https://www.adobe.com/schema/1.0/pdrl" xmlns="https://www.adobe.com/schema/1.0/pdrl-ex" />

          <ns10:Permission PermissionName="com.adobe.aps.revoke" Access="ALLOW" xmlns="https://www.adobe.com/schema/1.0/pdrl-ex" xmlns:ns10="https://www.adobe.com/schema/1.0/pdrl" />

          <ns11:Permission PermissionName="com.adobe.aps.pdf.edit" Access="ALLOW" xmlns:ns11="https://www.adobe.com/schema/1.0/pdrl" xmlns="https://www.adobe.com/schema/1.0/pdrl-ex" />

          <ns12:Permission PermissionName="com.adobe.aps.pdf.editNotes" Access="ALLOW" xmlns:ns12="https://www.adobe.com/schema/1.0/pdrl" xmlns="https://www.adobe.com/schema/1.0/pdrl-ex" />

          <ns13:Permission PermissionName="com.adobe.aps.pdf.fillAndSign" Access="ALLOW" xmlns:ns13="https://www.adobe.com/schema/1.0/pdrl" xmlns="https://www.adobe.com/schema/1.0/pdrl-ex" />

          <ns14:Permission PermissionName="com.adobe.aps.pdf.printHigh" Access="ALLOW" xmlns:ns14="https://www.adobe.com/schema/1.0/pdrl" xmlns="https://www.adobe.com/schema/1.0/pdrl-ex" />

          <Principal PrincipalNameType="SYSTEM">
             <PrincipalDomain>EDC_SPECIAL</PrincipalDomain>

             <PrincipalName>publisher</PrincipalName>
          </Principal>
       </PolicyEntry>

       <OfflineLeasePeriod>
          <Duration>P31D</Duration>
       </OfflineLeasePeriod>

       <AuditSettings isTracked="true" />

       <PolicyValidityPeriod isAbsoluteTime="false">
          <ValidityPeriodRelative>
             <NotBeforeRelative>PT0S</NotBeforeRelative>

             <NotAfterRelative>P20D</NotAfterRelative>
          </ValidityPeriodRelative>
       </PolicyValidityPeriod>
 </Policy>

HINWEIS

Weitere Informationen zum Document Security-Service finden Sie in der Service-Referenz für AEM Forms.

Zusammenfassung der Schritte

Um eine Richtlinie zu erstellen, führen Sie die folgenden Schritte aus:

  1. Schließen Sie Projektdateien ein.
  2. Erstellen Sie ein Document Security-Client-API-Objekt.
  3. Legen Sie die Attribute der Richtlinie fest.
  4. Erstellen Sie einen Richtlinieneintrag.
  5. Registrieren Sie die Richtlinie.

Einschließen von Projektdateien

Schließen Sie die erforderlichen Dateien in Ihr Entwicklungsprojekt ein. Wenn Sie ein Client-Programm mit Java erstellen, schließen Sie die erforderlichen JAR-Dateien ein. Wenn Sie Web-Services verwenden, stellen Sie sicher, dass Sie die Proxy-Dateien einschließen.

Die folgenden JAR-Dateien müssen zum Klassenpfad Ihres Projekts hinzugefügt werden:

  • adobe-rightsmanagement-client.jar
  • namespace.jar (wenn AEM Forms auf JBoss bereitgestellt wird)
  • jaxb-api.jar (wenn AEM Forms auf JBoss bereitgestellt wird)
  • jaxb-impl.jar (wenn AEM Forms auf JBoss bereitgestellt wird)
  • jaxb-libs.jar (wenn AEM Forms auf JBoss bereitgestellt wird)
  • jaxb-xjc.jar (wenn AEM Forms auf JBoss bereitgestellt wird)
  • relaxngDatatype.jar (wenn AEM Forms auf JBoss bereitgestellt wird)
  • xsdlib.jar (wenn AEM Forms auf JBoss bereitgestellt wird)
  • adobe-livecycle-client.jar
  • adobe-usermanager-client.jar
  • adobe-utilities.jar
  • jbossall-client.jar (verwenden Sie eine andere JAR-Datei, wenn AEM Forms nicht auf JBoss bereitgestellt wird)

Informationen zum Speicherort dieser JAR-Dateien finden Sie unter Einbeziehen von AEM Forms-Java-Bibliotheksdateien.

Erstellen eines Document Security-Client-API-Objekts

Bevor Sie einen Document Security Service-Vorgang programmgesteuert durchführen können, erstellen Sie ein Document Security Service-Client-Objekt.

Festlegen der Richtlinienattribute

Legen Sie zum Erstellen einer Richtlinie Richtlinienattribute fest. Ein obligatorisches Attribut ist der Richtlinienname. Richtliniennamen müssen für jeden Richtliniensatz eindeutig sein. Ein Richtliniensatz ist lediglich eine Sammlung von Richtlinien. Es kann zwei Richtlinien mit demselben Namen geben, wenn die Richtlinien zu separaten Richtliniensätzen gehören. Zwei Richtlinien in einem einzigen Richtliniensatz dürfen jedoch nicht denselben Richtliniennamen haben.

Ein weiteres nützliches Attribut, das festgelegt werden kann, ist der Gültigkeitszeitraum. Ein Gültigkeitszeitraum ist der Zeitraum, in dem autorisierte Empfänger auf ein richtliniengeschütztes Dokument zugreifen können. Wenn Sie dieses Attribut nicht festlegen, ist die Richtlinie immer gültig.

Für einen Gültigkeitszeitraum kann eine der folgenden Optionen festgelegt werden:

  • Eine bestimmte Anzahl von Tagen, an denen das Dokument ab der Veröffentlichung des Dokuments verfügbar ist
  • Ein Enddatum, nach dem das Dokument nicht mehr verfügbar ist
  • Ein bestimmter Datumsbereich, für den auf das Dokument zugegriffen werden kann
  • Immer gültig

Sie können einfach nur ein Startdatum angeben, was dazu führt, dass die Richtlinie nach dem Startdatum gültig ist. Wenn Sie nur ein Enddatum angeben, ist die Richtlinie bis zum Enddatum gültig. Es wird jedoch eine Ausnahme ausgelöst, wenn weder ein Start- noch ein Enddatum definiert sind.

Beim Festlegen von Attributen, die zu einer Richtlinie gehören, können Sie auch Verschlüsselungseinstellungen festlegen. Diese Verschlüsselungseinstellungen werden wirksam, wenn die Richtlinie auf ein Dokument angewendet wird. Sie können die folgenden Verschlüsselungswerte festlegen:

  • AES256: Stellt den AES-Verschlüsselungsalgorithmus mit einem 256-Bit-Schlüssel dar.
  • AES128: Stellt den AES-Verschlüsselungsalgorithmus mit einem 128-Bit-Schlüssel dar.
  • NoEncryption: Stellt keine Verschlüsselung dar.

Wenn Sie die Option NoEncryption angeben, können Sie die Option PlaintextMetadata nicht auf false festlegen. Wenn Sie dies versuchen, wird eine Ausnahme ausgelöst.

HINWEIS

Weitere Informationen zu anderen Attributen, die Sie festlegen können, finden Sie unter Beschreibung der Policy-Benutzeroberfläche in der AEM Forms API-Referenz.

Einen Richtlinieneintrag erstellen

Ein Richtlinieneintrag fügt Prinzipale, d. h. Gruppen und Benutzer, sowie Berechtigungen einer Richtlinie hinzu. Eine Richtlinie muss mindestens einen Richtlinieneintrag enthalten. Nehmen Sie beispielsweise an, dass Sie die folgenden Aufgaben ausführen:

  • Erstellen und registrieren Sie einen Richtlinieneintrag, der es einer Gruppe ermöglicht, ein Dokument nur im Online-Modus anzuzeigen, und Empfängern das Kopieren untersagt.
  • Fügen Sie den Richtlinieneintrag der Richtlinie hinzu.
  • Sichern Sie mithilfe von Acrobat ein Dokument mit der Richtlinie.

Diese Aktionen haben zur Folge, dass die Empfänger das Dokument nur online einsehen und nicht kopieren können. Das Dokument bleibt sicher, bis die Sicherheit entfernt wurde.

Richtlinie registrieren

Eine neue Richtlinie muss registriert werden, bevor sie verwendet werden kann. Nachdem Sie eine Richtlinie registriert haben, können Sie sie zum Schutz von Dokumenten verwenden.

Erstellen einer Richtlinie mit der Java-API

Erstellen Sie eine Richtlinie mithilfe der Document Security-API (Java):

  1. Schließen Sie Projektdateien ein.

    Fügen Sie Client-JAR-Dateien wie „adobe-rightsmanagement-client.jar“ in den Klassenpfad Ihres Java-Projekts ein.

  2. Erstellen Sie ein Document Security-Client-API-Objekt.

    • Erstellen Sie ein ServiceClientFactory-Objekt, das Verbindungseigenschaften enthält.
    • Erstellen Sie ein DocumentSecurityClient-Objekt, indem Sie seinen Konstruktor verwenden und das ServiceClientFactory-Objekt übergeben.
  3. Legen Sie die Attribute der Richtlinie fest.

    • Erstellen Sie ein Policy-Objekt, indem Sie die statische createPolicy-Methode des InfomodelObjectFactory-Objekts aufrufen. Diese Methode gibt ein Policy-Objekt zurück.
    • Legen Sie das Namensattribut der Richtlinie fest, indem Sie die setName-Methode des Policy-Objekts aufrufen und ihr einen Zeichenfolgenwert übergeben, der den Richtliniennamen angibt.
    • Legen Sie die Beschreibung der Richtlinie fest, indem Sie die setDescription-Methode des Policy-Objekts aufrufen und ihr einen Zeichenfolgenwert übergeben, der die Beschreibung der Richtlinie enthält.
    • Legen Sie den Richtliniensatz fest, zu dem die neue Richtlinie gehört, indem Sie die setPolicySetName-Methode des Policy-Objekts aufrufen und ihr einen Zeichenfolgenwert übergeben, der den Namen des Richtliniensatzes angibt. (Sie können für diesen Parameter den Wert null angeben, der dazu führt, dass die Richtlinie dem Richtliniensatz Meine Richtlinien hinzugefügt wird.)
    • Erstellen Sie den Gültigkeitszeitraum der Richtlinie, indem Sie die statische createValidityPeriod-Methode des InfomodelObjectFactory-Objekts aufrufen. Diese Methode gibt ein ValidityPeriod-Objekt zurück.
    • Legen Sie die Anzahl der Tage fest, die auf ein richtliniengeschütztes Dokument zugegriffen werden kann, indem Sie die setRelativeExpirationDays-Methode des ValidityPeriod-Objekts aufrufen und ihr einen ganzzahligen Wert übergeben, der die Anzahl der Tage angibt.
    • Legen Sie den Gültigkeitszeitraum der Richtlinie fest, indem Sie die setValidityPeriod-Methode des Policy-Objekts aufrufen und ihr das ValidityPeriod-Objekt übergeben.
  4. Erstellen Sie einen Richtlinieneintrag.

    • Erstellen Sie einen Richtlinieneintrag, indem Sie die statische createPolicyEntry-Methode des InfomodelObjectFactory-Objekts aufrufen. Diese Methode gibt ein PolicyEntry-Objekt zurück.
    • Geben Sie die Berechtigungen der Richtlinie an, indem Sie die statische createPermission-Methode des InfomodelObjectFactory-Objekts aufrufen. Übergeben Sie ein statisches Datenelement, das zur Permission-Schnittstelle gehört, die die Berechtigung darstellt. Diese Methode gibt ein Permission-Objekt zurück. Um beispielsweise die Berechtigung hinzuzufügen, die es Benutzern ermöglicht, Daten aus einem richtliniengeschützten PDF-Dokument zu kopieren, übergeben Sie Permission.COPY. (Wiederholen Sie diesen Schritt für jede hinzuzufügende Berechtigung.)
    • Fügen Sie die Berechtigung zum Richtlinieneintrag hinzu, indem Sie die addPermission-Methode des PolicyEntry-Objekts aufrufen und ihr das Permission-Objekt übergeben. (Wiederholen Sie diesen Schritt für jedes Permission-Objekt, das Sie erstellt haben.)
    • Erstellen Sie den Richtlinienprinzipal, indem Sie die statische createSpecialPrincipal-Methode des InfomodelObjectFactory-Objekts aufrufen. Übergeben Sie ein Datenelement, das zu dem InfomodelObjectFactory-Objekt, das den Prinzipal darstellt, gehört. Diese Methode gibt ein Principal-Objekt zurück. Um beispielsweise den Herausgeber des Dokuments als Prinzipal hinzuzufügen, übergeben Sie InfomodelObjectFactory.PUBLISHER_PRINCIPAL.
    • Fügen Sie den Prinzipal zum Richtlinieneintrag hinzu, indem Sie die setPrincipal-Methode des PolicyEntry-Objekts aufrufen und ihr das Principal-Objekt übergeben.
    • Fügen Sie den Richtlinieneintrag zur Richtlinie hinzu, indem Sie die addPolicyEntry-Methode des Policy-Objekts aufrufen und ihr das PolicyEntry-Objekt übergeben.
  5. Registrieren Sie die Richtlinie.

    • Erstellen Sie ein PolicyManager-Objekt, indem Sie die getPolicyManager-Methode des DocumentSecurityClient-Objekts aufrufen.

    • Registrieren Sie die Richtlinie, indem Sie die registerPolicy-Methode des PolicyManager-Objekts aufrufen und ihr folgende Werte übergeben:

      • Das Policy-Objekt, das die zu registrierende Richtlinie darstellt.
    • Einen Zeichenfolgenwert für den Richtliniensatz, zu dem die Richtlinie gehört.

    Wenn Sie ein innerhalb der Verbindungseinstellungen ein AEM Forms-Administratorkonto verwenden, um das DocumentSecurityClient-Objekt zu erstellen, geben Sie den Namen des Richtliniensatzes an, wenn Sie die Methode registerPolicy aufrufen. Wenn Sie einen Wert null für den Richtliniensatz übergeben, wird die Richtlinie im Richtliniensatz Meine Richtlinien des Administrators erstellt.

    Wenn Sie einen Document Security-Benutzer in den Verbindungseinstellungen verwenden, können Sie die überladene Methode registerPolicy aufrufen, die nur die Richtlinie akzeptiert. Das heißt, Sie müssen den Richtliniensatznamen nicht angeben. Die Richtlinie wird jedoch zu dem Richtliniensatz mit dem Namen Meine Richtlinien hinzugefügt. Wenn Sie die neue Richtlinie nicht zu diesem Richtliniensatz hinzufügen möchten, geben Sie beim Aufrufen der Methode registerPolicy einen Richtliniensatznamen an.

    HINWEIS

    Referenzieren Sie beim Erstellen einer Richtlinie einen bestehenden Richtliniensatz. Wenn Sie einen Richtliniensatz angeben, der nicht vorhanden ist, wird eine Ausnahme ausgelöst.

Code-Beispiele, die den Document Security-Service verwenden, finden Sie unter folgenden Themen:

  • "Schnellstart (SOAP-Modus): Erstellen einer Richtlinie mit der Java-API"

Erstellen einer Richtlinie mithilfe der Webservice-API

So erstellen Sie eine Richtlinie mithilfe der Document Security-API (Webservice):

  1. Schließen Sie Projektdateien ein.

    Erstellen Sie ein Microsoft .NET-Projekt, das MTOM verwendet. Stellen Sie sicher, dass Sie die folgende WSDL-Definition verwenden: http://localhost:8080/soap/services/RightsManagementService?WSDL&lc_version=9.0.1.

    HINWEIS

    Ersetzen Sie localhost durch die IP-Adresse des Servers, auf dem AEM Forms gehostet wird.

  2. Erstellen Sie ein Document Security-Client-API-Objekt.

    • Erstellen Sie ein DocumentSecurityServiceClient-Objekt, indem Sie seinen Standardkonstruktor verwenden.

    • Erstellen Sie ein DocumentSecurityServiceClient.Endpoint.Address-Objekt, indem Sie den Konstruktor System.ServiceModel.EndpointAddress verwenden. Übergeben Sie einen Zeichenfolgenwert, der die WSDL für den AEM Forms-Service angibt (z. B. http://localhost:8080/soap/services/RightsManagementService?WSDL). Sie müssen das lc_version-Attribut nicht verwenden. Dieses Attribut wird verwendet, wenn Sie einen Service-Verweis erstellen.)

    • Erstellen Sie ein System.ServiceModel.BasicHttpBinding-Objekt durch Abrufen des Werts des Felds RightsManagementServiceClient.Endpoint.Binding. Wandeln Sie den Rückgabewert in BasicHttpBinding um.

    • Legen Sie das MessageEncoding-Feld des System.ServiceModel.BasicHttpBinding-Objekts auf WSMessageEncoding.Mtom fest. Dieser Wert stellt sicher, dass MTOM verwendet wird.

    • Aktivieren Sie die einfache HTTP-Authentifizierung, indem Sie die folgenden Schritte ausführen:

      • Weisen Sie dem Feld RightsManagementServiceClient.ClientCredentials.UserName.UserName den AEM Forms-Benutzernamen zu.
      • Weisen Sie dem Feld RightsManagementServiceClient.ClientCredentials.UserName.Password den entsprechenden Passwortwert zu.
      • Weisen Sie dem Feld BasicHttpBindingSecurity.Transport.ClientCredentialType den konstanten Wert HttpClientCredentialType.Basic zu.
    • Weisen Sie dem Feld BasicHttpBindingSecurity.Security.Mode den konstanten Wert BasicHttpSecurityMode.TransportCredentialOnly zu.

  3. Legen Sie die Attribute der Richtlinie fest.

    • Erstellen Sie ein Objekt PolicySpec, indem Sie den Konstruktor verwenden.
    • Legen Sie den Namen der Richtlinie fest, indem Sie dem Datenelement name des PolicySpec-Objekts einen Zeichenfolgenwert zuweisen.
    • Legen Sie die Beschreibung der Richtlinie fest, indem Sie dem Datenelement description des Objekts PolicySpec einen Zeichenfolgenwert zuweisen.
    • Legen Sie den Richtliniensatz fest, zu dem die Richtlinie gehören soll, indem Sie dem Datenelement policySetName des PolicySpec-Objekts einen Zeichenfolgenwert zuweisen. Sie müssen den Namen eines bestehenden Richtliniensatzes angeben. (Sie können für diesen Parameterwert null angeben, was dazu führt, dass die Richtlinie zu Meine Richtlinien hinzugefügt wird).
    • Legen Sie die Offline-Nutzungsdauer der Richtlinie fest, indem Sie dem Datenelement offlineLeasePeriod des PolicySpec-Objekts einen Ganzzahlwert zuweisen.
    • Belegen Sie das Datenelement policyXml des PolicySpec-Objekts mit einem Zeichenfolgenwert, der PDRL-XML-Daten darstellt. Um diese Aufgabe durchzuführen, erstellen Sie ein .NET StreamReader-Objekt mithilfe seines Konstruktors. Übergeben Sie den Speicherort einer PDRL-XML-Datei, die die Richtlinie darstellt, an den StreamReader-Konstruktor. Rufen Sie anschließend die Methode ReadLine des StreamReader-Objekts auf und weisen Sie den Rückgabewert einer Zeichenfolgenvariablen zu. Iterieren Sie durch das StreamReader-Objekt, bis die Methode ReadLine null zurückgibt. Weisen Sie die Zeichenfolgenvariable dem Datenelement policyXml des PolicySpec-Objekts zu.
  4. Erstellen Sie einen Richtlinieneintrag.

    Es ist beim Erstellen einer Richtlinie mithilfe der Document Security-Webservice-API nicht erforderlich, einen Richtlinieneintrag zu erstellen. Der Richtlinieneintrag wird im PDRL-Dokument definiert.

  5. Registrieren Sie die Richtlinie.

    Registrieren Sie die Richtlinie, indem Sie die Methode registerPolicy des DocumentSecurityServiceClient-Objekts aufrufen und die folgenden Werte übergeben:

    • Das PolicySpec-Objekt, das die zu registrierende Richtlinie darstellt.
    • Ein Zeichenfolgenwert, der den Richtliniensatz darstellt, zu dem die Richtlinie gehört. Sie können einen Wert null angeben, was dazu führt, dass die Richtlinie zum Richtliniensatz Meine Richtlinien hinzugefügt wird.

    Wenn Sie innerhalb der Verbindungseinstellungen ein AEM Forms-Administratorkonto verwenden, um das DocumentSecurityClient-Objekt zu erstellen, geben Sie den Namen des Richtliniensatzes an, wenn Sie die Methode registerPolicy aufrufen.

    Wenn Sie in den Verbindungseinstellungen einen Document Security-Benutzer verwenden, können Sie die überladene registerPolicy-Methode aufrufen, die nur die Richtlinie akzeptiert. Das heißt, Sie müssen den Richtliniensatznamen nicht angeben. Die Richtlinie wird jedoch zu dem Richtliniensatz mit dem Namen Meine Richtlinien hinzugefügt. Wenn Sie die neue Richtlinie nicht zu diesem Richtliniensatz hinzufügen möchten, geben Sie beim Aufrufen der Methode registerPolicy einen Richtliniensatznamen an.

    HINWEIS

    Stellen Sie beim Erstellen einer Richtlinie und beim Angeben eines Richtliniensatzes sicher, dass Sie einen bestehenden Richtliniensatz angeben. Wenn Sie einen Richtliniensatz angeben, der nicht vorhanden ist, wird eine Ausnahme ausgelöst.

Code-Beispiele zur Verwendung des Document Security-Services finden Sie in den folgenden Kurzanleitungen:

  • "Schnellstart (MTOM): Erstellen einer Richtlinie mithilfe der Webdienst-API"
  • "Schnellstart (SwaRef): Erstellen einer Richtlinie mithilfe der Webdienst-API"

Ändern von Richtlinien

Sie können eine bestehende Richtlinie mit der Document Security-Java-API oder der Webservice-API ändern. Um Änderungen an einer bestehenden Richtlinie vorzunehmen, rufen Sie sie ab, ändern Sie sie und aktualisieren Sie dann die Richtlinie auf dem Server. Angenommen, Sie rufen z. B. eine bestehende Richtlinie ab und verlängern ihre Gültigkeitsdauer. Bevor die Änderung wirksam wird, müssen Sie die Richtlinie aktualisieren.

Sie können eine Richtlinie ändern, wenn sich die Geschäftsanforderungen ändern und die Richtlinie diese Anforderungen nicht mehr widerspiegelt. Anstatt eine neue Richtlinie zu erstellen, können Sie einfach eine bestehende Richtlinie aktualisieren.

Um Richtlinienattribute mithilfe eines Webservices zu ändern (z. B. mithilfe von Java-Proxy-Klassen, die mit JAX-WS erstellt wurden), müssen Sie sicherstellen, dass die Richtlinie beim Document Security-Service registriert ist. Sie können dann mithilfe der Methode PolicySpec.getPolicyXml auf die bestehende Richtlinie verweisen und die Richtlinienattribute mithilfe der entsprechenden Methoden ändern. Sie können beispielsweise die Offline-Nutzungsdauer ändern, indem Sie die Methode PolicySpec.setOfflineLeasePeriod aufrufen.

HINWEIS

Weitere Informationen zum Document Security-Service finden Sie in der Service-Referenz für AEM Forms.

Zusammenfassung der Schritte

Um eine bestehende Richtlinie zu ändern, führen Sie die folgenden Schritte aus:

  1. Schließen Sie Projektdateien ein.
  2. Erstellen Sie ein Document Security-Client-API-Objekt.
  3. Rufen Sie eine bestehende Richtlinie ab.
  4. Ändern Sie die Richtlinienattribute.
  5. Aktualisieren Sie die Richtlinie.

Einschließen von Projektdateien

Schließen Sie die erforderlichen Dateien in Ihr Entwicklungsprojekt ein. Wenn Sie ein Client-Programm mit Java erstellen, schließen Sie die erforderlichen JAR-Dateien ein. Wenn Sie Web-Services verwenden, stellen Sie sicher, dass Sie die Proxy-Dateien einschließen.

Erstellen eines Document Security-Client-API-Objekts

Bevor Sie einen Document Security-Service-Vorgang programmgesteuert durchführen können, müssen Sie ein Client-Objekt des Document Security-Services erstellen. Wenn Sie die Java-API verwenden, erstellen Sie ein RightsManagementClient-Objekt. Wenn Sie die Document Security-Webservice-API verwenden, erstellen Sie ein RightsManagementServiceService-Objekt.

Abrufen einer bestehenden Richtlinie

Sie müssen eine bestehende Richtlinie abrufen, um sie zu ändern. Um eine Richtlinie abzurufen, geben Sie den Richtliniennamen und den Richtliniensatz an, zu dem die Richtlinie gehört. Wenn Sie für den Richtliniensatznamen einen Wert null angeben, wird die Richtlinie aus dem Richtliniensatz Meine Richtlinien abgerufen.

Festlegen der Richtlinienattribute

Um eine Richtlinie zu ändern, ändern Sie den Wert von Richtlinienattributen. Das einzige Richtlinienattribut, das Sie nicht ändern können, ist das Namensattribut. Um beispielsweise die Offline-Nutzungsdauer der Richtlinie zu ändern, können Sie den Wert des Attributs für die Offline-Nutzungsdauer der Richtlinie ändern.

Wenn Sie die Offline-Nutzungsdauer einer Richtlinie mithilfe eines Webservices ändern, wird das Feld offlineLeasePeriod an der Schnittstelle PolicySpec ignoriert. Um die Offline-Nutzungsdauer zu aktualisieren, ändern Sie die Element OfflineLeasePeriod im PDRL-XML-Dokument. Verweisen Sie dann auf das aktualisierte PDRL-XML-Dokument, indem Sie das Datenelement policyXML der Schnittstelle PolicySpec verwenden.

HINWEIS

Weitere Informationen zu anderen Attributen, die Sie festlegen können, finden Sie in der Beschreibung der Policy-Benutzeroberfläche in AEM Forms-API-Referenz.

Aktualisieren der Richtlinie

Bevor die Änderungen, die Sie an einer Richtlinie vornehmen, wirksam werden, müssen Sie die Richtlinie mit dem Document Security-Service aktualisieren. Änderungen an Richtlinien, die Dokumente schützen, werden aktualisiert, wenn das richtliniengeschützte Dokument das nächste Mal mit dem Document Security-Service synchronisiert wird.

Ändern bestehender Richtlinien mit Hilfe der Java-API

So ändern Sie eine bestehende Richtlinie mithilfe der Document Security-API (Java):

  1. Schließen Sie Projektdateien ein.

    Fügen Sie Client-JAR-Dateien wie „adobe-rightsmanagement-client.jar“ in den Klassenpfad Ihres Java-Projekts ein.

  2. Erstellen Sie ein Document Security-Client-API-Objekt.

    • Erstellen Sie ein ServiceClientFactory-Objekt, das Verbindungseigenschaften enthält.
    • Erstellen Sie ein RightsManagementClient-Objekt, indem Sie seinen Konstruktor verwenden und das ServiceClientFactory-Objekt übergeben.
  3. Rufen Sie eine bestehende Richtlinie ab.

    • Erstellen Sie ein PolicyManager-Objekt, indem Sie die Methode getPolicyManager des RightsManagementClient-Objekts aufrufen.

    • Erstellen Sie eine Policy -Objekt, das die zu aktualisierende Richtlinie darstellt, indem das PolicyManager -Objekt getPolicy Methode und Übergabe der folgenden Werte"

      • Ein Zeichenfolgenwert, der den Namen des Richtliniensatzes darstellt, zu dem die Richtlinie gehört. Sie können null angeben, was dazu führt, dass der Richtliniensatz MyPolicies verwendet wird.
      • Ein Zeichenfolgenwert, der den Richtliniennamen darstellt.
  4. Legen Sie die Attribute der Richtlinie fest.

    Ändern Sie die Attribute der Richtlinie entsprechend Ihren Geschäftsanforderungen. Um beispielsweise die Offline-Nutzungsdauer der Richtlinie zu ändern, rufen Sie die Methode setOfflineLeasePeriod des Policy-Objekts auf.

  5. Aktualisieren Sie die Richtlinie.

    Aktualisieren Sie die Richtlinie, indem Sie die Methode updatePolicy des PolicyManager-Objekts aufrufen. Übergeben Sie das Policy-Objekt, das die zu aktualisierende Richtlinie darstellt.

Code-Beispiele

Code-Beispiele zur Verwendung des Document Security-Services finden Sie im Abschnitt „Kurzanleitung (SOAP-Modus): Ändern einer Richtlinie mithilfe der Java-API“.

Ändern bestehender Richtlinien mit Hilfe der Webservice API

So ändern Sie eine bestehende Richtlinie mithilfe der Document Security-API (Webservice):

  1. Schließen Sie Projektdateien ein.

    Erstellen Sie ein Microsoft .NET-Projekt, das MTOM verwendet. Stellen Sie sicher, dass Sie die folgende WSDL-Definition verwenden: http://localhost:8080/soap/services/RightsManagementService?WSDL&lc_version=9.0.1.

    HINWEIS

    Ersetzen Sie localhost durch die IP-Adresse des Servers, auf dem AEM Forms gehostet wird.

  2. Erstellen Sie ein Document Security-Client-API-Objekt.

    • Erstellen Sie ein RightsManagementServiceClient-Objekt, indem Sie seinen Standardkonstruktor verwenden.

    • Erstellen Sie ein RightsManagementServiceClient.Endpoint.Address-Objekt, indem Sie den Konstruktor System.ServiceModel.EndpointAddress verwenden. Übergeben Sie einen Zeichenfolgenwert, der die WSDL für den AEM Forms-Service angibt (z. B. http://localhost:8080/soap/services/RightsManagementService?WSDL). Sie müssen das lc_version-Attribut nicht verwenden. Dieses Attribut wird verwendet, wenn Sie einen Service-Verweis erstellen.)

    • Erstellen Sie ein System.ServiceModel.BasicHttpBinding-Objekt durch Abrufen des Werts des Felds RightsManagementServiceClient.Endpoint.Binding. Wandeln Sie den Rückgabewert in BasicHttpBinding um.

    • Legen Sie das MessageEncoding-Feld des System.ServiceModel.BasicHttpBinding-Objekts auf WSMessageEncoding.Mtom fest. Dieser Wert stellt sicher, dass MTOM verwendet wird.

    • Aktivieren Sie die einfache HTTP-Authentifizierung, indem Sie die folgenden Schritte ausführen:

      • Weisen Sie dem Feld RightsManagementServiceClient.ClientCredentials.UserName.UserName den AEM Forms-Benutzernamen zu.
      • Weisen Sie dem Feld RightsManagementServiceClient.ClientCredentials.UserName.Password den entsprechenden Passwortwert zu.
      • Weisen Sie dem Feld BasicHttpBindingSecurity.Transport.ClientCredentialType den konstanten Wert HttpClientCredentialType.Basic zu.
    • Weisen Sie dem Feld BasicHttpBindingSecurity.Security.Mode den konstanten Wert BasicHttpSecurityMode.TransportCredentialOnly zu.

  3. Rufen Sie eine bestehende Richtlinie ab.

    Erstellen Sie ein PolicySpec-Objekt, das die zu ändernde Richtlinie darstellt, indem Sie die Methode getPolicy des RightsManagementServiceClient-Objekts aufrufen und die folgenden Werte übergeben:

    • Einen Zeichenfolgenwert, der den Richtliniensatznamen angibt, zu dem die Richtlinie gehört. Sie können null angeben, was dazu führt, dass der Richtliniensatz MyPolicies verwendet wird.
    • Ein Zeichenfolgenwert, der den Namen der neuen Richtlinie angibt.
  4. Legen Sie die Attribute der Richtlinie fest.

    Ändern Sie die Attribute der Richtlinie entsprechend Ihren Geschäftsanforderungen.

  5. Aktualisieren Sie die Richtlinie.

    Aktualisieren Sie die Richtlinie, indem Sie die Methode updatePolicyFromSDK des RightsManagementServiceClient-Objekts aufrufen und das PolicySpec-Objekt übergeben, das die zu aktualisierende Richtlinie darstellt.

Code-Beispiele

Code-Beispiele zur Verwendung des Document Security-Services finden Sie in den folgenden Kurzanleitungen:

  • "Schnellstart (MTOM): Ändern einer Richtlinie mithilfe der Webdienst-API"
  • "Schnellstart (SwaRef): Ändern einer Richtlinie mithilfe der Webdienst-API"

Löschen von Richtlinien

Sie können eine bestehende Richtlinie mithilfe der Document Security-Java-API oder der Webservice-API löschen. Nachdem eine Richtlinie gelöscht wurde, kann sie nicht mehr zum Schutz von Dokumenten verwendet werden. Vorhandene richtliniengeschützte Dokumente, die die Richtlinie verwenden, sind jedoch weiterhin geschützt. Sie können eine Richtlinie löschen, wenn eine neuere verfügbar ist.

HINWEIS

Weitere Informationen zum Document Security-Service finden Sie in der Service-Referenz für AEM Forms.

Zusammenfassung der Schritte

Um eine bestehende Richtlinie zu löschen, führen Sie die folgenden Schritte aus:

  1. Projektdateien einschließen
  2. Erstellen Sie ein Document Security-Client-API-Objekt.
  3. Löschen Sie die Richtlinie.

Einschließen von Projektdateien

Schließen Sie die erforderlichen Dateien in Ihr Entwicklungsprojekt ein. Wenn Sie ein Client-Programm mit Java erstellen, schließen Sie die erforderlichen JAR-Dateien ein. Wenn Sie Web-Services verwenden, stellen Sie sicher, dass Sie die Proxy-Dateien einschließen.

Erstellen eines Document Security-Client-API-Objekts

Bevor Sie einen Document Security-Service-Vorgang programmatisch ausführen können, müssen Sie ein Client-Objekt für den Document Security-Service erstellen. Wenn Sie die Java-API verwenden, erstellen Sie ein RightsManagementClient-Objekt. Wenn Sie die Document Security-Webservice-API verwenden, erstellen Sie ein RightsManagementServiceService-Objekt.

Löschen der Richtlinie

Um eine Richtlinie zu löschen, geben Sie die zu löschende Richtlinie und den Richtliniensatz an, zu dem die Richtlinie gehört. Der Benutzer, dessen Einstellungen zum Aufrufen von AEM Forms verwendet werden, muss über die Berechtigung zum Löschen der Richtlinie verfügen. andernfalls tritt eine Ausnahme auf. Wenn Sie versuchen, eine nicht vorhandene Richtlinie zu löschen, tritt ebenfalls eine Ausnahme auf.

Löschen von Richtlinien mithilfe der Java-API

So löschen Sie eine Richtlinie mithilfe der Document Security-API (Java):

  1. Schließen Sie Projektdateien ein.

    Fügen Sie Client-JAR-Dateien wie „adobe-rightsmanagement-client.jar“ in den Klassenpfad Ihres Java-Projekts ein.

  2. Erstellen Sie ein Document Security-Client-API-Objekt.

    • Erstellen Sie ein ServiceClientFactory-Objekt, das Verbindungseigenschaften enthält.
    • Erstellen Sie ein RightsManagementClient-Objekt, indem Sie seinen Konstruktor verwenden und das ServiceClientFactory-Objekt übergeben.
  3. Löschen Sie die Richtlinie.

    • Erstellen Sie ein PolicyManager-Objekt, indem Sie die getPolicyManager-Methode des RightsManagementClient -Objekts aufrufen.

    • Löschen Sie die Richtlinie, indem Sie die deletePolicy-Methode des PolicyManager-Objekts aufrufen und ihr folgende Werte übergeben:

      • Einen Zeichenfolgenwert, der den Richtliniensatznamen angibt, zu dem die Richtlinie gehört. Sie können null angeben, wodurch der Richtliniensatz MyPolicies verwendet wird.
      • Einen Zeichenfolgenwert, der den Namen der zu löschenden Richtlinie angibt.

Code-Beispiele

Code-Beispiele zur Verwendung des Document Security-Services finden Sie in den folgenden Kurzanleitungen:

  • "Schnellstart (SOAP-Modus): Löschen einer Richtlinie mit der Java-API"

Richtlinien mithilfe der Web-Service-API löschen

Löschen einer Richtlinie mithilfe der Document Security-API (Web Service):

  1. Schließen Sie Projektdateien ein.

    Erstellen Sie ein Microsoft .NET-Projekt, das MTOM verwendet. Stellen Sie sicher, dass Sie die folgende WSDL-Definition verwenden: http://localhost:8080/soap/services/RightsManagementService?WSDL&lc_version=9.0.1.

    HINWEIS

    Ersetzen Sie localhost durch die IP-Adresse des Servers, auf dem AEM Forms gehostet wird.

  2. Erstellen Sie ein Document Security-Client-API-Objekt.

    • Erstellen Sie ein RightsManagementServiceClient-Objekt, indem Sie seinen Standardkonstruktor verwenden.

    • Erstellen Sie ein RightsManagementServiceClient.Endpoint.Address-Objekt, indem Sie den Konstruktor System.ServiceModel.EndpointAddress verwenden. Übergeben Sie einen Zeichenfolgenwert, der die WSDL für den AEM Forms-Service angibt (z. B. http://localhost:8080/soap/services/RightsManagementService?WSDL). Sie müssen das lc_version-Attribut nicht verwenden. Dieses Attribut wird verwendet, wenn Sie einen Service-Verweis erstellen.)

    • Erstellen Sie ein System.ServiceModel.BasicHttpBinding-Objekt durch Abrufen des Werts des Felds RightsManagementServiceClient.Endpoint.Binding. Wandeln Sie den Rückgabewert in BasicHttpBinding um.

    • Legen Sie das MessageEncoding-Feld des System.ServiceModel.BasicHttpBinding-Objekts auf WSMessageEncoding.Mtom fest. Dieser Wert stellt sicher, dass MTOM verwendet wird.

    • Aktivieren Sie die einfache HTTP-Authentifizierung, indem Sie die folgenden Schritte ausführen:

      • Weisen Sie dem Feld RightsManagementServiceClient.ClientCredentials.UserName.UserName den AEM Forms-Benutzernamen zu.
      • Weisen Sie dem Feld RightsManagementServiceClient.ClientCredentials.UserName.Password den entsprechenden Passwortwert zu.
      • Weisen Sie dem Feld BasicHttpBindingSecurity.Transport.ClientCredentialType den konstanten Wert HttpClientCredentialType.Basic zu.
    • Weisen Sie dem Feld BasicHttpBindingSecurity.Security.Mode den konstanten Wert BasicHttpSecurityMode.TransportCredentialOnly zu.

  3. Löschen Sie die Richtlinie.

    Löschen Sie eine Richtlinie, indem Sie die deletePolicy-Methode des RightsManagementServiceClient-Objekts aufrufen und ihr folgende Werte übergeben:

    • Einen Zeichenfolgenwert, der den Richtliniensatznamen angibt, zu dem die Richtlinie gehört. Sie können null angeben, wodurch der Richtliniensatz MyPolicies verwendet wird.
    • Einen Zeichenfolgenwert, der den Namen der zu löschenden Richtlinie angibt.

Code-Beispiele

Code-Beispiele zur Verwendung des Document Security-Services finden Sie in den folgenden Kurzanleitungen:

  • "Schnellstart (MTOM): Löschen einer Richtlinie mithilfe der Webdienst-API"
  • "Schnellstart (SwaRef): Löschen einer Richtlinie mithilfe der Webdienst-API"

Anwenden von Richtlinien auf PDF-Dokumente

Sie können eine Richtlinie auf ein PDF-Dokument anwenden, um das Dokument zu schützen. Durch Anwendung einer Richtlinie auf ein PDF-Dokument können Sie den Zugriff auf das Dokument einschränken. Sie können eine Richtlinie nicht auf ein Dokument anwenden, das bereits durch eine Richtlinie geschützt ist.

Solange das Dokument geöffnet ist, können Sie auch den Zugriff auf Acrobat- und Adobe Reader-Funktionen einschränken, einschließlich der Möglichkeit, Text zu drucken und zu kopieren, Änderungen vorzunehmen und Signaturen und Kommentare zu einem Dokument hinzuzufügen. Darüber hinaus können Sie ein richtliniengeschütztes PDF-Dokument sperren, wenn Benutzer nicht mehr auf das Dokument zugreifen sollen.

Sie können die Verwendung eines richtliniengeschützten Dokuments nach dessen Verteilung überwachen. Das heißt, Sie können sehen, wie das Dokument verwendet wird und wer es verwendet. Sie können zum Beispiel herausfinden, wann jemand das Dokument geöffnet hat.

HINWEIS

Weitere Informationen zum Document Security-Service finden Sie in der Service-Referenz für AEM Forms.

Zusammenfassung der Schritte

Um eine Richtlinie auf ein PDF-Dokument anzuwenden, führen Sie folgende Schritte aus:

  1. Schließen Sie Projektdateien ein.
  2. Erstellen Sie ein Document Security-Client-API-Objekt.
  3. Rufen Sie ein PDF-Dokument ab, auf das eine Richtlinie angewendet wird.
  4. Wenden Sie eine vorhandene Richtlinie auf das PDF-Dokument an.
  5. Speichern Sie das richtliniengeschützte PDF-Dokument.

Projektdateien einbinden

Schließen Sie die erforderlichen Dateien in Ihr Entwicklungsprojekt ein. Wenn Sie ein Client-Programm mit Java erstellen, schließen Sie die erforderlichen JAR-Dateien ein. Wenn Sie Web-Services verwenden, stellen Sie sicher, dass Sie die Proxy-Dateien einschließen.

Ein Document Security Client-API-Objekt erstellen

Bevor Sie einen Document Security-Service-Vorgang programmgesteuert durchführen können, erstellen Sie ein Document Security-Service-Client-Objekt. Wenn Sie die Java-API verwenden, erstellen Sie ein DocumentSecurityClient-Objekt. Wenn Sie die Document Security-Web-Service-API verwenden, erstellen Sie ein DocumentSecurityServiceService-Objekt.

Ein PDF-Dokument abrufen

Sie können ein PDF-Dokument abrufen, um eine Richtlinie anzuwenden. Nachdem Sie eine Richtlinie auf das PDF-Dokument angewendet haben, wird die Verwendung des Dokuments durch die Benutzer eingeschränkt. Wenn die Richtlinie beispielsweise nicht das Öffnen des Dokuments im Offline-Modus ermöglicht, müssen die Benutzer online sein, um das Dokument zu öffnen.

Vorhandene Richtlinie auf das PDF-Dokument anwenden

Um eine Richtlinie auf ein PDF-Dokument anzuwenden, verweisen Sie auf eine vorhandene Richtlinie und geben an, zu welchem Richtliniensatz die Richtlinie gehört. Der Benutzer, der die Verbindungseigenschaften festlegt, muss Zugriff auf die angegebene Richtlinie haben. Andernfalls wird eine Ausnahme ausgelöst.

PDF-Dokument speichern

Nachdem der Document Security-Service eine Richtlinie auf ein PDF-Dokument angewendet hat, können Sie das richtliniengeschützte PDF-Dokument als PDF-Datei speichern.

Siehe auch

Einbeziehung von AEM Forms Java-Bibliotheksdateien

Verbindungseigenschaften festlegen

Zugriff auf Dokumente sperren

Eine Richtlinie mithilfe der Java-API auf ein PDF-Dokument anwenden

Wenden Sie mithilfe der Document Security-API (Java) eine Richtlinie auf ein PDF-Dokument an:

  1. Schließen Sie Projektdateien ein.

    Fügen Sie Client-JAR-Dateien wie „adobe-rightsmanagement-client.jar“ in den Klassenpfad Ihres Java-Projekts ein.

  2. Erstellen Sie ein Document Security-Client-API-Objekt.

    • Erstellen Sie ein ServiceClientFactory-Objekt, das Verbindungseigenschaften enthält.
    • Erstellen Sie ein RightsManagementClient-Objekt, indem Sie seinen Konstruktor verwenden und das ServiceClientFactory-Objekt übergeben.
  3. Rufen Sie ein PDF-Dokument ab.

    • Erstellen Sie mithilfe seines Konstruktors ein java.io.FileInputStream-Objekt, das das PDF-Dokument darstellt. Übergeben Sie einen Zeichenfolgenwert, der den Speicherort des PDF-Dokuments angibt.
    • Erstellen Sie ein com.adobe.idp.Document-Objekt, indem Sie seinen Konstruktor verwenden und das java.io.FileInputStream-Objekt übergeben.
  4. Wenden Sie eine vorhandene Richtlinie auf das PDF-Dokument an.

    • Erstellen Sie ein DocumentManager-Objekt, indem Sie die getDocumentManager-Methode des RightsManagementClient-Objekts aufrufen.

    • Wenden Sie eine Richtlinie auf das PDF-Dokument an, indem Sie die protectDocument-Methode des DocumentManager-Objekts aufrufen und ihr folgende Werte übergeben:

      • Das com.adobe.idp.Document-Objekt, das das PDF-Dokument enthält, auf das die Richtlinie angewendet wird.
      • Einen Zeichenfolgenwert, der die Versionsnummer des Dokuments angibt.
      • Einen Zeichenfolgenwert, der den Namen des Satzes angibt, zu dem die Richtlinie gehört. Sie können einen null-Wert angeben, der dazu führt, dass der Richtliniensatz MyPolicies verwendet wird.
      • Einen Zeichenfolgenwert, der den Richtliniennamen angibt.
      • Einen Zeichenfolgenwert für den Namen die User Manager-Domain des Benutzers, der Herausgeber des Dokuments ist. Dieser Parameterwert ist optional und kann null sein. (Wenn dieser Parameter null ist, muss der nächste Parameterwert null sein.)
      • Ein Zeichenfolgenwert für den kanonischen Namen des User Manager-Benutzers, der Herausgeber des Dokuments ist. Dieser Parameterwert ist optional und kann null sein. (Wenn dieser Parameter null ist, muss der vorherige Parameterwert null lauten.)
      • Ein com.adobe.livecycle.rightsmanagement.Locale-Element, das das Gebietsschema darstellt, das für die Auswahl der MS Office-Vorlage verwendet wird. Dieser Parameterwert ist optional und wird nicht für PDF-Dokumente verwendet. Um ein PDF-Dokument zu sichern, geben Sie null an.

      Die protectDocument-Methode gibt ein RMSecureDocumentResult-Objekt zurück, das das richtliniengeschützte PDF-Dokument enthält.

  5. Speichern Sie das PDF-Dokument.

    • Rufen Sie die getProtectedDoc-Methode des RMSecureDocumentResult-Objekts auf, um das richtliniengeschützte PDF-Dokument abzurufen. Diese Methode gibt ein com.adobe.idp.Document-Objekt zurück.
    • Erstellen Sie ein java.io.File-Objekt und stellen Sie sicher, dass die Dateierweiterung PDF lautet.
    • Rufen Sie die copyToFile-Methode des com.adobe.idp.Document-Objekts auf, um den Inhalt des Document-Objekts in die Datei zu kopieren (stellen Sie sicher, dass Sie das Document-Objekt verwenden, das von der getProtectedDoc-Methode zurückgegeben wurde).

Code-Beispiele

Code-Beispiele zur Verwendung des Document Security-Services finden Sie in den folgenden Kurzanleitungen:

  • "Schnellstart (EJB-Modus): Anwenden einer Richtlinie auf ein PDF-Dokument mithilfe der Java-API"
  • "Schnellstart (SOAP-Modus): Anwenden einer Richtlinie auf ein PDF-Dokument mit der Java-API"

Siehe auch

Einbeziehung von AEM Forms Java-Bibliotheksdateien

Verbindungseigenschaften festlegen

Anwenden einer Richtlinie auf ein PDF-Dokument mithilfe der Web-Service-API

Wenden Sie mithilfe der Document Security-API (Web Service) eine Richtlinie auf ein PDF-Dokument an:

  1. Schließen Sie Projektdateien ein.

    Erstellen Sie ein Microsoft .NET-Projekt, das MTOM verwendet. Stellen Sie sicher, dass Sie die folgende WSDL-Definition verwenden: http://localhost:8080/soap/services/RightsManagementService?WSDL&lc_version=9.0.1.

    HINWEIS

    Ersetzen Sie localhost durch die IP-Adresse des Servers, auf dem AEM Forms gehostet wird.

  2. Erstellen Sie ein Document Security-Client-API-Objekt.

    • Erstellen Sie ein RightsManagementServiceClient-Objekt, indem Sie seinen Standardkonstruktor verwenden.

    • Erstellen Sie ein RightsManagementServiceClient.Endpoint.Address-Objekt, indem Sie den Konstruktor System.ServiceModel.EndpointAddress verwenden. Übergeben Sie einen Zeichenfolgenwert, der dem Forms-Service die WSDL angibt (z. B. http://localhost:8080/soap/services/RightsManagementService?WSDL.) Sie brauchen das Attribut lc_version nicht zu verwenden. Dieses Attribut wird verwendet, wenn Sie einen Service-Verweis erstellen.)

    • Erstellen Sie ein System.ServiceModel.BasicHttpBinding-Objekt durch Abrufen des Werts des Felds RightsManagementServiceClient.Endpoint.Binding. Wandeln Sie den Rückgabewert in BasicHttpBinding um.

    • Legen Sie das MessageEncoding-Feld des System.ServiceModel.BasicHttpBinding-Objekts auf WSMessageEncoding.Mtom fest. Dieser Wert stellt sicher, dass MTOM verwendet wird.

    • Aktivieren Sie die einfache HTTP-Authentifizierung, indem Sie die folgenden Schritte ausführen:

      • Weisen Sie dem Feld RightsManagementServiceClient.ClientCredentials.UserName.UserName den AEM Forms-Benutzernamen zu.
      • Weisen Sie dem Feld RightsManagementServiceClient.ClientCredentials.UserName.Password den entsprechenden Passwortwert zu.
      • Weisen Sie dem Feld BasicHttpBindingSecurity.Transport.ClientCredentialType den konstanten Wert HttpClientCredentialType.Basic zu.
    • Weisen Sie dem Feld BasicHttpBindingSecurity.Security.Mode den konstanten Wert BasicHttpSecurityMode.TransportCredentialOnly zu.

  3. Rufen Sie ein PDF-Dokument ab.

    • Erstellen Sie ein Objekt BLOB, indem Sie den Konstruktor verwenden. Das BLOB-Objekt wird zum Speichern eines PDF-Dokuments verwendet, auf das eine Richtlinie angewendet wird.
    • Erstellen Sie ein System.IO.FileStream-Objekt, indem Sie seinen Konstruktor aufrufen und einen Zeichenfolgenwert übergeben, der den Dateispeicherort des PDF-Dokuments und den Modus darstellt, in dem die Datei geöffnet werden soll.
    • Erstellen Sie ein Byte-Array, das den Inhalt des System.IO.FileStream-Objekts speichert. Ermitteln Sie die Größe des Byte-Arrays, indem Sie die Length-Eigenschaft des System.IO.FileStream-Objekts abrufen.
    • Füllen Sie das Byte-Array mit Stream-Daten, indem Sie die Methode Read des System.IO.FileStream-Objekts aufrufen. Übergeben Sie das Byte-Array, die Startposition und die zu lesende Datenstromlänge.
    • Füllen Sie das BLOB-Objekt, indem Sie dessen Feld MTOM mit dem Inhalt des Byte-Arrays belegen.
  4. Wenden Sie eine vorhandene Richtlinie auf das PDF-Dokument an.

    Wenden Sie eine Richtlinie auf das PDF-Dokument an, indem Sie die Methode protectDocument des RightsManagementServiceClient-Objekts aufrufen und die folgenden Werte übergeben:

    • Das BLOB-Objekt, das das PDF-Dokument enthält, auf das die Richtlinie angewendet wird.
    • Einen Zeichenfolgenwert, der die Versionsnummer des Dokuments angibt.
    • Einen Zeichenfolgenwert, der den Namen des Satzes angibt, zu dem die Richtlinie gehört. Sie können einen null-Wert angeben, der dazu führt, dass der Richtliniensatz MyPolicies verwendet wird.
    • Einen Zeichenfolgenwert, der den Richtliniennamen angibt.
    • Einen Zeichenfolgenwert für den Namen die User Manager-Domain des Benutzers, der Herausgeber des Dokuments ist. Dieser Parameterwert ist optional und kann null sein. (Wenn dieser Parameter null ist, muss der nächste Parameterwert null sein).
    • Ein Zeichenfolgenwert für den kanonischen Namen des User Manager-Benutzers, der Herausgeber des Dokuments ist. Dieser Parameterwert ist optional und kann null sein. (Wenn dieser Parameter null ist, muss der vorherige Parameterwert null sein).
    • Ein RMLocale-Wert, der den Gebietsschemawert angibt (z. B. RMLocale.en).
    • Ein Zeichenfolgen-Ausgabeparameter, der zum Speichern des Richtlinienkennungswerts verwendet wird.
    • Ein Zeichenfolgen-Ausgabeparameter, der zum Speichern des Werts der richtliniengeschützten Kennung verwendet wird.
    • Ein Zeichenfolgen-Ausgabeparameter, der zum Speichern des MIME-Typs verwendet wird (z. B. application/pdf).

    Die Methode protectDocument gibt ein BLOB-Objekt zurück, das das richtliniengeschützte PDF-Dokument enthält.

  5. Speichern Sie das PDF-Dokument.

    • Erstellen Sie ein System.IO.FileStream-Objekt, indem Sie seinen Konstruktor aufrufen und einen Zeichenfolgenwert übergeben, der den Dateispeicherort des richtliniengeschützten PDF-Dokuments darstellt.
    • Erstellen Sie ein Byte-Array, das den Dateninhalt des BLOB-Objekts speichert, das von der Methode protectDocument zurückgegeben wurde. Füllen Sie das Byte-Array, indem Sie den Wert des MTOM-Datenelements des BLOB-Objekts abrufen.
    • Erstellen Sie ein System.IO.BinaryWriter-Objekt, indem Sie seinen Konstruktor aufrufen und das System.IO.FileStream-Objekt übergeben.
    • Schreiben Sie den Inhalt des Byte-Arrays in eine PDF-Datei, indem Sie die Methode Write des System.IO.BinaryWriter-Objekts aufrufen und das Byte-Array übergeben.

Code-Beispiele

Code-Beispiele zur Verwendung des Document Security-Services finden Sie in den folgenden Kurzanleitungen:

  • "Schnellstart (MTOM): Anwenden einer Richtlinie auf ein PDF-Dokument mithilfe der Webdienst-API"
  • "Schnellstart (SwaRef): Anwenden einer Richtlinie auf ein PDF-Dokument mithilfe der Webdienst-API "

Entfernen von Richtlinien aus PDF-Dokumenten

Sie können eine Richtlinie aus einem richtliniengeschützten Dokument entfernen, um die Sicherheit aus dem Dokument zu entfernen. Das heißt, Sie möchten nicht mehr, dass das Dokument durch eine Richtlinie geschützt wird. Wenn Sie ein richtliniengeschütztes Dokument mit einer neueren Richtlinie aktualisieren möchten, ist es effizienter, die Richtlinie zu wechseln, anstatt die Richtlinie zu entfernen und die aktualisierte Richtlinie hinzuzufügen.

HINWEIS

Weitere Informationen zum Document Security-Service finden Sie in der Service-Referenz für AEM Forms.

Zusammenfassung der Schritte

Um eine Richtlinie aus einem richtliniengeschützten PDF-Dokument zu entfernen, führen Sie die folgenden Schritte aus:

  1. Projektdateien einschließen
  2. Erstellen Sie ein Document Security-Client-API-Objekt.
  3. Rufen Sie ein richtliniengeschütztes PDF-Dokument ab.
  4. Entfernen Sie die Richtlinie aus dem PDF-Dokument.
  5. Speichern Sie das ungesicherte PDF-Dokument.

Projektdateien einschließen

Schließen Sie die erforderlichen Dateien in Ihr Entwicklungsprojekt ein. Wenn Sie ein Client-Programm mit Java erstellen, schließen Sie die erforderlichen JAR-Dateien ein. Wenn Sie Web-Services verwenden, stellen Sie sicher, dass Sie die Proxy-Dateien einschließen.

Erstellen eines Document Security-Client-API-Objekts

Bevor Sie einen Document Security Service-Vorgang programmgesteuert durchführen können, erstellen Sie ein Document Security Service-Client-Objekt.

Abrufen eines richtliniengeschützten PDF-Dokuments

Sie können ein richtliniengeschütztes PDF-Dokument abrufen, um eine Richtlinie zu entfernen. Wenn Sie versuchen, eine Richtlinie aus einem PDF-Dokument zu entfernen, das nicht durch eine Richtlinie geschützt ist, wird eine Ausnahme ausgelöst.

Entfernen der Richtlinie aus dem PDF-Dokument

Sie können eine Richtlinie aus einem richtliniengeschützten PDF-Dokument entfernen, sofern in den Verbindungseinstellungen ein Administrator angegeben ist. Ist dies nicht der Fall, muss die zum Schützen eines Dokuments verwendete Richtlinie die SWITCH_POLICY-Berechtigung enthalten, um eine Richtlinie aus einem PDF-Dokument entfernen zu können. Außerdem muss der in den AEM Forms-Verbindungseinstellungen angegebene Benutzer über diese Berechtigung verfügen. Andernfalls wird eine Ausnahme ausgelöst.

Ungesichertes PDF-Dokument speichern

Nachdem der Document Security-Service eine Richtlinie aus einem PDF-Dokument entfernt hat, können Sie das ungesicherte PDF-Dokument als PDF-Datei speichern.

Siehe auch

Einbeziehung von AEM Forms Java-Bibliotheksdateien

Verbindungseigenschaften festlegen

Anwenden von Richtlinien auf PDF-Dokumente

Eine Richtlinie mithilfe der Java-API aus einem PDF-Dokument entfernen

Entfernen Sie mithilfe der Document Security-API (Java) eine Richtlinie aus einem richtliniengeschützten PDF-Dokument:

  1. Schließen Sie Projektdateien ein.

    Fügen Sie Client-JAR-Dateien wie „adobe-rightsmanagement-client.jar“ in den Klassenpfad Ihres Java-Projekts ein.

  2. Erstellen Sie ein Document Security-Client-API-Objekt.

    • Erstellen Sie ein ServiceClientFactory-Objekt, das Verbindungseigenschaften enthält.
    • Erstellen Sie ein DocumentSecurityClient-Objekt, indem Sie seinen Konstruktor verwenden und das ServiceClientFactory-Objekt übergeben.
  3. Rufen Sie ein richtliniengeschütztes PDF-Dokument ab.

    • Erstellen Sie ein java.io.FileInputStream-Objekt, das das richtliniengeschützte PDF-Dokument darstellt, indem es seinen Konstruktor verwenden und einen Zeichenfolgenwert übergeben, der den Speicherort des PDF-Dokuments angibt.
    • Erstellen Sie ein com.adobe.idp.Document-Objekt, indem Sie seinen Konstruktor verwenden und das java.io.FileInputStream-Objekt übergeben.
  4. Entfernen Sie die Richtlinie aus dem PDF-Dokument.

    • Erstellen Sie ein DocumentManager-Objekt, indem Sie die getDocumentManager-Methode des DocumentSecurityClient-Objekts aufrufen.
    • Entfernen Sie eine Richtlinie aus dem PDF-Dokument, indem Sie die removeSecurity-Methode des DocumentManager-Objekts aufrufen und ihr das com.adobe.idp.Document-Objekt übergeben, das das richtliniengeschützte PDF-Dokument enthält. Diese Methode gibt ein com.adobe.idp.Document-Objekt zurück, das ein nicht gesichertes PDF-Dokument enthält.
  5. Speichern Sie das ungesicherte PDF-Dokument.

    • Erstellen Sie ein java.io.File-Objekt und stellen Sie sicher, dass die Dateierweiterung PDF lautet.
    • Rufen Sie die copyToFile-Methode des Document-Objekts auf, um den Inhalt des Document-Objekts in die Datei zu kopieren (stellen Sie sicher, dass Sie das Document-Objekt verwenden, das von der removeSecurity-Methode zurückgegeben wurde).

Code-Beispiele

Code-Beispiele zur Verwendung des Document Security-Services finden Sie in den folgenden Kurzanleitungen:

  • "Schnellstart (SOAP-Modus): Entfernen einer Richtlinie aus einem PDF-Dokument mit der Java-API"

Eine Richtlinie mithilfe der Web-Service-API entfernen

Entfernen Sie mithilfe der Document Security-API (Web-Service) eine Richtlinie aus einem richtliniengeschützten PDF-Dokument:

  1. Schließen Sie Projektdateien ein.

    Erstellen Sie ein Microsoft .NET-Projekt, das MTOM verwendet. Stellen Sie sicher, dass Sie die folgende WSDL-Definition verwenden: http://localhost:8080/soap/services/RightsManagementService?WSDL&lc_version=9.0.1.

    HINWEIS

    Ersetzen Sie localhost durch die IP-Adresse des Servers, auf dem AEM Forms gehostet wird.

  2. Erstellen Sie ein Document Security-Client-API-Objekt.

    • Erstellen Sie ein DocumentSecurityServiceClient-Objekt, indem Sie seinen Standardkonstruktor verwenden.

    • Erstellen Sie ein DocumentSecurityServiceClient.Endpoint.Address-Objekt, indem Sie den Konstruktor System.ServiceModel.EndpointAddress verwenden. Übergeben Sie einen Zeichenfolgenwert, der die WSDL für den AEM Forms-Service angibt (z. B. http://localhost:8080/soap/services/RightsManagementService?WSDL). Sie müssen das lc_version-Attribut nicht verwenden. Dieses Attribut wird verwendet, wenn Sie einen Service-Verweis erstellen.)

    • Erstellen Sie ein System.ServiceModel.BasicHttpBinding-Objekt durch Abrufen des Werts des Felds DocumentSecurityServiceClient.Endpoint.Binding. Wandeln Sie den Rückgabewert in BasicHttpBinding um.

    • Legen Sie das MessageEncoding-Feld des System.ServiceModel.BasicHttpBinding-Objekts auf WSMessageEncoding.Mtom fest. Dieser Wert stellt sicher, dass MTOM verwendet wird.

    • Aktivieren Sie die einfache HTTP-Authentifizierung, indem Sie die folgenden Schritte ausführen:

      • Weisen Sie dem Feld DocumentSecurityServiceClient.ClientCredentials.UserName.UserName den AEM Forms-Benutzernamen zu.
      • Weisen Sie dem Feld DocumentSecurityServiceClient.ClientCredentials.UserName.Password den entsprechenden Passwortwert zu.
      • Weisen Sie dem Feld BasicHttpBindingSecurity.Transport.ClientCredentialType den konstanten Wert HttpClientCredentialType.Basic zu.
    • Weisen Sie dem Feld BasicHttpBindingSecurity.Security.Mode den konstanten Wert BasicHttpSecurityMode.TransportCredentialOnly zu.

  3. Rufen Sie ein richtliniengeschütztes PDF-Dokument ab.

    • Erstellen Sie ein Objekt BLOB, indem Sie den Konstruktor verwenden. Das BLOB-Objekt wird zum Speichern des richtliniengeschützten PDF-Dokuments verwendet, aus dem die Richtlinie entfernt wird.
    • Erstellen Sie ein System.IO.FileStream-Objekt, indem Sie seinen Konstruktor aufrufen und einen Zeichenfolgenwert übergeben, der den Dateispeicherort des PDF-Dokuments und den Modus darstellt, in dem die Datei geöffnet werden soll.
    • Erstellen Sie ein Byte-Array, das den Inhalt des System.IO.FileStream-Objekts speichert. Sie können die Größe des Byte-Arrays bestimmen, indem Sie die Length-Eigenschaft des System.IO.FileStream-Objekts abrufen.
    • Füllen Sie das Byte-Array mit Datenstromdaten, indem Sie die Read-Methode des System.IO.FileStream-Objekts aufrufen und ihr das Byte-Array, die Startposition und die zu lesende Datenstromlänge übergeben.
    • Füllen Sie das BLOB-Objekt, indem Sie seinem MTOM-Feld den Inhalt des Byte-Arrays zuweisen.
  4. Entfernen Sie die Richtlinie aus dem PDF-Dokument.

    Entfernen Sie die Richtlinie aus dem PDF-Dokument, indem Sie die removePolicySecurity-Methode des DocumentSecurityServiceClient-Objekts aufrufen und ihr das BLOB-Objekt, das das richtliniengeschützte PDF-Dokument enthält, übergeben. Diese Methode gibt ein BLOB-Objekt zurück, das ein nicht gesichertes PDF-Dokument enthält.

  5. Speichern Sie das ungesicherte PDF-Dokument.

    • Erstellen Sie ein System.IO.FileStream-Objekt, indem Sie seinen Konstruktor aufrufen und ihm einen Zeichenfolgenwert, der den Dateispeicherort des ungesicherten PDF-Dokuments darstellt, übergeben.
    • Erstellen Sie ein Byte-Array, das den Dateninhalt des von der removePolicySecurity-Methode zurückgegebenen BLOB-Objekts enthält. Füllen Sie das Byte-Array, indem Sie den Wert aus dem MTOM-Feld des BLOB-Objekts abrufen.
    • Erstellen Sie ein System.IO.BinaryWriter-Objekt, indem Sie seinen Konstruktor aufrufen und das System.IO.FileStream-Objekt übergeben.

Code-Beispiele

Code-Beispiele zur Verwendung des Document Security-Services finden Sie in den folgenden Kurzanleitungen:

  • "Schnellstart (MTOM): Entfernen einer Richtlinie aus einem PDF-Dokument mithilfe der Webdienst-API "
  • "Schnellstart (SwaRef): Entfernen einer Richtlinie aus einem PDF-Dokument mithilfe der Webdienst-API"

Siehe auch

AEM Forms mithilfe von MTOM aufrufen

Aufrufen von AEM Forms mithilfe von SwaRef

Zugriff auf Dokumente sperren

Sie können den Zugriff auf ein richtliniengeschütztes PDF-Dokument widerrufen, sodass alle Dokumentkopien für Benutzer unzugänglich sind. Wenn ein Benutzer versucht, ein widerrufenes PDF-Dokument zu öffnen, wird er an eine angegebene URL weitergeleitet, wo ein überarbeitetes Dokument angezeigt werden kann. Die URL, an die der Benutzer umgeleitet wird, muss programmgesteuert angegeben werden. Wenn Sie den Zugriff auf ein Dokument widerrufen, wird die Änderung wirksam, sobald der Benutzer das richtliniengeschützte Dokument das nächste Mal mit dem Document Security-Service synchronisiert, indem er es online öffnet.

Die Möglichkeit, den Zugriff auf ein Dokument zu widerrufen, bietet zusätzliche Sicherheit. Angenommen, eine neuere Version eines Dokuments ist verfügbar, und Sie möchten nicht mehr, dass jemand die veraltete Version anzeigt. In diesem Fall kann der Zugriff auf das ältere Dokument widerrufen werden und niemand kann das Dokument anzeigen, es sei denn, der Zugriff wird wieder aktiviert.

HINWEIS

Weitere Informationen zum Document Security-Service finden Sie in der Service-Referenz für AEM Forms.

Zusammenfassung der Schritte

Um ein richtliniengeschütztes Dokument zu widerrufen, führen Sie die folgenden Schritte aus:

  1. Schließen Sie Projektdateien ein.
  2. Erstellen Sie ein Document Security-Client-API-Objekt.
  3. Rufen Sie ein richtliniengeschütztes PDF-Dokument ab.
  4. Widerrufen Sie das richtliniengeschützte Dokument.

Einschließen von Projektdateien

Schließen Sie die erforderlichen Dateien in Ihr Entwicklungsprojekt ein. Wenn Sie ein Client-Programm mit Java erstellen, schließen Sie die erforderlichen JAR-Dateien ein. Wenn Sie Web-Services verwenden, stellen Sie sicher, dass Sie die Proxy-Dateien einschließen.

Erstellen eines Document Security-Client-API-Objekts

Bevor Sie einen Document Security-Service-Vorgang programmatisch ausführen können, müssen Sie ein Client-Objekt für den Document Security-Service erstellen.

Abrufen eines richtliniengeschützten PDF-Dokuments

Sie müssen ein richtliniengeschütztes PDF-Dokument abrufen, um es widerrufen zu können. Sie können ein Dokument, das bereits widerrufen wurde oder nicht richtliniengeschützt ist, nicht widerrufen.

Wenn Sie den Wert der Lizenzkennung des richtliniengeschützten Dokuments kennen, ist es nicht erforderlich, das richtliniengeschützte PDF-Dokument abzurufen. In den meisten Fällen müssen Sie jedoch das PDF-Dokument abrufen, um den Wert der Lizenzkennung zu erhalten.

Widerrufen des richtliniengeschützten Dokuments

Um ein richtliniengeschütztes Dokument zu widerrufen, geben Sie die Lizenzkennung des richtliniengeschützten Dokuments an. Darüber hinaus können Sie die URL einer anderen Dokumentversion angeben, die der Benutzer anzeigen kann, wenn er versucht, das widerrufene Dokument zu öffnen. Angenommen, ein veraltetes Dokument wird widerrufen. Wenn ein Benutzer versucht, das widerrufene Dokument zu öffnen, wird ihm anstelle des widerrufenen Dokuments ein aktualisiertes Dokument angezeigt.

HINWEIS

Wenn Sie versuchen, ein bereits widerrufenes Dokument zu widerrufen, wird eine Ausnahme ausgelöst.

Siehe auch

Einbeziehung von AEM Forms Java-Bibliotheksdateien

Verbindungseigenschaften festlegen

Anwenden von Richtlinien auf PDF-Dokumente

Wiederherstellen des Zugriffs auf widerrufene Dokumente

Widerrufen des Zugriffs auf Dokumente mithilfe der Java-API

So widerrufen Sie mithilfe der Document Security-API (Java) den Zugriff auf ein richtliniengeschütztes PDF-Dokument:

  1. Projektdateien einschließen

    Fügen Sie Client-JAR-Dateien wie „adobe-rightsmanagement-client.jar“ in den Klassenpfad Ihres Java-Projekts ein.

  2. Erstellen eines Document Security-Client-API-Objekts

    • Erstellen Sie ein ServiceClientFactory-Objekt, das Verbindungseigenschaften enthält.
    • Erstellen Sie ein DocumentSecurityClient-Objekt, indem Sie seinen Konstruktor verwenden und das ServiceClientFactory-Objekt übergeben.
  3. Abrufen eines richtliniengeschützten PDF-Dokuments

    • Erstellen Sie ein java.io.FileInputStream-Objekt, das das richtliniengeschützte PDF-Dokument darstellt, indem Sie seinen Konstruktor verwenden und einen Zeichenfolgenwert übergeben, der den Speicherort des PDF-Dokuments angibt.
    • Erstellen Sie ein com.adobe.idp.Document-Objekt, indem Sie seinen Konstruktor verwenden und das java.io.FileInputStream-Objekt übergeben.
  4. Widerrufen des richtliniengeschützten Dokuments

    • Erstellen Sie ein DocumentManager-Objekt, indem Sie die Methode getDocumentManager des DocumentSecurityClient-Objekts aufrufen.

    • Rufen Sie den Wert der Lizenzkennung des richtliniengeschützten Dokuments ab, indem Sie die Methode getLicenseId des DocumentManager-Objekts aufrufen. Übergeben Sie das com.adobe.idp.Document-Objekt, das das richtliniengeschützte Dokument darstellt. Diese Methode gibt einen Zeichenfolgenwert zurück, der den Wert der Lizenzkennung darstellt.

    • Erstellen Sie ein LicenseManager-Objekt, indem Sie die Methode getLicenseManager des DocumentSecurityClient-Objekts aufrufen.

    • Widerrufen Sie das richtliniengeschützte Dokument, indem Sie die Methode revokeLicense des LicenseManager-Objekts aufrufen und die folgenden Werte übergeben:

      • Ein Zeichenfolgenwert, der den Wert der Lizenzkennung des richtliniengeschützten Dokuments angibt (geben Sie den Rückgabewert der Methode getLicenseId des DocumentManager-Objekts an).
      • Ein statisches Datenelement der License-Schnittstelle, die den Grund zum Widerrufen des Dokuments angibt. Sie können beispielsweise License.DOCUMENT_REVISED angeben.
      • Ein java.net.URL-Wert, der den Speicherort angibt, an dem sich ein überarbeitetes Dokument befindet. Wenn Sie einen Benutzer nicht zu einer anderen URL umleiten möchten, können Sie null übergeben.

Code-Beispiele

Code-Beispiele zur Verwendung des Document Security-Services finden Sie in den folgenden Kurzanleitungen:

  • "Schnellstart (SOAP-Modus): Widerrufen eines Dokuments mit der Java-API"

Widerrufen des Zugriffs auf Dokumente mithilfe der Webservice-API

So widerrufen Sie den Zugriff auf ein richtliniengeschütztes PDF-Dokument mithilfe der Document Security-API ( Webservice):

  1. Projektdateien einschließen

    Erstellen Sie ein Microsoft .NET-Projekt, das MTOM verwendet. Stellen Sie sicher, dass Sie die folgende WSDL-Definition verwenden: http://localhost:8080/soap/services/RightsManagementService?WSDL&lc_version=9.0.1.

    HINWEIS

    Ersetzen Sie localhost durch die IP-Adresse des Servers, auf dem AEM Forms gehostet wird.

  2. Erstellen eines Document Security-Client-API-Objekts

    • Erstellen Sie ein DocumentSecurityServiceClient-Objekt, indem Sie seinen Standardkonstruktor verwenden.

    • Erstellen Sie ein DocumentSecurityServiceClient.Endpoint.Address-Objekt, indem Sie den Konstruktor System.ServiceModel.EndpointAddress verwenden. Übergeben Sie einen Zeichenfolgenwert, der die WSDL für den AEM Forms-Service angibt (z. B. http://localhost:8080/soap/services/RightsManagementService?WSDL). Sie müssen das lc_version-Attribut nicht verwenden. Dieses Attribut wird verwendet, wenn Sie einen Service-Verweis erstellen.)

    • Erstellen Sie ein System.ServiceModel.BasicHttpBinding-Objekt durch Abrufen des Werts des Felds DocumentSecurityServiceClient.Endpoint.Binding. Wandeln Sie den Rückgabewert in BasicHttpBinding um.

    • Legen Sie das MessageEncoding-Feld des System.ServiceModel.BasicHttpBinding-Objekts auf WSMessageEncoding.Mtom fest. Dieser Wert stellt sicher, dass MTOM verwendet wird.

    • Aktivieren Sie die einfache HTTP-Authentifizierung, indem Sie die folgenden Schritte ausführen:

      • Weisen Sie dem Feld DocumentSecurityServiceClient.ClientCredentials.UserName.UserName den AEM Forms-Benutzernamen zu.
      • Weisen Sie dem Feld DocumentSecurityServiceClient.ClientCredentials.UserName.Password den entsprechenden Passwortwert zu.
      • Weisen Sie dem Feld BasicHttpBindingSecurity.Transport.ClientCredentialType den konstanten Wert HttpClientCredentialType.Basic zu.
    • Weisen Sie dem Feld BasicHttpBindingSecurity.Security.Mode den konstanten Wert BasicHttpSecurityMode.TransportCredentialOnly zu.

  3. Abrufen eines richtliniengeschützten PDF-Dokuments

    • Erstellen Sie ein Objekt BLOB, indem Sie den Konstruktor verwenden. Das BLOB-Objekt wird verwendet, um ein richtliniengeschütztes PDF-Dokument zu speichern, das widerrufen wird.
    • Erstellen Sie ein System.IO.FileStream-Objekt, indem Sie seinen Konstruktor aufrufen und einen Zeichenfolgenwert übergeben, der den Dateispeicherort des zu widerrufenden richtliniengeschützten PDF-Dokuments und den Modus darstellt, in dem die Datei geöffnet werden soll.
    • Erstellen Sie ein Byte-Array, das den Inhalt des System.IO.FileStream-Objekts speichert. Sie können die Größe des Byte-Arrays bestimmen, indem Sie die Length-Eigenschaft des System.IO.FileStream-Objekts abrufen.
    • Füllen Sie das Byte-Array mit Datenstromdaten, indem Sie die Read-Methode des System.IO.FileStream-Objekts aufrufen und ihr das Byte-Array, die Startposition und die zu lesende Datenstromlänge übergeben.
    • Füllen Sie das BLOB-Objekt, indem Sie seinem Feld MTOM den Inhalt des Byte-Arrays zuweisen.
  4. Widerrufen des richtliniengeschützten Dokuments

    • Rufen Sie den Wert der Lizenzkennung des richtliniengeschützten Dokuments ab, indem Sie die Methode getLicenseID des DocumentSecurityServiceClient-Objekts aufrufen und das BLOB-Objekt übergeben, das das richtliniengeschützte Dokument darstellt. Diese Methode gibt einen Zeichenfolgenwert zurück, der die Lizenzkennung darstellt.

    • Widerrufen Sie das richtliniengeschützte Dokument, indem Sie die Methode revokeLicense des DocumentSecurityServiceClient-Objekts aufrufen und die folgenden Werte übergeben:

      • Ein Zeichenfolgenwert, der den Wert der Lizenzkennung des richtliniengeschützten Dokuments angibt (geben Sie den Rückgabewert der Methode DocumentSecurityServiceService des getLicenseId-Objekts an).
      • Ein statisches Datenelement der Aufzählung Reason, das den Grund für das Widerrufen des Dokuments angibt. Sie können beispielsweise Reason.DOCUMENT_REVISED angeben.
      • Ein string-Wert, der den URL-Speicherort angibt, an dem sich ein überarbeitetes Dokument befindet. Wenn Sie einen Benutzer nicht zu einer anderen URL umleiten möchten, können Sie null angeben.

Code-Beispiele

Code-Beispiele zur Verwendung des Document Security-Services finden Sie in den folgenden Kurzanleitungen:

  • "Schnellstart (MTOM): Sperren eines Dokuments mithilfe der Webdienst-API"
  • "Schnellstart (SwaRef): Sperren eines Dokuments mithilfe der Webdienst-API"

Siehe auch

Entfernen von Richtlinien aus Word-Dokumenten

AEM Forms mithilfe von MTOM aufrufen

Aufrufen von AEM Forms mithilfe von SwaRef

Wiederherstellen des Zugriffs auf widerrufene Dokumente

Sie können den Zugriff auf ein widerrufenes PDF-Dokument wiederherstellen, sodass alle Kopien des widerrufenen Dokuments für Benutzer zugänglich sind. Wenn ein Benutzer ein Dokument öffnet, das widerrufen worden war und wieder freigegeben wurde, kann der Benutzer das Dokument anzeigen.

HINWEIS

Weitere Informationen zum Document Security-Service finden Sie in der Service-Referenz für AEM Forms.

Zusammenfassung der Schritte

Führen Sie die folgenden Schritte aus, um den Zugriff auf ein widerrufenes PDF-Dokument wiederherzustellen:

  1. Schließen Sie Projektdateien ein.
  2. Erstellen Sie ein Document Security-Client-API-Objekt.
  3. Rufen Sie die Lizenzkennung des widerrufenen PDF-Dokuments ab.
  4. Reaktivieren Sie den Zugriff auf das widerrufene PDF-Dokument.

Einschließen von Projektdateien

Schließen Sie die erforderlichen Dateien in Ihr Entwicklungsprojekt ein. Wenn Sie ein Client-Programm mit Java erstellen, schließen Sie die erforderlichen JAR-Dateien ein. Wenn Sie Web-Services verwenden, stellen Sie sicher, dass Sie die Proxy-Dateien einschließen.

Erstellen eines Document Security-Client-API-Objekts

Bevor Sie einen Document Security-Service-Vorgang programmatisch ausführen können, müssen Sie ein Client-Objekt für den Document Security-Service erstellen. Wenn Sie die Java-API verwenden, erstellen Sie ein DocumentSecurityClient-Objekt. Wenn Sie die Document Security-Webservice-API verwenden, erstellen Sie ein DocumentSecurityServiceService-Objekt.

Abrufen der Lizenzkennung des widerrufenen PDF-Dokuments

Sie müssen die Lizenzkennung des widerrufenen PDF-Dokuments abrufen, um ein widerrufenes PDF-Dokument erneut zugänglich machen zu können. Nachdem Sie den Wert der Lizenzkennung erhalten haben, können Sie ein widerrufenes Dokument erneut zugänglich machen. Wenn Sie versuchen, ein Dokument erneut zugänglich zu machen, das nicht widerrufen wurde, wird eine Ausnahme ausgelöst.

Wiederherstellen des Zugriffs auf das widerrufene PDF-Dokument

Um den Zugriff auf ein widerrufenes PDF-Dokument wieder zu aktivieren, müssen Sie die Lizenzkennung des widerrufenen Dokuments angeben. Wenn Sie versuchen, den Zugriff auf ein PDF-Dokument wiederherzustellen, das nicht widerrufen wurde, wird eine Ausnahme ausgelöst.

Siehe auch

Einbeziehung von AEM Forms Java-Bibliotheksdateien

Verbindungseigenschaften festlegen

Anwenden von Richtlinien auf PDF-Dokumente

Zugriff auf Dokumente sperren

Wiederherstellen des Zugriffs auf widerrufene Dokumente mithilfe der Java-API

So stellen Sie den Zugriff auf ein widerrufenes Dokument mithilfe der Document Security-API (Java) wieder her:

  1. Schließen Sie Projektdateien ein.

    Fügen Sie Client-JAR-Dateien wie „adobe-rightsmanagement-client.jar“ in den Klassenpfad Ihres Java-Projekts ein.

  2. Erstellen Sie ein Document Security-Client-API-Objekt.

    • Erstellen Sie ein ServiceClientFactory-Objekt, das Verbindungseigenschaften enthält.
    • Erstellen Sie ein DocumentSecurityClient-Objekt, indem Sie seinen Konstruktor verwenden und das ServiceClientFactory-Objekt übergeben.
  3. Rufen Sie die Lizenzkennung des widerrufenen PDF-Dokuments ab.

    • Erstellen Sie ein java.io.FileInputStream-Objekt, das das widerrufene PDF-Dokument darstellt, indem Sie seinen Konstruktor verwenden und einen Zeichenfolgenwert übergeben, der den Speicherort des PDF-Dokuments angibt.
    • Erstellen Sie ein com.adobe.idp.Document-Objekt, indem Sie seinen Konstruktor verwenden und das java.io.FileInputStream-Objekt übergeben.
    • Erstellen Sie ein DocumentManager-Objekt, indem Sie die Methode getDocumentManager des DocumentSecurityClient-Objekts aufrufen.
    • Rufen Sie den Wert der Lizenzkennung des widerrufenen Dokuments ab, indem Sie die Methode getLicenseId des DocumentManager-Objekts aufrufen und das com.adobe.idp.Document-Objekt übergeben, das das widerrufene Dokument darstellt. Diese Methode gibt einen Zeichenfolgenwert zurück, der die Lizenzkennung darstellt.
  4. Reaktivieren Sie den Zugriff auf das widerrufene PDF-Dokument.

    • Erstellen Sie ein LicenseManager-Objekt, indem Sie die Methode getLicenseManager des DocumentSecurityClient-Objekts aufrufen.
    • Stellen Sie den Zugriff auf das widerrufene PDF-Dokument wieder her, indem Sie die Methode unrevokeLicense des LicenseManager-Objekts aufrufen und den Wert der Lizenzkennung des widerrufenen Dokuments übergeben.

Code-Beispiele

Code-Beispiele zur Verwendung des Document Security-Services finden Sie in den folgenden Kurzanleitungen:

  • "Schnellstart (SOAP-Modus): Zugriff auf ein gesperrtes Dokument mit der Web-Dienst-API reaktivieren"

Wiederherstellen des Zugriffs auf widerrufene Dokumente mithilfe der Webservice-API

So stellen Sie den Zugriff auf ein widerrufenes Dokument mithilfe der Document Security-API (Webservice) wieder her:

  1. Schließen Sie Projektdateien ein.

    Erstellen Sie ein Microsoft .NET-Projekt, das MTOM verwendet. Stellen Sie sicher, dass Sie die folgende WSDL-Definition verwenden: http://localhost:8080/soap/services/RightsManagementService?WSDL&lc_version=9.0.1.

    HINWEIS

    Ersetzen Sie localhost durch die IP-Adresse des Servers, auf dem AEM Forms gehostet wird.

  2. Erstellen Sie ein Document Security-Client-API-Objekt.

    • Erstellen Sie ein DocumentSecurityServiceClient-Objekt, indem Sie seinen Standardkonstruktor verwenden.

    • Erstellen Sie ein DocumentSecurityServiceClient.Endpoint.Address-Objekt, indem Sie den Konstruktor System.ServiceModel.EndpointAddress verwenden. Übergeben Sie einen Zeichenfolgenwert, der die WSDL für den AEM Forms-Service angibt (z. B. http://localhost:8080/soap/services/RightsManagementService?WSDL). Sie müssen das lc_version-Attribut nicht verwenden. Dieses Attribut wird verwendet, wenn Sie einen Service-Verweis erstellen.)

    • Erstellen Sie ein System.ServiceModel.BasicHttpBinding-Objekt durch Abrufen des Werts des Felds DocumentSecurityServiceClient.Endpoint.Binding. Wandeln Sie den Rückgabewert in BasicHttpBinding um.

    • Legen Sie das MessageEncoding-Feld des System.ServiceModel.BasicHttpBinding-Objekts auf WSMessageEncoding.Mtom fest. Dieser Wert stellt sicher, dass MTOM verwendet wird.

    • Aktivieren Sie die einfache HTTP-Authentifizierung, indem Sie die folgenden Schritte ausführen:

      • Weisen Sie dem Feld DocumentSecurityServiceClient.ClientCredentials.UserName.UserName den AEM Forms-Benutzernamen zu.
      • Weisen Sie dem Feld DocumentSecurityServiceClient.ClientCredentials.UserName.Password den entsprechenden Passwortwert zu.
      • Weisen Sie dem Feld BasicHttpBindingSecurity.Transport.ClientCredentialType den konstanten Wert HttpClientCredentialType.Basic zu.
    • Weisen Sie dem Feld BasicHttpBindingSecurity.Security.Mode den konstanten Wert BasicHttpSecurityMode.TransportCredentialOnly zu.

  3. Rufen Sie die Lizenzkennung des widerrufenen PDF-Dokuments ab.

    • Erstellen Sie ein Objekt BLOB, indem Sie den Konstruktor verwenden. Das BLOB-Objekt wird verwendet, um ein widerrufenes PDF-Dokument zu speichern, auf das der Zugriff wiederhergestellt wird.
    • Erstellen Sie ein System.IO.FileStream-Objekt, indem Sie seinen Konstruktor aufrufen und einen Zeichenfolgenwert übergeben, der den Dateispeicherort des widerrufenen PDF-Dokuments und den Modus darstellt, in dem die Datei geöffnet werden soll.
    • Erstellen Sie ein Byte-Array, das den Inhalt des System.IO.FileStream-Objekts speichert. Sie können die Größe des Byte-Arrays bestimmen, indem Sie die Length-Eigenschaft des System.IO.FileStream-Objekts abrufen.
    • Füllen Sie das Byte-Array mit Datenstromdaten, indem Sie die Read-Methode des System.IO.FileStream-Objekts aufrufen und ihr das Byte-Array, die Startposition und die zu lesende Datenstromlänge übergeben.
    • Füllen Sie das BLOB-Objekt, indem Sie seinem Feld MTOM den Inhalt des Byte-Arrays zuweisen.
  4. Reaktivieren Sie den Zugriff auf das widerrufene PDF-Dokument.

    • Rufen Sie den Wert der Lizenzkennung des widerrufenen Dokuments ab, indem Sie die Methode getLicenseID des DocumentSecurityServiceClient-Objekts aufrufen und das BLOB-Objekt übergeben, das das widerrufene Dokument darstellt. Diese Methode gibt einen Zeichenfolgenwert zurück, der die Lizenzkennung darstellt.
    • Stellen Sie den Zugriff auf das widerrufene PDF-Dokument wieder her, indem Sie die Methode unrevokeLicense des DocumentSecurityServiceClient-Objekts aufrufen und einen Zeichenfolgenwert übergeben, der den Wert der Lizenzkennung des widerrufenen PDF-Dokuments angibt (übergeben Sie den Rückgabewert der Methode getLicenseId des DocumentSecurityServiceClient-Objekts).

Code-Beispiele

Code-Beispiele zur Verwendung des Document Security-Services finden Sie in den folgenden Kurzanleitungen:

  • "Schnellstart (MTOM): Zugriff auf ein gesperrtes Dokument mit der Web-Dienst-API reaktivieren"
  • "Schnellstart (SwaRef): Zugriff auf ein gesperrtes Dokument mit der Web-Dienst-API reaktivieren"

Siehe auch

AEM Forms mithilfe von MTOM aufrufen

Aufrufen von AEM Forms mithilfe von SwaRef

Überprüfen von richtliniengeschützten PDF-Dokumenten

Sie können die Document Security Service-API (Java und Webservice) verwenden, um richtliniengeschützte PDF-Dokumente zu überprüfen. Beim Überprüfen richtliniengeschützter PDF-Dokumente werden Informationen zum richtliniengeschützten PDF-Dokument zurückgegeben. Sie können beispielsweise die Richtlinie ermitteln, die zum Schützen des Dokuments verwendet wurde, sowie das Datum, an dem das Dokument geschützt wurde.

Sie können diese Aufgabe nicht ausführen, wenn Ihre LiveCycle-Version 8.x oder eine frühere Version ist. In AEM Forms wird die Überprüfung richtliniengeschützter Dokumente unterstützt. Wenn Sie versuchen, ein richtliniengeschütztes Dokument mit LiveCycle 8.x (oder früher) zu überprüfen, wird eine Ausnahme ausgelöst.

HINWEIS

Weitere Informationen zum Document Security-Service finden Sie in der Service-Referenz für AEM Forms.

Zusammenfassung der Schritte

Um ein richtliniengeschütztes PDF-Dokument zu überprüfen, führen Sie die folgenden Schritte aus:

  1. Schließen Sie Projektdateien ein.
  2. Erstellen Sie ein Document Security-Client-API-Objekt.
  3. Rufen Sie ein richtliniengeschütztes Dokument zum Überprüfen ab.
  4. Erhalten Sie Informationen zum richtliniengeschützten Dokument.

Einschließen von Projektdateien

Schließen Sie die erforderlichen Dateien in Ihr Entwicklungsprojekt ein. Wenn Sie ein Client-Programm mit Java erstellen, schließen Sie die erforderlichen JAR-Dateien ein. Wenn Sie Web-Services verwenden, stellen Sie sicher, dass Sie die Proxy-Dateien einschließen.

Erstellen eines Document Security-Client-API-Objekts

Bevor Sie einen Document Security-Service-Vorgang programmgesteuert durchführen können, erstellen Sie ein Document Security-Service-Client-Objekt. Wenn Sie die Java-API verwenden, erstellen Sie ein RightsManagementClient-Objekt. Wenn Sie die Document Security-Webservice-API verwenden, erstellen Sie ein RightsManagementServiceService-Objekt.

Abrufen eines richtliniengeschützten Dokuments zum Überprüfen

Um ein richtliniengeschütztes Dokument zu überprüfen, rufen Sie es ab. Wenn Sie versuchen, ein Dokument zu überprüfen, das nicht mit einer Richtlinie gesichert ist oder das widerrufen wurde, wird eine Ausnahme ausgelöst.

Überprüfen des Dokuments

Nachdem Sie ein richtliniengeschütztes Dokument abgerufen haben, können Sie es überprüfen.

Abrufen von Informationen über das richtliniengeschützte Dokument

Nachdem Sie ein richtliniengeschütztes PDF-Dokument überprüft haben, können Sie Informationen dazu abrufen. Sie können beispielsweise die Richtlinie ermitteln, die zum Schützen des Dokuments verwendet wird.

Wenn Sie ein Dokument mit einer Richtlinie schützen, die zu „Meine Richtlinien“ gehört, und dann RMInspectResult.getPolicysetName oder RMInspectResult.getPolicysetId aufrufen, wird null zurückgegeben.

Wenn das Dokument mit einer Richtlinie gesichert wird, die in einem anderen Richtliniensatz als „Meine Richtlinien“ enthalten ist, dann geben RMInspectResult.getPolicysetName und RMInspectResult.getPolicysetId gültige Zeichenfolgen zurück.

Siehe auch

Einbeziehung von AEM Forms Java-Bibliotheksdateien

Verbindungseigenschaften festlegen

Überprüfen von richtliniengeschützten PDF-Dokumenten mithilfe der Java-API

So überprüfen Sie ein richtliniengeschütztes PDF-Dokument mithilfe der Document Security Service-API (Java):

  1. Schließen Sie Projektdateien ein.

    Fügen Sie Client-JAR-Dateien wie „adobe-rightsmanagement-client.jar“ in den Klassenpfad Ihres Java-Projekts ein. Weitere Informationen über den Speicherort dieser Dateien finden Sie unter Einbeziehung von AEM Forms Java-Bibliotheksdateien.

  2. Erstellen Sie ein Document Security-Client-API-Objekt.

    • Erstellen Sie ein ServiceClientFactory-Objekt, das Verbindungseigenschaften enthält. (Siehe Einstellung von Verbindungseigenschaften.)
    • Erstellen Sie ein RightsManagementClient-Objekt, indem Sie seinen Konstruktor verwenden und das ServiceClientFactory-Objekt übergeben.
  3. Rufen Sie ein richtliniengeschütztes Dokument zum Überprüfen ab.

    • Erstellen Sie ein java.io.FileInputStream-Objekt, das das richtliniengeschützte PDF-Dokument darstellt, indem Sie seinen Konstruktor verwenden. Übergeben Sie einen Zeichenfolgenwert, der den Speicherort des PDF-Dokuments angibt.
    • Erstellen Sie ein com.adobe.idp.Document-Objekt, indem Sie seinen Konstruktor verwenden und das java.io.FileInputStream-Objekt übergeben.
  4. Überprüfen Sie das Dokument.

    • Erstellen Sie ein DocumentManager-Objekt, indem Sie die Methode getDocumentManager des RightsManagementClient-Objekts aufrufen.
    • Überprüfen Sie das richtliniengeschützte Dokument, indem Sie die Methode inspectDocument des LicenseManager-Objekts aufrufen. Übergeben Sie das com.adobe.idp.Document-Objekt, das das richtliniengeschützte PDF-Dokument enthält. Diese Methode gibt ein RMInspectResult-Objekt zurück, das Informationen zum richtliniengeschützten Dokument enthält.
  5. Erhalten Sie Informationen zum richtliniengeschützten Dokument.

    Um Informationen über das richtliniengeschützte Dokument zu erhalten, rufen Sie die entsprechende Methode auf, die zum RMInspectResult-Objekt gehört. Um beispielsweise den Namen der Richtlinie abzurufen, rufen Sie die Methode getPolicyName des RMInspectResult-Objekts auf.

Code-Beispiele

Code-Beispiele zur Verwendung des Document Security-Services finden Sie in den folgenden Kurzanleitungen:

  • "Schnellstart (SOAP-Modus): Überprüfung richtliniengeschützter PDF-Dokumente mit der Java-API"

Überprüfen von richtliniengeschützten PDF-Dokumenten mithilfe der Webservice-API

So überprüfen Sie ein richtliniengeschütztes PDF-Dokument mithilfe der Document Security Service-API (Webservice):

  1. Schließen Sie Projektdateien ein.

    Erstellen Sie ein Microsoft .NET-Projekt, das MTOM verwendet. Stellen Sie sicher, dass Sie die folgende WSDL-Definition verwenden: http://localhost:8080/soap/services/RightsManagementService?WSDL&lc_version=9.0.1.

    HINWEIS

    Ersetzen Sie localhost durch die IP-Adresse des Servers, auf dem AEM Forms gehostet wird.

  2. Erstellen Sie ein Document Security-Client-API-Objekt.

    • Erstellen Sie ein RightsManagementServiceClient-Objekt, indem Sie seinen Standardkonstruktor verwenden.

    • Erstellen Sie ein RightsManagementServiceClient.Endpoint.Address-Objekt, indem Sie den Konstruktor System.ServiceModel.EndpointAddress verwenden. Übergeben Sie einen Zeichenfolgenwert, der die WSDL für den AEM Forms-Service angibt (z. B. http://localhost:8080/soap/services/RightsManagementService?WSDL). Sie müssen das lc_version-Attribut nicht verwenden. Dieses Attribut wird verwendet, wenn Sie einen Service-Verweis erstellen.)

    • Erstellen Sie ein System.ServiceModel.BasicHttpBinding-Objekt durch Abrufen des Werts des Felds RightsManagementServiceClient.Endpoint.Binding. Wandeln Sie den Rückgabewert in BasicHttpBinding um.

    • Legen Sie das MessageEncoding-Feld des System.ServiceModel.BasicHttpBinding-Objekts auf WSMessageEncoding.Mtom fest. Dieser Wert stellt sicher, dass MTOM verwendet wird.

    • Aktivieren Sie die einfache HTTP-Authentifizierung, indem Sie die folgenden Schritte ausführen:

      • Weisen Sie dem Feld RightsManagementServiceClient.ClientCredentials.UserName.UserName den AEM Forms-Benutzernamen zu.
      • Weisen Sie dem Feld RightsManagementServiceClient.ClientCredentials.UserName.Password den entsprechenden Passwortwert zu.
      • Weisen Sie dem Feld BasicHttpBindingSecurity.Transport.ClientCredentialType den konstanten Wert HttpClientCredentialType.Basic zu.
    • Weisen Sie dem Feld BasicHttpBindingSecurity.Security.Mode den konstanten Wert BasicHttpSecurityMode.TransportCredentialOnly zu.

  3. Rufen Sie ein richtliniengeschütztes Dokument zum Überprüfen ab.

    • Erstellen Sie ein Objekt BLOB, indem Sie den Konstruktor verwenden. Das BLOB-Objekt wird zum Speichern eines zu überprüfenden PDF-Dokuments verwendet.
    • Erstellen Sie ein System.IO.FileStream-Objekt, indem Sie seinen Konstruktor verwenden. Übergeben Sie einen Zeichenfolgenwert, der den Dateispeicherort des PDF-Dokuments und den Modus zum Öffnen der Datei darstellt.
    • Erstellen Sie ein Byte-Array, das den Inhalt des System.IO.FileStream-Objekts speichert. Sie können die Größe des Byte-Arrays bestimmen, indem Sie die Eigenschaft Length des System.IO.FileStream-Objekts abrufen.
    • Füllen Sie das Byte-Array mit Stream-Daten, indem Sie die Methode Read des System.IO.FileStream-Objekts aufrufen. Übergeben Sie das Byte-Array, die Startposition und die Länge des zu lesenden Streams.
    • Füllen Sie das BLOB-Objekt, indem Sie seinem Feld MTOM den Inhalt des Byte-Arrays zuweisen.
  4. Überprüfen Sie das Dokument.

    Überprüfen Sie das richtliniengeschützte Dokument, indem Sie die Methode inspectDocument des RightsManagementServiceClient-Objekts aufrufen. Übergeben Sie das BLOB-Objekt, das das richtliniengeschützte PDF-Dokument enthält. Diese Methode gibt ein RMInspectResult-Objekt zurück, das Informationen zum richtliniengeschützten Dokument enthält.

  5. Erhalten Sie Informationen zum richtliniengeschützten Dokument.

    Um Informationen über das richtliniengeschützte Dokument zu erhalten, rufen Sie den Wert des entsprechenden Feldes ab, das zum RMInspectResult-Objekt gehört. Um beispielsweise den Namen der Richtlinie abzurufen, rufen Sie den Wert des Feldes policyName des RMInspectResult-Objekts ab.

Code-Beispiele

Code-Beispiele zur Verwendung des Document Security-Services finden Sie in den folgenden Kurzanleitungen:

  • "Schnellstart (MTOM): Untersuchen richtliniengeschützter PDF-Dokumente mithilfe der Web Service-API"
  • "Schnellstart (SwaRef): Untersuchen richtliniengeschützter PDF-Dokumente mithilfe der Web Service-API"

Siehe auch

AEM Forms mithilfe von MTOM aufrufen

Aufrufen von AEM Forms mithilfe von SwaRef

Erstellen von Wasserzeichen

Wasserzeichen tragen dazu bei, die Sicherheit eines Dokuments zu gewährleisten, indem sie das Dokument eindeutig identifizieren und die Verletzung des Urheberrechts kontrollieren. Sie können beispielsweise ein Wasserzeichen mit dem Wort „Vertraulich“ erstellen und auf jeder Seite eines Dokuments platzieren. Nachdem ein Wasserzeichen erstellt wurde, können Sie es als Teil einer Richtlinie einbeziehen. Das heißt, Sie können das Wasserzeichenattribut der Richtlinie auf das neu erstellten Wasserzeichen festlegen. Nachdem eine Richtlinie, die ein Wasserzeichen enthält, auf ein Dokument angewendet wurde, wird das Wasserzeichen im richtliniengeschützten Dokument angezeigt.

HINWEIS

Nur Benutzer mit Administratorrechten für Document Security können Wasserzeichen erstellen. Das heißt, Sie müssen einen solchen Benutzer angeben, wenn Sie Verbindungseinstellungen definieren, die zum Erstellen eines Client-Objekts des Document Security-Services erforderlich sind.

HINWEIS

Weitere Informationen zum Document Security-Service finden Sie in der Service-Referenz für AEM Forms.

Zusammenfassung der Schritte

Um ein Wasserzeichen zu erstellen, führen Sie die folgenden Schritte aus:

  1. Schließen Sie Projektdateien ein.
  2. Erstellen Sie ein Document Security-Client-API-Objekt.
  3. Legen Sie die Wasserzeichenattribute fest.
  4. Registrieren Sie das Wasserzeichen beim Document Security-Service.

Einschließen von Projektdateien

Schließen Sie die erforderlichen Dateien in Ihr Entwicklungsprojekt ein. Wenn Sie ein Client-Programm mit Java erstellen, schließen Sie die erforderlichen JAR-Dateien ein. Wenn Sie Web-Services verwenden, stellen Sie sicher, dass Sie die Proxy-Dateien einschließen.

Erstellen eines Document Security-Client-API-Objekts

Bevor Sie einen Document Security-Service-Vorgang programmatisch ausführen können, müssen Sie ein Client-Objekt für den Document Security-Service erstellen. Wenn Sie die Java-API verwenden, erstellen Sie ein RightsManagementClient-Objekt. Wenn Sie die Document Security-Webservice-API verwenden, erstellen Sie ein RightsManagementServiceService-Objekt.

Festlegen der Wasserzeichenattribute

Um ein neues Wasserzeichen zu erstellen, müssen Sie Wasserzeichenattribute festlegen. Das Namensattribut muss immer definiert sein. Zusätzlich zum Namensattribut müssen Sie mindestens eines der folgenden Attribute festlegen:

  • Benutzerdefinierter Text
  • DateIncluded
  • UserIdIncluded
  • UserNameIncluded

In der folgenden Tabelle sind Schlüssel-Wert-Paare aufgeführt, die zum Erstellen eines Wasserzeichens mithilfe von Web-Services erforderlich sind.

Schlüsselname

Beschreibung

Wert

WaterBackCmd:IS_USERNAME_ENABLED

Gibt an, ob der Benutzername des Benutzers, der das Dokument öffnet, Teil des Wasserzeichens ist.

„True“ oder „False“

WaterBackCmd:IS_USERID_ENABLED

Gibt an, ob die Kennung des Benutzers, der das Dokument öffnet, Teil des Wasserzeichens ist.

„True“ oder „False“

WaterBackCmd:IS_CURRENTDATE_ENABLED

Gibt an, ob das aktuelle Datum Teil des Wasserzeichens ist.

„True“ oder „False“

WaterBackCmd:IS_CUSTOMTEXT_ENABLED

Wenn dieser Wert „true“ ist, muss der Wert des benutzerdefinierten Textes mithilfe von WaterBackCmd:SRCTEXT angegeben werden.

„True“ oder „False“

WaterBackCmd:OPACITY

Gibt die Deckkraft des Wasserzeichens an. Der Standardwert ist 0,5, wenn er nicht angegeben ist.

Ein Wert zwischen 0,0 und 1,0.

WaterBackCmd:ROTATION

Gibt die Drehung des Wasserzeichens an. Der Standardwert ist 0 Grad.

Ein Wert zwischen 0 und 359.

WaterBackCmd:SCALE

Wenn dieser Wert angegeben wird, muss WaterBackCmd:IS_SIZE_ENABLED vorhanden sein und den Wert „true“ haben. Wenn dieses Attribut nicht angegeben wird, ist das Standardverhalten die Anpassung an die Seitengröße.

Ein Wert größer als 0.0 und kleiner gleich 1.0.

WaterBackCmd:HORIZ_ALIGN

Gibt die horizontale Ausrichtung des Wasserzeichens an. Der Standardwert ist „Zentriert“.

„Links“, „Zentriert“ oder „Rechts“

WaterBackCmd:VERT_ALIGN

Gibt die vertikale Ausrichtung des Wasserzeichens an. Der Standardwert ist „Zentriert“.

„Oben“, „Mitte“ oder „Unten“

WaterBackCmd:IS_USE_BACKGROUND

Gibt an, ob das Wasserzeichen ein Hintergrund ist. Der Standardwert lautet false.

„True“ oder „False“

WaterBackCmd:IS_SIZE_ENABLED

„True“, wenn eine benutzerdefinierte Skala angegeben ist. Wenn dieser Wert „true“ ist, muss auch „SCALE“ angegeben werden. Wenn dieser Wert „false“ ist, ist die Standardeinstellung die Anpassung an die Seitengröße.

„True“ oder „False“

WaterBackCmd:SRCTEXT

Gibt den benutzerdefinierten Text für ein Wasserzeichen an. Wenn dieser Wert vorhanden ist, dann muss WaterBackCmd:IS_CUSTOMTEXT_ENABLED ebenfalls vorhanden sein und auf „true“ gesetzt sein.

„True“ oder „False“

Für alle Wasserzeichen muss eines der folgenden Attribute definiert sein:

  • WaterBackCmd:IS_USERNAME_ENABLED
  • WaterBackCmd:IS_USERID_ENABLED
  • WaterBackCmd:IS_CURRENTDATE_ENABLED
  • WaterBackCmd:IS_CUSTOMTEXT_ENABLED

Alle anderen Attribute sind optional.

Registrieren des Wasserzeichens

Ein neues Wasserzeichen muss beim Document Security-Service registriert werden, bevor es verwendet werden kann. Nachdem Sie ein Wasserzeichen registriert haben, können Sie es in Richtlinien verwenden.

Siehe auch

Einbeziehung von AEM Forms Java-Bibliotheksdateien

Verbindungseigenschaften festlegen

Anwenden von Richtlinien auf PDF-Dokumente

Erstellen von Wasserzeichen mithilfe der Java-API

So erstellen Sie ein Wasserzeichen mithilfe der Document Security-API (Java):

  1. Schließen Sie Projektdateien ein.

    Fügen Sie Client-JAR-Dateien wie adobe-rightsmanagement-client.jar in den Klassenpfad Ihres Java-Projekts ein.

  2. Erstellen Sie ein Document Security-Client-API-Objekt.

    • Erstellen Sie ein ServiceClientFactory-Objekt, das Verbindungseigenschaften enthält.
    • Erstellen Sie ein RightsManagementClient-Objekt, indem Sie seinen Konstruktor verwenden und das ServiceClientFactory-Objekt übergeben.
  3. Festlegen der Wasserzeichenattribute

    • Erstellen Sie ein Watermark-Objekt, indem Sie die statische createWatermark-Methode des InfomodelObjectFactory-Objekts aufrufen. Diese Methode gibt ein Watermark-Objekt zurück.
    • Legen Sie das Namensattribut des Wasserzeichens fest, indem Sie die setName-Methode des Watermark-Objekts aufrufen und ihr einen Zeichenfolgenwert übergeben, der den Richtliniennamen angibt.
    • Legen Sie das Hintergrundattribut des Wasserzeichens fest, indem Sie die setBackground-Methode des Watermark-Objekts aufrufen und ihr true übergeben. Wenn Sie dieses Attribut festlegen, wird das Wasserzeichen im Hintergrund des Dokuments angezeigt.
    • Legen Sie das Attribut für den benutzerdefinierten Text des Wasserzeichens fest, indem Sie die setCustomText-Methode des Watermark-Objekts aufrufen und ihr einen Zeichenfolgenwert übergeben, der den Text des Wasserzeichens darstellt.
    • Legen Sie das Attribut für die Deckkraft des Wasserzeichens fest, indem Sie die setOpacity-Methode des Watermark-Objekts aufrufen und ihr einen ganzzahligen Wert übergeben, der die Deckkraft angibt. Der Wert 100 bedeutet, dass das Wasserzeichen vollständig undurchsichtig ist, und der Wert 0 bedeutet, dass das Wasserzeichen vollständig transparent ist.
  4. Registrieren Sie das Wasserzeichen.

    • Erstellen Sie ein WatermarkManager-Objekt, indem Sie die getWatermarkManager-Methode des RightsManagementClient-Objekts aufrufen. Diese Methode gibt ein WatermarkManager-Objekt zurück.
    • Registrieren Sie das Wasserzeichen, indem Sie die registerWatermark-Methode des WatermarkManager-Objekts aufrufen und ihr das Watermark-Objekt, das das zu registrierende Wasserzeichen darstellt, übergeben. Diese Methode gibt einen Zeichenfolgenwert zurück, der den Identifizierungswert des Wasserzeichens darstellt.

Code-Beispiele

Code-Beispiele zur Verwendung des Document Security-Services finden Sie in den folgenden Kurzanleitungen:

  • "Schnellstart (SOAP-Modus): Erstellen eines Wasserzeichens mit der Java-API"

Erstellen von Wasserzeichen mit der Web-Service-API

Erstellen Sie ein Wasserzeichen mithilfe der Document Security-API (Web-Service):

  1. Erstellen Sie ein Document Security-Client-API-Objekt.

    Erstellen Sie ein Microsoft .NET-Projekt, das MTOM verwendet. Stellen Sie sicher, dass Sie die folgende WSDL-Definition verwenden: http://localhost:8080/soap/services/RightsManagementService?WSDL&lc_version=9.0.1.

    HINWEIS

    Ersetzen Sie localhost durch die IP-Adresse des Servers, auf dem AEM Forms gehostet wird.

  2. Erstellen Sie ein Document Security-Client-API-Objekt.

    • Erstellen Sie ein RightsManagementServiceClient-Objekt, indem Sie seinen Standardkonstruktor verwenden.

    • Erstellen Sie ein RightsManagementServiceClient.Endpoint.Address-Objekt, indem Sie den Konstruktor System.ServiceModel.EndpointAddress verwenden. Übergeben Sie einen Zeichenfolgenwert, der die WSDL für den AEM Forms-Service angibt (z. B. http://localhost:8080/soap/services/RightsManagementService?WSDL). Sie müssen das lc_version-Attribut nicht verwenden. Dieses Attribut wird verwendet, wenn Sie einen Service-Verweis erstellen.)

    • Erstellen Sie ein System.ServiceModel.BasicHttpBinding-Objekt durch Abrufen des Werts des Felds RightsManagementServiceClient.Endpoint.Binding. Wandeln Sie den Rückgabewert in BasicHttpBinding um.

    • Legen Sie das MessageEncoding-Feld des System.ServiceModel.BasicHttpBinding-Objekts auf WSMessageEncoding.Mtom fest. Dieser Wert stellt sicher, dass MTOM verwendet wird.

    • Aktivieren Sie die einfache HTTP-Authentifizierung, indem Sie die folgenden Schritte ausführen:

      • Weisen Sie dem Feld RightsManagementServiceClient.ClientCredentials.UserName.UserName den AEM Forms-Benutzernamen zu.
      • Weisen Sie dem Feld RightsManagementServiceClient.ClientCredentials.UserName.Password den entsprechenden Passwortwert zu.
      • Weisen Sie dem Feld BasicHttpBindingSecurity.Transport.ClientCredentialType den konstanten Wert HttpClientCredentialType.Basic zu.
    • Weisen Sie dem Feld BasicHttpBindingSecurity.Security.Mode den konstanten Wert BasicHttpSecurityMode.TransportCredentialOnly zu.

  3. Legen Sie die Wasserzeichenattribute fest.

    • Erstellen Sie ein WatermarkSpec-Objekt, indem Sie den Konstruktor WatermarkSpec aufrufen.
    • Legen Sie den Namen des Wasserzeichens fest, indem Sie dem Datenelement name des WatermarkSpec-Objekts einen Zeichenfolgenwert zuweisen.
    • Legen Sie das id-Attribut des Wasserzeichens fest, indem Sie dem Datenelement id des WatermarkSpec-Objekts einen Zeichenfolgenwert zuweisen.
    • Erstellen Sie für jede festzulegende Wasserzeicheneigenschaft ein separates MyMapOf_xsd_string_To_xsd_anyType_Item-Objekt.
    • Legen Sie den Schlüsselwert fest, indem Sie dem Datenelement key des MyMapOf_xsd_string_To_xsd_anyType_Item-Objekts einen Wert zuweisen (z. B. WaterBackCmd:OPACITY)).
    • Legen Sie den Wert fest, indem Sie dem Datenelement value des MyMapOf_xsd_string_To_xsd_anyType_Item-Objekts einen Wert zuweisen (z. B. .25).
    • Erstellen Sie ein MyArrayOf_xsd_anyType-Objekt. Rufen Sie für jedes MyMapOf_xsd_string_To_xsd_anyType_Item-Objekt die Add-Methode des MyArrayOf_xsd_anyType-Objekts auf. Übergeben Sie das MyMapOf_xsd_string_To_xsd_anyType_Item-Objekt.
    • Weisen Sie das MyArrayOf_xsd_anyType-Objekt dem Datenelement values des WatermarkSpec-Objekts zu.
  4. Registrieren Sie das Wasserzeichen.

    Registrieren Sie das Wasserzeichen, indem Sie die registerWatermark-Methode des RightsManagementServiceClient-Objekts aufrufen und ihr das WatermarkSpec-Objekt, das das zu registrierende Wasserzeichen darstellt, übergeben.

Code-Beispiele

Code-Beispiele zur Verwendung des Document Security-Services finden Sie in den folgenden Kurzanleitungen:

  • "Schnellstart (MTOM): Erstellen eines Wasserzeichens mithilfe der Webdienst-API"
  • "Schnellstart (SwaRef): Erstellen eines Wasserzeichens mithilfe der Webdienst-API"

Siehe auch

AEM Forms mithilfe von MTOM aufrufen

Aufrufen von AEM Forms mithilfe von SwaRef

Ändern von Wasserzeichen

Sie können ein vorhandenes Wasserzeichen mithilfe der Document Security Java-API oder der Web-Service-API ändern. Sie nehmen Änderungen an einem vorhandenen Wasserzeichen vor, indem Sie es abrufen, seine Attribute ändern und es dann auf dem Server aktualisieren. Angenommen, Sie rufen ein Wasserzeichen ab und ändern dessen Attribut für die Deckkraft. Die Änderung wird erst wirksam, nachdem Sie das Wasserzeichen aktualisiert haben.

Wenn Sie ein Wasserzeichen ändern, wirkt sich die Änderung auf zukünftige Dokumente aus, auf die das Wasserzeichen angewendet wird. Vorhandene PDF-Dokumente, die das Wasserzeichen enthalten, sind also nicht betroffen.

HINWEIS

Nur Benutzer mit Administratorrechten für Document Security können Wasserzeichen ändern. Das heißt, Sie müssen einen solchen Benutzer angeben, wenn Sie Verbindungseinstellungen definieren, die zum Erstellen eines Client-Objekts des Document Security-Services erforderlich sind.

HINWEIS

Weitere Informationen zum Document Security-Service finden Sie in der Service-Referenz für AEM Forms.

Zusammenfassung der Schritte

Gehen Sie wie folgt vor, um ein Wasserzeichen zu ändern:

  1. Schließen Sie Projektdateien ein.
  2. Erstellen Sie ein Document Security-Client-API-Objekt.
  3. Rufen Sie das zu ändernde Wasserzeichen ab.
  4. Legen Sie die Wasserzeichenattribute fest.
  5. Aktualisieren Sie das Wasserzeichen.

Projektdateien einbinden

Schließen Sie die erforderlichen Dateien in Ihr Entwicklungsprojekt ein. Wenn Sie ein Client-Programm mit Java erstellen, schließen Sie die erforderlichen JAR-Dateien ein. Wenn Sie Web-Services verwenden, stellen Sie sicher, dass Sie die Proxy-Dateien einschließen.

Erstellen eines Document Security-Client-API-Objekts

Bevor Sie einen Document Security-Service-Vorgang programmatisch ausführen können, müssen Sie ein Client-Objekt für den Document Security-Service erstellen. Wenn Sie die Java-API verwenden, erstellen Sie ein DocumentSecurityClient-Objekt. Wenn Sie die Document Security-Web-Service-API verwenden, erstellen Sie ein DocumentSecurityServiceService-Objekt.

Das zu ändernde Wasserzeichen abrufen

Um ein Wasserzeichen zu ändern, müssen Sie ein vorhandenes Wasserzeichen abrufen. Sie können ein Wasserzeichen abrufen, indem Sie dessen Namen oder dessen Kennungswert angeben.

Wasserzeichenattribute festlegen

Um ein vorhandenes Wasserzeichen zu ändern, ändern Sie den Wert eines oder mehrerer Wasserzeichenattribute. Wenn Sie ein Wasserzeichen mithilfe eines Web-Service programmgesteuert aktualisieren, müssen Sie auch dann alle ursprünglich definierten Attribute festlegen, wenn sich der Wert nicht ändert. Angenommen, die folgenden Wasserzeichenattribute sind festgelegt: WaterBackCmd:IS_USERID_ENABLED, WaterBackCmd:IS_CUSTOMTEXT_ENABLED, WaterBackCmd:OPACITY und WaterBackCmd:SRCTEXT. Selbst wenn Sie nur das Attribut WaterBackCmd:OPACITY ändern möchten, müssen Sie auch die anderen Werte festlegen.

HINWEIS

Wenn Sie die Java-API zum Ändern eines Wasserzeichens verwenden, müssen Sie nicht alle Attribute angeben. Legen Sie das Wasserzeichenattribut fest, das Sie ändern möchten.

HINWEIS

Weitere Informationen zu den Namen der Wasserzeichenattribute finden Sie unter Erstellen von Wasserzeichen.

Wasserzeichen aktualisieren

Nachdem Sie die Attribute eines Wasserzeichens geändert haben, müssen Sie das Wasserzeichen aktualisieren.

Siehe auch

Einbeziehung von AEM Forms Java-Bibliotheksdateien

Verbindungseigenschaften festlegen

Erstellen von Wasserzeichen

Ändern von Wasserzeichen mithilfe der Java-API

So ändern Sie ein Wasserzeichen mithilfe der Document Security-API (Java):

  1. Schließen Sie Projektdateien ein.

    Fügen Sie Client-JAR-Dateien wie „adobe-rightsmanagement-client.jar“ in den Klassenpfad Ihres Java-Projekts ein.

  2. Erstellen Sie ein Document Security-Client-API-Objekt.

    • Erstellen Sie ein ServiceClientFactory-Objekt, das Verbindungseigenschaften enthält.
    • Erstellen Sie ein DocumentSecurityClient-Objekt, indem Sie seinen Konstruktor verwenden und das ServiceClientFactory-Objekt übergeben.
  3. Rufen Sie das zu ändernde Wasserzeichen ab.

    Erstellen Sie ein WatermarkManager-Objekt, indem Sie die Methode getWatermarkManager des DocumentSecurityClient-Objekts aufrufen und einen Zeichenfolgenwert übergeben, der den Namen des Wasserzeichens angibt. Diese Methode gibt ein Watermark-Objekt zurück, das das zu ändernde Wasserzeichen darstellt.

  4. Legen Sie die Wasserzeichenattribute fest.

    Legen Sie das Attribut für die Deckkraft des Wasserzeichens fest, indem Sie die Methode setOpacity des Watermark-Objekts aufrufen und einen ganzzahligen Wert übergeben, der die Deckkraftstufe angibt. Der Wert 100 bedeutet, dass das Wasserzeichen vollständig undurchsichtig ist, und der Wert 0 bedeutet, dass das Wasserzeichen vollständig transparent ist.

    HINWEIS

    In diesem Beispiel wird nur das Attribut für die Deckkraft geändert.

  5. Aktualisieren Sie das Wasserzeichen.

    • Aktualisieren Sie das Wasserzeichen, indem Sie die Methode updateWatermark des WatermarkManager-Objekts aufrufen und das Watermark-Objekt übergeben, dessen Attribut geändert wurde.

Code-Beispiele

Code-Beispiele, die den Document Security-Service verwenden, finden Sie im Abschnitt „Schnellstart (SOAP-Modus): Ändern eines Wasserzeichens mithilfe der Java-API“.

Ändern von Wasserzeichen mithilfe der Webservice-API

Ändern eines Wasserzeichens mithilfe der Document Security-API (Webservice):

  1. Schließen Sie Projektdateien ein.

    Erstellen Sie ein Microsoft .NET-Projekt, das MTOM verwendet. Stellen Sie sicher, dass Sie die folgende WSDL-Definition verwenden: http://localhost:8080/soap/services/RightsManagementService?WSDL&lc_version=9.0.1.

    HINWEIS

    Ersetzen Sie localhost durch die IP-Adresse des Servers, auf dem AEM Forms gehostet wird.

  2. Erstellen Sie ein Document Security-Client-API-Objekt.

    • Erstellen Sie ein DocumentSecurityServiceClient-Objekt, indem Sie seinen Standardkonstruktor verwenden.

    • Erstellen Sie ein RightsManagementServiceClient.Endpoint.Address-Objekt, indem Sie den Konstruktor System.ServiceModel.EndpointAddress verwenden. Übergeben Sie einen Zeichenfolgenwert, der die WSDL für den AEM Forms-Service angibt (z. B. http://localhost:8080/soap/services/DocumentSecurityService?WSDL). Sie müssen das lc_version-Attribut nicht verwenden. Dieses Attribut wird verwendet, wenn Sie einen Service-Verweis erstellen.)

    • Erstellen Sie ein System.ServiceModel.BasicHttpBinding-Objekt durch Abrufen des Werts des Felds DocumentSecurityServiceClient.Endpoint.Binding. Wandeln Sie den Rückgabewert in BasicHttpBinding um.

    • Legen Sie das MessageEncoding-Feld des System.ServiceModel.BasicHttpBinding-Objekts auf WSMessageEncoding.Mtom fest. Dieser Wert stellt sicher, dass MTOM verwendet wird.

    • Aktivieren Sie die einfache HTTP-Authentifizierung, indem Sie die folgenden Schritte ausführen:

      • Weisen Sie dem Feld DocumentSecurityServiceClient.ClientCredentials.UserName.UserName den AEM Forms-Benutzernamen zu.
      • Weisen Sie dem Feld DocumentSecurityServiceClient.ClientCredentials.UserName.Password den entsprechenden Passwortwert zu.
      • Weisen Sie dem Feld BasicHttpBindingSecurity.Transport.ClientCredentialType den konstanten Wert HttpClientCredentialType.Basic zu.
    • Weisen Sie den Konstantenwert BasicHttpSecurityMode.TransportCredentialOnly zum BasicHttpBindingSecurity.Security.Mode-Feld zu.

  3. Rufen Sie das zu ändernde Wasserzeichen ab.

    Rufen Sie das zu ändernde Wasserzeichen ab, indem Sie die getWatermarkByName-Methode des DocumentSecurityServiceClient-Objekts aufrufen. Übergeben Sie einen Zeichenfolgenwert, der den Namen des Wasserzeichens angibt. Diese Methode gibt ein WatermarkSpec-Objekt zurück, das das zu ändernde Wasserzeichen darstellt.

  4. Legen Sie die Wasserzeichenattribute fest.

    • Erstellen Sie für jede zu aktualisierende Wasserzeicheneigenschaft ein separates MyMapOf_xsd_string_To_xsd_anyType_Item-Objekt.
    • Legen Sie den Schlüsselwert fest, indem Sie dem key-Datenelement des MyMapOf_xsd_string_To_xsd_anyType_Item-Objekts einen Wert zuweisen (z. B. WaterBackCmd:OPACITY)).
    • Legen Sie den Wert fest, indem Sie dem Datenelement value des MyMapOf_xsd_string_To_xsd_anyType_Item-Objekts einen Wert zuweisen (z. B. .50).
    • Erstellen Sie ein MyArrayOf_xsd_anyType-Objekt. Rufen Sie für jedes MyMapOf_xsd_string_To_xsd_anyType_Item-Objekt die Add-Methode des MyArrayOf_xsd_anyType-Objekts auf. Übergeben Sie das MyMapOf_xsd_string_To_xsd_anyType_Item-Objekt.
    • Weisen Sie das MyArrayOf_xsd_anyType-Objekt zum values-Datenelement des WatermarkSpec-Objekts zu.
  5. Aktualisieren Sie das Wasserzeichen.

    Aktualisieren Sie das Wasserzeichen, indem Sie die updateWatermark-Methode des DocumentSecurityServiceClient-Objekts aufrufen und das WatermarkSpec-Objekt übergeben, das das zu ändernde Wasserzeichen darstellt.

Code-Beispiele

Code-Beispiele, die den Document Security-Service verwenden, finden Sie in folgendem Schnellstart:

  • "Schnellstart (MTOM): Ändern eines Wasserzeichens mithilfe der Webdienst-API"

Suchen nach Ereignissen

Der Rights Management-Service verfolgt bestimmte Aktionen, während sie auftreten, z. B. das Anwenden einer Richtlinie auf ein Dokument, das Öffnen eines richtliniengeschützten Dokuments und das Sperren des Zugriffs auf Dokumente. Die Ereignisprüfung muss für den Rights Management-Service aktiviert sein, sonst werden Ereignisse nicht verfolgt.

Ereignisse werden in die folgenden Kategorien unterteilt:

  • Administratorereignisse sind Aktionen, die sich auf einen Administrator beziehen, z. B. die Erstellung eines neuen Administratorkontos.
  • Dokumentereignisse sind Aktionen im Zusammenhang mit einem Dokument, z. B. das Schließen eines richtliniengeschützten Dokuments.
  • Richtlinienereignisse sind Aktionen im Zusammenhang mit einer Richtlinie, z. B. die Erstellung einer neuen Richtlinie.
  • Service-Ereignisse sind Aktionen im Zusammenhang mit dem Rights Management-Service, z. B. die Synchronisierung mit dem Benutzerverzeichnis.

Sie können mit der Rights Management-Java-API oder der Webservice-API nach bestimmten Ereignissen suchen. Durch die Suche nach Ereignissen können Sie Aufgaben ausführen, z. B. eine Protokolldatei bestimmter Ereignisse erstellen.

HINWEIS

Weitere Informationen zum Rights Management-Service finden Sie in der Service-Referenz für AEM Forms.

Zusammenfassung der Schritte

Um nach einem Rights Management-Ereignis zu suchen, führen Sie die folgenden Schritte aus:

  1. Schließen Sie Projektdateien ein.
  2. Erstellen Sie ein Rights Management-Client-API-Objekt.
  3. Geben Sie das Ereignis an, nach dem gesucht werden soll.
  4. Suchen Sie nach dem Ereignis.

Einschließen von Projektdateien

Schließen Sie die erforderlichen Dateien in Ihr Entwicklungsprojekt ein. Wenn Sie ein Client-Programm mit Java erstellen, schließen Sie die erforderlichen JAR-Dateien ein. Wenn Sie Web-Services verwenden, stellen Sie sicher, dass Sie die Proxy-Dateien einschließen.

Erstellen eines Rights Management-Client-API-Objekts

Bevor Sie einen Rights Management-Service-Vorgang programmgesteuert durchführen können, müssen Sie ein Client-Objekt für den Rights Management-Service erstellen. Wenn Sie die Java-API verwenden, erstellen Sie ein DocumentSecurityClient-Objekt. Wenn Sie die Rights Management-Webservice-API verwenden, erstellen Sie ein DocumentSecurityServiceService-Objekt.

Geben Sie die Ereignisse an, nach denen gesucht werden soll

Sie müssen das zu suchende Ereignis angeben. Sie können beispielsweise nach dem Richtlinienerstellungsereignis suchen, das beim Erstellen einer neuen Richtlinie auftritt.

Suchen nach dem Ereignis

Nachdem Sie das zu suchende Ereignis angegeben haben, können Sie entweder die Rights Management Java-API oder die Rights Management-Webservice-API verwenden, um nach dem Ereignis zu suchen.

Siehe auch

Einbeziehung von AEM Forms Java-Bibliotheksdateien

Verbindungseigenschaften festlegen

Suchen nach Ereignissen mithilfe der Java-API

So suchen Sie mithilfe der Rights Management-API (Java) nach Ereignissen:

  1. Projektdateien einschließen

    Fügen Sie Client-JAR-Dateien wie „adobe-rightsmanagement-client.jar“ in den Klassenpfad Ihres Java-Projekts ein.

  2. Erstellen eines Rights Management-Client-API-Objekts

    Erstellen Sie ein DocumentSecurityClient-Objekt, indem Sie seinen Konstruktor verwenden und ein ServiceClientFactory-Objekt übergeben, das Verbindungseigenschaften enthält.

  3. Angeben der Ereignisse, nach denen gesucht werden soll

    • Erstellen Sie ein EventManager-Objekt, indem Sie die Methode getEventManager des DocumentSecurityClient-Objekts aufrufen. Diese Methode gibt ein EventManager-Objekt zurück.
    • Erstellen Sie ein EventSearchFilter-Objekt, indem Sie seinen Konstruktor aufrufen.
    • Geben Sie das Ereignis an, nach dem gesucht werden soll, indem Sie die Methode setEventCode des EventSearchFilter-Objekts aufrufen und ein statisches Datenelement der Klasse EventManager übergeben, das das Ereignis darstellt, nach dem gesucht werden soll. Um beispielsweise nach dem Richtlinienerstellungsereignis zu suchen, übergeben Sie EventManager.POLICY_CREATE_EVENT.
    HINWEIS

    Sie können zusätzliche Suchkriterien definieren, indem Sie die Methoden des EventSearchFilter-Objekts aufrufen. Rufen Sie beispielsweise die Methode setUserName auf, um einen mit dem Ereignis verknüpften Benutzer anzugeben.

  4. Suchen nach dem Ereignis

    Suchen Sie nach dem Ereignis, indem Sie die Methode searchForEvents des EventManager-Objekts aufrufen und das EventSearchFilter-Objekt übergeben, das die Suchkriterien für das Ereignis definiert. Diese Methode gibt ein Array von Event-Objekten zurück.

Code-Beispiele

Code-Beispiele, die den Rights Management-Service verwenden, finden Sie in den folgenden Kurzanleitungen:

  • "Schnellstart (SOAP): Suchen nach Ereignissen mit der Java-API"

Suchen nach Ereignissen mithilfe der Webservice-API

So suchen Sie mithilfe der Rights Management-API (Webservice) nach Ereignissen:

  1. Projektdateien einschließen

    Erstellen Sie ein Microsoft .NET-Projekt, das MTOM verwendet. Stellen Sie sicher, dass Sie die folgende WSDL-Definition verwenden: http://localhost:8080/soap/services/RightsManagementService?WSDL&lc_version=9.0.1.

    HINWEIS

    Ersetzen Sie localhost durch die IP-Adresse des Servers, auf dem AEM Forms gehostet wird.

  2. Erstellen eines Rights Management-Client-API-Objekts

    • Erstellen Sie ein DocumentSecurityServiceClient-Objekt, indem Sie seinen Standardkonstruktor verwenden.

    • Erstellen Sie ein DocumentSecurityServiceClient.Endpoint.Address-Objekt, indem Sie den Konstruktor System.ServiceModel.EndpointAddress verwenden. Übergeben Sie einen Zeichenfolgenwert, der die WSDL für den AEM Forms-Service angibt (z. B. http://localhost:8080/soap/services/RightsManagementService?WSDL). Sie müssen das lc_version-Attribut nicht verwenden. Dieses Attribut wird verwendet, wenn Sie einen Service-Verweis erstellen.)

    • Erstellen Sie ein System.ServiceModel.BasicHttpBinding-Objekt durch Abrufen des Werts des Felds DocumentSecurityServiceClient.Endpoint.Binding. Wandeln Sie den Rückgabewert in BasicHttpBinding um.

    • Legen Sie das MessageEncoding-Feld des System.ServiceModel.BasicHttpBinding-Objekts auf WSMessageEncoding.Mtom fest. Dieser Wert stellt sicher, dass MTOM verwendet wird.

    • Aktivieren Sie die einfache HTTP-Authentifizierung, indem Sie die folgenden Schritte ausführen:

      • Weisen Sie dem Feld DocumentSecurityServiceClient.ClientCredentials.UserName.UserName den AEM Forms-Benutzernamen zu.
      • Weisen Sie dem Feld DocumentSecurityServiceClient.ClientCredentials.UserName.Password den entsprechenden Passwortwert zu.
      • Weisen Sie dem Feld BasicHttpBindingSecurity.Transport.ClientCredentialType den konstanten Wert HttpClientCredentialType.Basic zu.
    • Weisen Sie dem Feld BasicHttpBindingSecurity.Security.Mode den konstanten Wert BasicHttpSecurityMode.TransportCredentialOnly zu.

  3. Angeben der Ereignisse, nach denen gesucht werden soll

    • Erstellen Sie ein EventSpec-Objekt, indem Sie seinen Konstruktor verwenden.
    • Geben Sie den Beginn des Zeitraums an, in dem das Ereignis aufgetreten ist, indem Sie das Datenelement firstTime.date des EventSpec-Objekts auf die DataTime-Instanz festlegen, die den Beginn des Datumsbereichs zum Zeitpunkt des Ereignisses darstellt.
    • Weisen Sie dem Datenelement firstTime.dateSpecified des EventSpec-Objekts den Wert true zu.
    • Geben Sie das Ende des Zeitraums an, in dem das Ereignis aufgetreten ist, indem Sie das Datenelement lastTime.date des EventSpec-Objekts auf die DataTime-Instanz festlegen, die das Ende des Datumsbereichs zum Zeitpunkt des Ereignisses darstellt.
    • Weisen Sie dem Datenelement lastTime.dateSpecified des EventSpec-Objekts den Wert true zu.
    • Legen Sie das zu suchende Ereignis fest, indem Sie dem Datenelement eventCode des EventSpec-Objekts einen Zeichenfolgenwert zuweisen. In der folgenden Tabelle sind die numerischen Werte aufgeführt, die Sie dieser Eigenschaft zuweisen können:

    Ereignistyp

    Wert

    ALL_EVENTS

    999

    USER_CHANGE_PASSWORD_EVENT

    1000

    USER_REGISTER_EVENT

    1001

    USER_PREREGISTER_EVENT

    1002

    USER_ACTIVATE_EVENT

    1003

    USER_DEACTIVATE_EVENT

    1004

    USER_AUTHENTICATE_EVENT

    1005

    USER_AUTHENTICATE_DENY_EVENT

    1006

    USER_ACCOUNT_LOCK_EVENT

    1007

    USER_DELETE_EVENT

    1008

    USER_UPDATE_PROFILE_EVENT

    1009

    DOCUMENT_VIEW_EVENT

    2.000

    DOCUMENT_PRINT_LOW_EVENT

    2001

    DOCUMENT_PRINT_HIGH_EVENT

    2002

    DOCUMENT_SIGN_EVENT

    2003

    DOCUMENT_ADD_ANNOTATION_EVENT

    2004

    DOCUMENT_FORM_FILL_EVENT

    2005

    DOCUMENT_CLOSE_EVENT

    2006

    DOCUMENT_MODIFY_EVENT

    2007

    DOCUMENT_CHANGE_SECURITY_HANDLER_EVENT

    2008

    DOCUMENT_SWITCH_POLICY_EVENT

    2009

    DOCUMENT_REVOKE_EVENT

    2010

    $1

    2011

    DOCUMENT_SECURE_EVENT

    2012

    DOCUMENT_UNKNOWN_CLIENT_EVENT

    2013

    DOCUMENT_CHANGE_REVOKE_URL_EVENT

    2014

    POLICY_CHANGE_EVENT

    3000

    POLICY_ENABLE_EVENT

    3001

    POLICY_DISABLE_EVENT

    3002

    POLICY_CREATE_EVENT

    3003

    POLICY_DELETE_EVENT

    3004

    POLICY_CHANGE_OWNER_EVENT

    3005

    SERVER_CLIENT_SYNC_EVENT

    4000

    SERVER_SYNC_DIR_INFO_EVENT

    4001

    SERVER_SYNC_DIR_COMPLETE_EVENT

    4002

    SERVER_VERSION_MISMATCH_EVENT

    4003

    SERVER_CONFIG_CHANGE_EVENT

    4004

    SERVER_ENABLE_OFFLINE_ACCESS_EVENT

    4005

    ADMIN_ADD_EVENT

    5.000

    ADMIN_DELETE_EVENT

    5001

    ADMIN_EDIT_EVENT

    5002

    ADMIN_ACTIVATE_EVENT

    5003

    ADMIN_DEACTIVATE_EVENT

    5004

    ERROR_DIRECTORY_SERVICE_EVENT

    6.000

    CREATED_POLICYSET_EVENT

    7000

    DELETED_POLICYSET_EVENT

    7001

    MODIFIED_POLICYSET_EVENT

    7002

  4. Suchen nach dem Ereignis

    Suchen Sie nach dem Ereignis, indem Sie die searchForEvents-Methode des DocumentSecurityServiceClient-Objekts aufrufen und ihr das EventSpec-Objekt übergeben, das das zu suchende Ereignis und die maximale Anzahl von Ergebnissen darstellt. Diese Methode gibt eine MyArrayOf_xsd_anyType-Sammlung zurück, in der jedes Element eine AuditSpec-Instanz ist. Mithilfe einer AuditSpec-Instanz können Sie Informationen zum Ereignis abrufen, z. B. den Zeitpunkt, zu dem es aufgetreten ist. Die AuditSpec-Instanz enthält ein timestamp-Datenelement, das diese Informationen angibt.

Code-Beispiele

Code-Beispiele, die den Rights Management-Service verwenden, finden Sie in den folgenden Kurzanleitungen:

  • "Schnellstart (MTOM): Suchen nach Ereignissen mithilfe der Webdienst-API"
  • "Schnellstart (SwaRef): Suchen nach Ereignissen mithilfe der Webdienst-API"

Siehe auch

AEM Forms mithilfe von MTOM aufrufen

Aufrufen von AEM Forms mithilfe von SwaRef

Anwenden von Richtlinien auf Word-Dokumente

Neben PDF-Dokumenten unterstützt der Rights Management-Service auch weitere Dokumentenformate wie Microsoft Word-Dokumente (DOC-Dateien) und andere Microsoft Office-Dateiformate. Sie können beispielsweise eine Richtlinie auf ein Word-Dokument anwenden, um es zu schützen. Durch Anwendung einer Richtlinie auf ein Word-Dokument können Sie den Zugriff auf das Dokument einschränken. Sie können eine Richtlinie nicht auf ein Dokument anwenden, das bereits durch eine Richtlinie geschützt ist.

Sie können die Verwendung eines richtliniengeschützten Word-Dokuments nach dessen Verteilung überwachen. Das heißt, Sie können sehen, wie das Dokument verwendet wird und wer es verwendet. Sie können zum Beispiel herausfinden, wann jemand das Dokument geöffnet hat.

HINWEIS

Weitere Informationen zum Document Security-Service finden Sie in der Service-Referenz für AEM Forms.

Zusammenfassung der Schritte

So wenden Sie eine Richtlinie auf ein Word-Dokument an:

  1. Schließen Sie Projektdateien ein.
  2. Erstellen Sie ein Document Security-Client-API-Objekt.
  3. Rufen Sie ein Word-Dokument ab, auf das eine Richtlinie angewendet werden soll.
  4. Wenden Sie eine vorhandene Richtlinie auf das Word-Dokument an.
  5. Speichern Sie das richtliniengeschützte Word-Dokument.

Projektdateien einbinden

Schließen Sie die erforderlichen Dateien in Ihr Entwicklungsprojekt ein. Wenn Sie ein Client-Programm mit Java erstellen, schließen Sie die erforderlichen JAR-Dateien ein. Wenn Sie Web-Services verwenden, stellen Sie sicher, dass Sie die Proxy-Dateien einschließen.

Erstellen eines Document Security Client-API-Objekts

Bevor Sie einen Document Security-Service-Vorgang programmatisch ausführen können, müssen Sie ein Client-Objekt für den Document Security-Service erstellen.

Abrufen eines Word-Dokuments

Sie müssen ein Word-Dokument abrufen, um eine Richtlinie anwenden zu können. Nachdem Sie eine Richtlinie auf das Word-Dokument angewendet haben, sind Benutzer bei der Verwendung des Dokuments eingeschränkt. Wenn die Richtlinie beispielsweise nicht das Öffnen des Dokuments im Offline-Modus ermöglicht, müssen die Benutzer online sein, um das Dokument zu öffnen.

Vorhandene Richtlinie auf das Word-Dokument anwenden

Um eine Richtlinie auf ein Word-Dokument anzuwenden, müssen Sie auf eine vorhandene Richtlinie verweisen und angeben, zu welchem Richtliniensatz die Richtlinie gehört. Der Benutzer, der die Verbindungseigenschaften festlegt, muss Zugriff auf die angegebene Richtlinie haben. Andernfalls wird eine Ausnahme ausgelöst.

Word-Dokument speichern

Nachdem der Document Security-Service eine Richtlinie auf ein Word-Dokument angewendet hat, können Sie das richtliniengeschützte Word-Dokument als DOC-Datei speichern.

Siehe auch

Einbeziehung von AEM Forms Java-Bibliotheksdateien

Verbindungseigenschaften festlegen

Zugriff auf Dokumente sperren

Eine Richtlinie auf ein Word-Dokument mithilfe der Java-API anwenden

Wenden Sie mithilfe der Document Security-API (Java) eine Richtlinie auf ein Word-Dokument an:

  1. Schließen Sie Projektdateien ein.

    Fügen Sie Client-JAR-Dateien wie „adobe-rightsmanagement-client.jar“ in den Klassenpfad Ihres Java-Projekts ein.

  2. Erstellen Sie ein Document Security-Client-API-Objekt.

    • Erstellen Sie ein ServiceClientFactory-Objekt, das Verbindungseigenschaften enthält.
    • Erstellen Sie ein DocumentSecurityClient-Objekt, indem Sie seinen Konstruktor verwenden und das ServiceClientFactory-Objekt übergeben.
  3. Rufen Sie ein Word-Dokument ab.

    • Erstellen Sie ein java.io.FileInputStream-Objekt, das das Word-Dokument darstellt, indem Sie den Konstruktor aufrufen und einen Zeichenfolgenwert übergeben, der den Speicherort des Word-Dokuments angibt.
    • Erstellen Sie ein com.adobe.idp.Document-Objekt, indem Sie seinen Konstruktor verwenden und das java.io.FileInputStream-Objekt übergeben.
  4. Wenden Sie eine vorhandene Richtlinie auf das Word-Dokument an.

    • Erstellen Sie ein DocumentManager-Objekt, indem Sie die getDocumentManager-Methode des DocumentSecurityClient-Objekts aufrufen.

    • Wenden Sie eine Richtlinie auf das Word-Dokument an, indem Sie die protectDocument-Methode des DocumentManager-Objekts aufrufen und die folgenden Werte übergeben:

      • Das com.adobe.idp.Document-Objekt, das das Word-Dokument enthält, auf das die Richtlinie angewendet wird.
      • Einen Zeichenfolgenwert, der die Versionsnummer des Dokuments angibt.
      • Einen Zeichenfolgenwert, der den Namen des Satzes angibt, zu dem die Richtlinie gehört. Sie können einen null-Wert angeben, der dazu führt, dass der Richtliniensatz MyPolicies verwendet wird.
      • Einen Zeichenfolgenwert, der den Richtliniennamen angibt.
      • Einen Zeichenfolgenwert für den Namen die User Manager-Domain des Benutzers, der Herausgeber des Dokuments ist. Dieser Parameterwert ist optional und kann null sein. (Wenn dieser Parameter null ist, muss der nächste Parameterwert null sein.)
      • Ein Zeichenfolgenwert für den kanonischen Namen des User Manager-Benutzers, der Herausgeber des Dokuments ist. Dieser Parameterwert ist optional und kann null sein (wenn dieser Parameter null ist, muss der vorherige Parameterwert null sein).
      • Ein com.adobe.livecycle.rightsmanagement.Locale-Objekt, die das Gebietsschema darstellt, das für die Auswahl der MS Office-Vorlage verwendet wird. Dieser Parameterwert ist optional und Sie können null angeben.

      Die protectDocument-Methode gibt ein RMSecureDocumentResult-Objekt zurück, das das richtliniengeschützte Word-Dokument enthält.

  5. Speichern Sie das Word-Dokument.

    • Rufen Sie die getProtectedDoc-Methode des RMSecureDocumentResult-Objekts auf, um das richtliniengeschützte Word-Dokument abzurufen. Diese Methode gibt ein com.adobe.idp.Document-Objekt zurück.
    • Erstellen Sie ein java.io.File-Objekt und stellen Sie sicher, dass die Dateierweiterung DOC lautet.
    • Rufen Sie die copyToFile-Methode des com.adobe.idp.Document-Objekts auf, um den Inhalt des Document-Objekts in die Datei zu kopieren (stellen Sie sicher, dass Sie das Document-Objekt, das von der getProtectedDoc-Methode zurückgegeben wird, verwenden).

Code-Beispiele

Code-Beispiele, die den Document Security-Service verwenden, finden Sie in folgendem Schnellstart:

  • "Schnellstart (SOAP-Modus): Anwenden einer Richtlinie auf ein Word-Dokument mithilfe der Java-API"

Eine Richtlinie auf ein Word-Dokument mithilfe der Web Service-API anwenden

Wenden Sie mithilfe der Document Security-API (Web-Service) eine Richtlinie auf ein Word-Dokument an:

  1. Schließen Sie Projektdateien ein.

    Erstellen Sie ein Microsoft .NET-Projekt, das MTOM verwendet. Stellen Sie sicher, dass Sie die folgende WSDL-Definition verwenden: http://localhost:8080/soap/services/DocumentSecurityService?WSDL&lc_version=9.0.1.

    HINWEIS

    Ersetzen Sie localhost durch die IP-Adresse des Servers, auf dem AEM Forms gehostet wird.

  2. Erstellen Sie ein Document Security-Client-API-Objekt.

    • Erstellen Sie ein DocumentSecurityServiceClient-Objekt, indem Sie seinen Standardkonstruktor verwenden.

    • Erstellen Sie ein DocumentSecurityServiceClient.Endpoint.Address-Objekt, indem Sie den Konstruktor System.ServiceModel.EndpointAddress verwenden. Übergeben Sie einen Zeichenfolgenwert, der die WSDL für den AEM Forms-Service angibt (z. B. http://localhost:8080/soap/services/DocumentSecurityService?WSDL). Sie müssen das lc_version-Attribut nicht verwenden. Dieses Attribut wird verwendet, wenn Sie einen Service-Verweis erstellen.)

    • Erstellen Sie ein System.ServiceModel.BasicHttpBinding-Objekt durch Abrufen des Werts des Felds DocumentSecurityServiceClient.Endpoint.Binding. Wandeln Sie den Rückgabewert in BasicHttpBinding um.

    • Legen Sie das MessageEncoding-Feld des System.ServiceModel.BasicHttpBinding-Objekts auf WSMessageEncoding.Mtom fest. Dieser Wert stellt sicher, dass MTOM verwendet wird.

    • Aktivieren Sie die einfache HTTP-Authentifizierung, indem Sie die folgenden Schritte ausführen:

      • Weisen Sie dem Feld DocumentSecurityServiceClient.ClientCredentials.UserName.UserName den AEM Forms-Benutzernamen zu.
      • Weisen Sie dem Feld DocumentSecurityServiceClient.ClientCredentials.UserName.Password den entsprechenden Passwortwert zu.
      • Weisen Sie dem Feld BasicHttpBindingSecurity.Transport.ClientCredentialType den konstanten Wert HttpClientCredentialType.Basic zu.
    • Weisen Sie dem Feld BasicHttpBindingSecurity.Security.Mode den konstanten Wert BasicHttpSecurityMode.TransportCredentialOnly zu.

  3. Rufen Sie ein Word-Dokument ab.

    • Erstellen Sie ein Objekt BLOB, indem Sie den Konstruktor verwenden. Das BLOB-Objekt wird zum Speichern eines Word-Dokuments verwendet, auf das eine Richtlinie angewendet wird.
    • Erstellen Sie ein System.IO.FileStream-Objekt, indem Sie seinen Konstruktor aufrufen und einen Zeichenfolgenwert übergeben, der den Dateispeicherort des Word-Dokuments und den Modus darstellt, in dem die Datei geöffnet werden soll.
    • Erstellen Sie ein Byte-Array, das den Inhalt des System.IO.FileStream-Objekts speichert. Ermitteln Sie die Größe des Byte-Arrays, indem Sie die Length-Eigenschaft des System.IO.FileStream-Objekts abrufen.
    • Füllen Sie das Byte-Array mit Stream-Daten, indem Sie die Methode Read des System.IO.FileStream-Objekts aufrufen. Übergeben Sie das Byte-Array, die Startposition und die zu lesende Datenstromlänge.
    • Füllen Sie das BLOB-Objekt, indem Sie seinem Feld MTOM den Inhalt des Byte-Arrays zuweisen.
  4. Wenden Sie eine vorhandene Richtlinie auf das Word-Dokument an.

    Wenden Sie eine Richtlinie auf das Word-Dokument an, indem Sie die Methode protectDocument des DocumentSecurityServiceClient-Objekts aufrufen und die folgenden Werte übergeben:

    • Das BLOB-Objekt, das das Word-Dokument enthält, auf das die Richtlinie angewendet wird.
    • Einen Zeichenfolgenwert, der die Versionsnummer des Dokuments angibt.
    • Einen Zeichenfolgenwert, der den Namen des Satzes angibt, zu dem die Richtlinie gehört. Sie können einen null-Wert angeben, der dazu führt, dass der Richtliniensatz MyPolicies verwendet wird.
    • Einen Zeichenfolgenwert, der den Richtliniennamen angibt.
    • Einen Zeichenfolgenwert für den Namen die User Manager-Domain des Benutzers, der Herausgeber des Dokuments ist. Dieser Parameterwert ist optional und kann null sein. (Wenn dieser Parameter null ist, muss der nächste Parameterwert null sein).
    • Ein Zeichenfolgenwert für den kanonischen Namen des User Manager-Benutzers, der Herausgeber des Dokuments ist. Dieser Parameterwert ist optional und kann null sein. (Wenn dieser Parameter null ist, muss der vorherige Parameterwert null sein).
    • Ein RMLocale-Wert, der den Gebietsschemawert angibt (z. B. RMLocale.en).
    • Ein Zeichenfolgen-Ausgabeparameter, der zum Speichern des Richtlinienkennungswerts verwendet wird.
    • Ein Zeichenfolgen-Ausgabeparameter, der zum Speichern des Werts der richtliniengeschützten Kennung verwendet wird.
    • Ein Zeichenfolgen-Ausgabeparameter, der zum Speichern des MIME-Typs verwendet wird (z. B. application/doc).

    Die Methode protectDocument gibt ein BLOB-Objekt zurück, das das richtliniengeschützte Word-Dokument enthält.

  5. Speichern Sie das Word-Dokument.

    • Erstellen Sie ein System.IO.FileStream-Objekt, indem Sie seinen Konstruktor aufrufen und einen Zeichenfolgenwert übergeben, der den Dateispeicherort des richtliniengeschützten Word-Dokuments darstellt.
    • Erstellen Sie ein Byte-Array, das den Dateninhalt des BLOB-Objekts speichert, das von der Methode protectDocument zurückgegeben wurde. Füllen Sie das Byte-Array, indem Sie den Wert des MTOM-Datenelements des BLOB-Objekts abrufen.
    • Erstellen Sie ein System.IO.BinaryWriter-Objekt, indem Sie seinen Konstruktor aufrufen und das System.IO.FileStream-Objekt übergeben.
    • Schreiben Sie den Inhalt des Byte-Arrays in eine Word-Datei, indem Sie die Methode Write des System.IO.BinaryWriter-Objekts aufrufen und das Byte-Array übergeben.

Code-Beispiele

Code-Beispiele, die den Document Security-Service verwenden, finden Sie in folgendem Schnellstart:

  • "Schnellstart (MTOM): Anwenden einer Richtlinie auf ein Word-Dokument mithilfe der Webdienst-API "

Entfernen von Richtlinien aus Word-Dokumenten

Sie können eine Richtlinie aus einem richtliniengeschützten Word-Dokument entfernen, um die Sicherheit aus dem Dokument zu entfernen. Das heißt, Sie möchten nicht mehr, dass das Dokument durch eine Richtlinie geschützt wird. Wenn Sie ein richtliniengeschütztes Word-Dokument mit einer neueren Richtlinie aktualisieren möchten, ist es effizienter, die Richtlinie zu wechseln, anstatt die Richtlinie zu entfernen und die aktualisierte Richtlinie hinzuzufügen.

HINWEIS

Weitere Informationen zum Document Security-Service finden Sie in der Service-Referenz für AEM Forms.

Zusammenfassung der Schritte

Um eine Richtlinie aus einem richtliniengeschützten Word-Dokument zu entfernen, führen Sie die folgenden Schritte aus:

  1. Projektdateien einschließen
  2. Erstellen Sie ein Document Security-Client-API-Objekt.
  3. Rufen Sie ein richtliniengeschütztes Word-Dokument ab.
  4. Entfernen Sie die Richtlinie aus dem Word-Dokument.
  5. Speichern Sie die ungesicherten Word-Dokumente.

Einschließen von Projektdateien

Schließen Sie die erforderlichen Dateien in Ihr Entwicklungsprojekt ein. Wenn Sie ein Client-Programm mit Java erstellen, schließen Sie die erforderlichen JAR-Dateien ein. Wenn Sie Web-Services verwenden, stellen Sie sicher, dass Sie die Proxy-Dateien einschließen.

Erstellen eines Document Security-Client-API-Objekts

Bevor Sie einen Document Security Service-Vorgang programmgesteuert durchführen können, erstellen Sie ein Document Security Service-Client-Objekt.

Abrufen eines richtliniengeschützten Word-Dokuments

Sie müssen ein richtliniengeschütztes Word-Dokument abrufen, um eine Richtlinie entfernen zu können. Wenn Sie versuchen, eine Richtlinie aus einem Word-Dokument zu entfernen, das gar nicht durch eine Richtlinie geschützt ist, wird eine Ausnahme verursacht.

Entfernen der Richtlinie aus dem Word-Dokument

Sie können eine Richtlinie aus einem richtliniengeschützten Word-Dokument entfernen, sofern in den Verbindungseinstellungen ein Administrator angegeben ist. Wenn dies nicht der Fall ist, muss die zum Sichern eines Dokuments verwendete Richtlinie die Berechtigung SWITCH_POLICY enthalten, um eine Richtlinie aus einem Word-Dokument entfernen zu können. Außerdem muss der in den AEM Forms-Verbindungseinstellungen angegebene Benutzer über diese Berechtigung verfügen. Andernfalls wird eine Ausnahme ausgelöst.

Speichern des ungesicherten Word-Dokuments

Nachdem der Document Security-Webservice eine Richtlinie aus einem Word-Dokument entfernt hat, können Sie das ungesicherte Word-Dokument als DOC-Datei speichern.

Siehe auch

Einbeziehung von AEM Forms Java-Bibliotheksdateien

Verbindungseigenschaften festlegen

Anwenden von Richtlinien auf Word-Dokumente

Entfernen einer Richtlinie aus einem Word-Dokument mithilfe der Java-API

So entfernen Sie mithilfe der Document Security-API (Java) eine Richtlinie aus einem richtliniengeschützten Word-Dokument:

  1. Projektdateien einschließen

    Fügen Sie Client-JAR-Dateien wie „adobe-rightsmanagement-client.jar“ in den Klassenpfad Ihres Java-Projekts ein.

  2. Erstellen eines Document Security-Client-API-Objekts

    • Erstellen Sie ein ServiceClientFactory-Objekt, das Verbindungseigenschaften enthält.
    • Erstellen Sie ein RightsManagementClient-Objekt, indem Sie seinen Konstruktor verwenden und das ServiceClientFactory-Objekt übergeben.
  3. Abrufen eines richtliniengeschützten Word-Dokuments

    • Erstellen Sie ein java.io.FileInputStream-Objekt, das das richtliniengeschützte Word-Dokument darstellt, indem Sie seinen Konstruktor verwenden und einen Zeichenfolgenwert übergeben, der den Speicherort des Word-Dokuments angibt.
    • Erstellen Sie ein com.adobe.idp.Document-Objekt, indem Sie seinen Konstruktor verwenden und das java.io.FileInputStream-Objekt übergeben.
  4. Entfernen der Richtlinie aus dem Word-Dokument

    • Erstellen Sie ein DocumentManager-Objekt, indem Sie die Methode getDocumentManager des RightsManagementClient-Objekts aufrufen.
    • Entfernen Sie eine Richtlinie aus dem Word-Dokument, indem Sie die Methode removeSecurity des DocumentManager-Objekts aufrufen und das com.adobe.idp.Document-Objekt übergeben, das das richtliniengeschützte Word-Dokument enthält. Diese Methode gibt ein com.adobe.idp.Document-Objekt zurück, das ein ungesichertes Word-Dokument enthält.
  5. Speichern des ungesicherten Word-Dokuments

    • Erstellen Sie ein java.io.File-Objekt und stellen Sie sicher, dass die Dateierweiterung .doc ist.
    • Rufen Sie die copyToFile-Methode des Document-Objekts auf, um den Inhalt des Document-Objekts in die Datei zu kopieren (stellen Sie sicher, dass Sie das Document-Objekt, das von der removeSecurity-Methode zurückgegeben wird, verwenden).

Code-Beispiele

Code-Beispiele, die den Document Security-Service verwenden, finden Sie in folgendem Schnellstart:

  • "Schnellstart (SOAP-Modus): Entfernen einer Richtlinie aus einem Word-Dokument mit der Java-API "

Entfernen einer Richtlinie aus einem Word-Dokument mithilfe der Webservice-API

So entfernen Sie mithilfe der Document Security-API (Webservice) eine Richtlinie aus einem richtliniengeschützten Word-Dokument:

  1. Projektdateien einschließen

    Erstellen Sie ein Microsoft .NET-Projekt, das MTOM verwendet. Stellen Sie sicher, dass Sie die folgende WSDL-Definition verwenden: http://localhost:8080/soap/services/RightsManagementService?WSDL&lc_version=9.0.1.

    HINWEIS

    Ersetzen Sie localhost durch die IP-Adresse des Servers, auf dem AEM Forms gehostet wird.

  2. Erstellen eines Document Security-Client-API-Objekts

    • Erstellen Sie ein RightsManagementServiceClient-Objekt, indem Sie seinen Standardkonstruktor verwenden.

    • Erstellen Sie ein RightsManagementServiceClient.Endpoint.Address-Objekt, indem Sie den Konstruktor System.ServiceModel.EndpointAddress verwenden. Übergeben Sie einen Zeichenfolgenwert, der die WSDL für den AEM Forms-Service angibt (z. B. http://localhost:8080/soap/services/RightsManagementService?WSDL). Sie müssen das lc_version-Attribut nicht verwenden. Dieses Attribut wird verwendet, wenn Sie einen Service-Verweis erstellen.)

    • Erstellen Sie ein System.ServiceModel.BasicHttpBinding-Objekt durch Abrufen des Werts des Felds RightsManagementServiceClient.Endpoint.Binding. Wandeln Sie den Rückgabewert in BasicHttpBinding um.

    • Legen Sie das MessageEncoding-Feld des System.ServiceModel.BasicHttpBinding-Objekts auf WSMessageEncoding.Mtom fest. Dieser Wert stellt sicher, dass MTOM verwendet wird.

    • Aktivieren Sie die einfache HTTP-Authentifizierung, indem Sie die folgenden Schritte ausführen:

      • Weisen Sie dem Feld RightsManagementServiceClient.ClientCredentials.UserName.UserName den AEM Forms-Benutzernamen zu.
      • Weisen Sie dem Feld RightsManagementServiceClient.ClientCredentials.UserName.Password den entsprechenden Passwortwert zu.
      • Weisen Sie dem Feld BasicHttpBindingSecurity.Transport.ClientCredentialType den konstanten Wert HttpClientCredentialType.Basic zu.
    • Weisen Sie dem Feld BasicHttpBindingSecurity.Security.Mode den konstanten Wert BasicHttpSecurityMode.TransportCredentialOnly zu.

  3. Abrufen eines richtliniengeschützten Word-Dokuments

    • Erstellen Sie ein Objekt BLOB, indem Sie den Konstruktor verwenden. Das BLOB-Objekt wird zum Speichern des richtliniengeschützten Word-Dokuments verwendet, aus dem die Richtlinie entfernt wird.
    • Erstellen Sie ein System.IO.FileStream-Objekt, indem Sie seinen Konstruktor aufrufen und einen Zeichenfolgenwert übergeben, der den Dateispeicherort des Word-Dokuments und den Modus darstellt, in dem die Datei geöffnet werden soll.
    • Erstellen Sie ein Byte-Array, das den Inhalt des System.IO.FileStream-Objekts speichert. Sie können die Größe des Byte-Arrays bestimmen, indem Sie die Length-Eigenschaft des System.IO.FileStream-Objekts abrufen.
    • Füllen Sie das Byte-Array mit Datenstromdaten, indem Sie die Read-Methode des System.IO.FileStream-Objekts aufrufen und ihr das Byte-Array, die Startposition und die zu lesende Datenstromlänge übergeben.
    • Füllen Sie das BLOB-Objekt, indem Sie seinem Feld MTOM den Inhalt des Byte-Arrays zuweisen.
  4. Entfernen der Richtlinie aus dem Word-Dokument

    Entfernen Sie die Richtlinie aus dem Word-Dokument, indem Sie die Methode removePolicySecurity des RightsManagementServiceClient-Objekts aufrufen und das BLOB-Objekt übergeben, das das richtliniengeschützte Word-Dokument enthält. Diese Methode gibt ein BLOB-Objekt zurück, das ein ungesichertes Word-Dokument enthält.

  5. Speichern des ungesicherten Word-Dokuments

    • Erstellen Sie ein System.IO.FileStream-Objekt, indem Sie seinen Konstruktor aufrufen und einen Zeichenfolgenwert übergeben, der den Dateispeicherort des ungesicherten Word-Dokuments darstellt.
    • Erstellen Sie ein Byte-Array, das den Dateninhalt des BLOB-Objekts speichert, das von der Methode removePolicySecurity zurückgegeben wurde. Füllen Sie das Byte-Array, indem Sie den Wert aus dem MTOM-Feld des BLOB-Objekts abrufen.
    • Erstellen Sie ein System.IO.BinaryWriter-Objekt, indem Sie seinen Konstruktor aufrufen und das System.IO.FileStream-Objekt übergeben.

Code-Beispiele

Code-Beispiele, die den Document Security-Service verwenden, finden Sie in folgendem Schnellstart:

  • "Schnellstart (MTOM): Entfernen einer Richtlinie aus einem Word-Dokument mithilfe der Webdienst-API"

Siehe auch

AEM Forms mithilfe von MTOM aufrufen

Auf dieser Seite