Verwalten von Benutzern

Über User Management

Sie können die User Management-API verwenden, um Client-Programme zu erstellen, die Rollen, Berechtigungen und Prinzipale (die Benutzer oder Gruppen sein können) verwalten und Benutzer authentifizieren können. Die User Management-API besteht aus den folgenden AEM Forms-APIs:

  • Directory Manager Service-API
  • Authentication Manager Service-API
  • Authorization Manager Service-API

Mit User Management können Sie Rollen und Berechtigungen zuweisen, entfernen und festlegen. Außerdem können Sie Domains, Benutzer und Gruppen zuweisen, entfernen und abfragen. Schließlich können Sie User Management auch verwenden, um Benutzer zu authentifizieren.

In Hinzufügen von Benutzern Sie erfahren, wie Sie Benutzer programmatisch hinzufügen. In diesem Abschnitt wird die Directory Manager Service-API verwendet.

In Löschen von Benutzern erfahren Sie, wie Sie Benutzer programmgesteuert löschen. In diesem Abschnitt wird die Directory Manager Service-API verwendet.

In Verwalten von Benutzern und Gruppen werden Sie den Unterschied zwischen einem lokalen Benutzer und einem Verzeichnisbenutzer verstehen und Beispiele für die Verwendung der Java- und Webservice-APIs zur programmgesteuerten Verwaltung von Benutzern und Gruppen sehen. In diesem Abschnitt wird die Directory Manager Service-API verwendet.

In Verwalten von Rollen und Berechtigungen lernen Sie die Systemrollen und -berechtigungen kennen und erfahren, wie Sie diese programmgesteuert erweitern können. Außerdem sehen Sie Beispiele, wie Sie die Java- und Webservice-APIs verwenden können, um Rollen und Berechtigungen programmgesteuert zu verwalten. In diesem Abschnitt werden sowohl die Directory Manager Service-API als auch die Authorization Manager Service-API verwendet.

In Benutzerauthentifizierung sehen Sie Beispiele für die Verwendung der Java- und Webservice-APIs zur programmgesteuerten Authentifizierung von Benutzern. In diesem Abschnitt wird die Authorization Manager Service-API verwendet.

Grundlagen zum Authentifizierungsprozess

User Management bietet integrierte Authentifizierungsfunktionen und gibt Ihnen außerdem die Möglichkeit, eine Verbindung zu Ihrem eigenen Authentifizierungsanbieter herzustellen. Wenn User Management eine Authentifizierungsanfrage erhält (z. B. ein Benutzer versucht, sich anzumelden), werden Benutzerinformationen zur Authentifizierung an den Authentifizierungsanbieter weitergeleitet. User Management erhält die Ergebnisse vom Authentifizierungsanbieter, nachdem er den Benutzer authentifiziert hat.

Das folgende Diagramm zeigt die Interaktion zwischen einem Endbenutzer, der versucht, sich anzumelden, User Management und dem Authentifizierungsanbieter.

mu_mu_umauth_process

In der folgenden Tabelle werden die einzelnen Schritte des Authentifizierungsprozesses beschrieben.

Schritt

Beschreibung

1

Ein Benutzer versucht, sich bei einem Service anzumelden, der User Management aufruft. Der Benutzer gibt einen Benutzernamen und ein Kennwort an.

2

User Management sendet den Benutzernamen und das Kennwort sowie Konfigurationsinformationen an den Authentifizierungsanbieter.

3

Der Authentifizierungsanbieter stellt eine Verbindung zum Benutzerspeicher her und authentifiziert den Benutzer.

4

Der Authentifizierungsanbieter gibt die Ergebnisse an User Management zurück.

5

User Management ermöglicht dem Benutzer entweder die Anmeldung oder verweigert den Zugriff auf das Produkt.

HINWEIS

Wenn die Zeitzone des Servers von der Zeitzone des Clients abweicht und der WSDL-Service für den Generate PDF-Service von AEM Forms auf einem nativen SOAP-Stapel mit einem .NET-Client auf einem WebSphere-Programm-Server-Cluster verwendet wird, kann der folgende User Management-Authentifizierungsfehler auftreten:

[com.adobe.idp.um.webservices.WSSecurityHandler] errorCode:12803 errorCodeHEX:0x3203 message:WSSecurityHandler: UM authenticate returns exception : An error was discovered processing the <wsse:Security> header. (WSSecurityEngine: Invalid timestamp The security semantics of message have expired).

Grundlegendes zur Verzeichnisverwaltung

User Management wird mit einem Verzeichnis-Service (DirectoryManagerService) geliefert, der Verbindungen zu LDAP-Verzeichnissen unterstützt. Wenn Ihr Unternehmen zum Speichern von Benutzerdatensätzen ein Nicht-LDAP-Repository verwendet, können Sie einen eigenen Verzeichnis-Service erstellen, der mit Ihrem Repository funktioniert.

Verzeichnis-Services rufen auf Anfrage von User Management Einträge aus einem Benutzerspeicher ab. User Management speichert regelmäßig Benutzer- und Gruppendatensätze in der Datenbank zwischen, um die Leistung zu verbessern.

Der Verzeichnis-Service kann verwendet werden, um die User Management-Datenbank mit dem Benutzerspeicher zu synchronisieren. Dieser Schritt stellt sicher, dass alle Benutzerverzeichnisinformationen sowie alle Benutzer- und Gruppendatensätze auf dem neuesten Stand sind.

Darüber hinaus bietet Ihnen der DirectoryManagerService die Möglichkeit, Domains zu erstellen und zu verwalten. Domains definieren unterschiedliche Benutzerbasen. Die Begrenzung einer Domain wird in der Regel entsprechend der Struktur Ihrer Organisation oder der Einrichtung Ihres Benutzerspeichers definiert. User Management-Domains bieten Konfigurationseinstellungen, die von Authentifizierungsanbietern und Anbietern von Verzeichnis-Services verwendet werden.

In der Konfigurations-XML, die von User Management exportiert wird, enthält der Stammknoten mit dem Attributwert Domains ein XML-Element für jede Domain, die für User Management definiert ist. Jedes dieser Elemente enthält andere Elemente, die Aspekte der Domain definieren, die bestimmten Service-Anbietern zugeordnet sind.

Grundlegendes zu objectSID-Werten

Bei der Verwendung von Active Directory ist es wichtig zu verstehen, dass ein objectSID-Wert kein eindeutiges Attribut über mehrere Domains hinweg ist. Dieser Wert speichert die Sicherheitskennung eines Objekts. In einer Umgebung mit mehreren Domains (z. B. einer Baumstruktur von Domains) kann der objectSID-Wert anders sein.

Ein objectSID-Wert würde sich ändern, wenn ein Objekt von einer Active Directory-Domain in eine andere Domain verschoben wird. Einige Objekte haben überall in der Domain den gleichen objectSID-Wert. Beispielsweise hätten Gruppen wie „BUILTIN\Administrators“, „BUILTIN\Power Users“ usw. denselben objectSID-Wert, unabhängig von den Domains. Diese objectSID-Werte sind bekannt.

Hinzufügen von Benutzern

Sie können die Directory Manager Service-API (Java und Webservice) verwenden, um programmgesteuert Benutzer zu AEM Forms hinzuzufügen. Nachdem Sie einen Benutzer hinzugefügt haben, können Sie diesen Benutzer beim Ausführen eines Service-Vorgangs verwenden, für den ein Benutzer erforderlich ist. Beispielsweise können Sie dem neuen Benutzer eine Aufgabe zuweisen.

Zusammenfassung der Schritte

Um einen Benutzer hinzuzufügen, führen Sie die folgenden Schritte aus:

  1. Schließen Sie Projektdateien ein.
  2. Erstellen Sie einen DirectoryManagerService-Client.
  3. Definieren Sie Benutzerinformationen.
  4. Fügen Sie den Benutzer zu AEM Forms hinzu.
  5. Überprüfen Sie, dass der Benutzer hinzugefügt wurde.

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, schließen Sie die Proxy-Dateien ein.

Erstellen eines DirectoryManagerService-Clients

Bevor Sie einen Directory Manager Service-Vorgang programmgesteuert durchführen können, erstellen Sie einen Directory Manager Service-API-Client.

Definieren von Benutzerinformationen

Wenn Sie einen neuen Benutzer mithilfe der Directory Manager Service-API hinzufügen, definieren Sie Informationen für diesen Benutzer. Wenn Sie einen neuen Benutzer hinzufügen, definieren Sie normalerweise die folgenden Werte:

  • Domain-Name: Die Domain, zu der der Benutzer gehört (z. B. DefaultDom).
  • Benutzerkennungswert: Der Kennungswert des Benutzers (z. B. wblue).
  • Prinzipaltyp: Der Typ des Benutzers (Sie können beispielsweise USER) angeben).
  • Vorname: Ein Vorname für den Benutzer (z. B. Wendy).
  • Nachname: Der Familienname des Benutzers (z. B. Blue)).
  • Gebietsschema: Gebietsschema-Informationen für den Benutzer.

Hinzufügen des Benutzers zu AEM Forms

Nachdem Sie Benutzerinformationen definiert haben, können Sie den Benutzer zu AEM Forms hinzufügen. Um einen Benutzer hinzuzufügen, rufen Sie die Methode DirectoryManagerServiceClient des createLocalUser-Objekts auf.

Überprüfen, ob der Benutzer hinzugefügt wurde

Sie können überprüfen, ob der Benutzer hinzugefügt wurde, um sicherzustellen, dass keine Probleme aufgetreten sind. Suchen Sie den neuen Benutzer mithilfe des Wertes der Benutzerkennung.

Siehe auch

Hinzufügen von Benutzern mithilfe der Java-API

Hinzufügen von Benutzern mithilfe der Webservice-API

Einbeziehung von AEM Forms Java-Bibliotheksdateien

Verbindungseigenschaften festlegen

Löschen von Benutzern

Hinzufügen von Benutzern mithilfe der Java-API

So fügen Sie Benutzer mithilfe der Directory Manager Service-API (Java) hinzu:

  1. Schließen Sie Projektdateien ein.

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

  2. Erstellen Sie einen DirectoryManagerServices-Client.

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

  3. Definieren Sie Benutzerinformationen.

    • Erstellen Sie ein Objekt UserImpl, indem Sie den Konstruktor verwenden.
    • Legen Sie den Domain-Namen fest, indem Sie die Methode setDomainName des UserImpl-Objekts aufrufen. Übergeben Sie einen Zeichenfolgenwert, der den Domain-Namen angibt.
    • Legen Sie den Prinzipaltyp fest, indem Sie die setPrincipalType-Methode des UserImpl-Objekts aufrufen. Übergeben Sie einen Zeichenfolgenwert, der den Typ des Benutzers angibt. Sie können beispielsweise USER angeben.
    • Legen Sie den Wert der Benutzerkennung fest, indem Sie die setUserid-Methode des UserImpl-Objekts aufrufen. Übergeben Sie einen Zeichenfolgenwert, der den Wert der Benutzerkennung angibt. Sie können beispielsweise wblue angeben.
    • Legen Sie den kanonischen Namen fest, indem Sie die setCanonicalName-Methode des UserImpl-Objekts aufrufen. Übergeben Sie einen Zeichenfolgenwert, der den kanonischen Namen des Benutzers angibt. Sie können beispielsweise wblue angeben.
    • Legen Sie den Vornamen fest, indem Sie die setGivenName-Methode des UserImpl-Objekts aufrufen. Übergeben Sie einen Zeichenfolgenwert, der den Vornamen des Benutzers angibt. Sie können beispielsweise Wendy angeben.
    • Legen Sie den Familiennamen fest, indem Sie die setFamilyName-Methode des UserImpl-Objekts aufrufen. Übergeben Sie einen Zeichenfolgenwert, der den Familiennamen des Benutzers angibt. Sie können beispielsweise Blue angeben.
    HINWEIS

    Rufen Sie eine Methode auf, die zum UserImpl-Objekt gehört, um andere Werte festzulegen. Sie können beispielsweise den Wert des Gebietsschemas festlegen, indem Sie die setLocale-Methode des UserImpl-Objekts aufrufen.

  4. Fügen Sie den Benutzer zu AEM Forms hinzu.

    Rufen Sie die createLocalUser-Methode des DirectoryManagerServiceClient-Objekts auf und übergeben Sie die folgenden Werte:

    • Das UserImpl-Objekt, das den neuen Benutzer darstellt
    • Einen Zeichenfolgenwert, der das Kennwort des Benutzers darstellt

    Die createLocalUser-Methode gibt einen Zeichenfolgenwert zurück, der den Wert der lokalen Benutzerkennung angibt.

  5. Stellen Sie sicher, dass der Benutzer hinzugefügt wurde.

    • Erstellen Sie ein Objekt PrincipalSearchFilter, indem Sie den Konstruktor verwenden.
    • Legen Sie den Wert der Benutzerkennung fest, indem Sie die setUserId-Methode des PrincipalSearchFilter-Objekts aufrufen. Ein Zeichenfolgenwert, der den Wert der Benutzerkennung darstellt.
    • Rufen Sie die findPrincipals-Methode des DirectoryManagerServiceClient-Objekts auf, und übergeben Sie das PrincipalSearchFilter-Objekt. Diese Methode gibt eine java.util.List-Instanz zurück, bei der jedes Element ein User-Objekt ist. Iterieren Sie durch die java.util.List-Instanz, um den Benutzer zu suchen.

Siehe auch

Zusammenfassung der Schritte

Schnellstart (SOAP-Modus): Hinzufügen von Benutzern mithilfe der Java-API

Einbeziehung von AEM Forms Java-Bibliotheksdateien

Verbindungseigenschaften festlegen

Hinzufügen von Benutzern mithilfe der Webservice-API

Fügen Sie Benutzer mithilfe der Directory Manager-Service-API (Webservice) hinzu:

  1. Schließen Sie Projektdateien ein.

    Erstellen Sie ein Microsoft .NET-Projekt, das MTOM verwendet. Stellen Sie sicher, dass Sie die folgende WSDL-Definition für die Service-Referenz verwenden: http://localhost:8080/soap/services/DirectoryManagerService?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 einen DirectoryManagerService-Client.

    • Erstellen Sie ein DirectoryManagerServiceClient-Objekt, indem Sie dessen Standardkonstruktor verwenden.

    • Erstellen Sie mithilfe des System.ServiceModel.EndpointAddress-Konstruktors ein DirectoryManagerServiceClient.Endpoint.Address-Objekt. Übergeben Sie einen Zeichenfolgenwert, der die WSDL für den AEM Forms-Service angibt (z. B. http://localhost:8080/soap/services/DirectoryManagerService?blob=mtom). Sie müssen das lc_version-Attribut nicht verwenden. Dieses Attribut wird verwendet, wenn Sie eine Servicereferenz erstellen. Stellen Sie sicher, dass Sie ?blob=mtom angeben.

    • Erstellen Sie ein System.ServiceModel.BasicHttpBinding-Objekt, indem Sie den Wert des DirectoryManagerServiceClient.Endpoint.Binding-Feldes abrufen. 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 DirectoryManagerServiceClient.ClientCredentials.UserName.UserName den AEM Forms-Benutzernamen zu.
      • Weisen Sie dem Feld DirectoryManagerServiceClient.ClientCredentials.UserName.Password den entsprechenden Passwortwert zu.
      • Weisen Sie dem Feld BasicHttpBindingSecurity.Transport.ClientCredentialType den konstanten Wert HttpClientCredentialType.Basic zu.
      • Weisen Sie dem BasicHttpBindingSecurity.Security.Mode-Feld den Konstantenwert BasicHttpSecurityMode.TransportCredentialOnly zu.
  3. Definieren Sie Benutzerinformationen.

    • Erstellen Sie ein Objekt UserImpl, indem Sie den Konstruktor verwenden.
    • Legen Sie den Domain-Namen fest, indem Sie dem Feld domainName des UserImpl-Objekts einen Zeichenfolgenwert zuweisen.
    • Legen Sie den Prinzipaltyp fest, indem Sie dem Feld principalType des UserImpl-Objekts einen Zeichenfolgenwert zuweisen. Sie können beispielsweise USER angeben.
    • Legen Sie den Wert der Benutzerkennung fest, indem Sie dem Feld userid des UserImpl-Objekts einen Zeichenfolgenwert zuweisen.
    • Legen Sie den kanonischen Namenswert fest, indem Sie dem Feld canonicalName des UserImpl-Objekts einen Zeichenfolgenwert zuweisen.
    • Legen Sie den angegebenen Namenswert fest, indem Sie dem Feld givenName des UserImpl-Objekts einen Zeichenfolgenwert zuweisen.
    • Legen Sie den Wert des Familiennamens fest, indem Sie dem Feld familyName des UserImpl-Objekts einen Zeichenfolgenwert zuweisen.
  4. Fügen Sie den Benutzer zu AEM Forms hinzu.

    Rufen Sie die createLocalUser-Methode des DirectoryManagerServiceClient-Objekts auf und übergeben Sie die folgenden Werte:

    • Das UserImpl-Objekt, das den neuen Benutzer darstellt
    • Einen Zeichenfolgenwert, der das Kennwort des Benutzers darstellt

    Die createLocalUser-Methode gibt einen Zeichenfolgenwert zurück, der den Wert der lokalen Benutzerkennung angibt.

  5. Stellen Sie sicher, dass der Benutzer hinzugefügt wurde.

    • Erstellen Sie ein Objekt PrincipalSearchFilter, indem Sie den Konstruktor verwenden.
    • Legen Sie den Wert der Benutzerkennung des Benutzers fest, indem Sie dem Feld userId des PrincipalSearchFilter-Objekts einen Zeichenfolgenwert zuweisen, der den Wert der Benutzerkennung darstellt.
    • Rufen Sie die Methode findPrincipals des DirectoryManagerServiceClient-Objekts auf und übergeben Sie das PrincipalSearchFilter-Objekt. Diese Methode gibt ein MyArrayOfUser-Sammlungsobjekt zurück, bei dem jedes Element ein User-Objekt ist. Iterieren Sie durch die MyArrayOfUser-Sammlung, um den Benutzer zu finden.

Siehe auch

Zusammenfassung der Schritte

AEM Forms mithilfe von MTOM aufrufen

Aufrufen von AEM Forms mithilfe von SwaRef

Löschen von Benutzern

Sie können die Directory Manager Service-API (Java und Webservice) verwenden, um Benutzer programmgesteuert aus AEM Forms zu löschen. Nachdem Sie einen Benutzer gelöscht haben, kann der Benutzer nicht mehr zum Ausführen eines Service-Vorgangs verwendet werden, für den ein Benutzer erforderlich ist. Beispielsweise können Sie einem gelöschten Benutzer keine Aufgabe zuweisen.

Zusammenfassung der Schritte

Um einen Benutzer zu löschen, führen Sie die folgenden Schritte aus:

  1. Schließen Sie Projektdateien ein.
  2. Erstellen Sie einen DirectoryManagerService-Client.
  3. Geben Sie den zu löschenden Benutzer an.
  4. Löschen Sie den Benutzer aus AEM Forms.

Einschließen von Projektdateien

Schließen Sie die erforderlichen Dateien in Ihr Entwicklungsprojekt ein. Wenn Sie eine Clientanwendung mit Java erstellen, schließen Sie die erforderlichen JAR-Dateien ein. Wenn Sie Web-Services verwenden, schließen Sie die Proxy-Dateien ein.

Erstellen eines DirectoryManagerService-Clients

Bevor Sie einen Directory Manager Service-API-Vorgang programmgesteuert durchführen können, erstellen Sie einen Directory Manager Service-Client.

Angeben, welcher Benutzer gelöscht werden soll

Sie können einen Benutzer angeben, der gelöscht werden soll, indem Sie den Kennungswert des Benutzers verwenden.

Löschen des Benutzers aus AEM Forms

Um einen Benutzer zu löschen, rufen Sie die Methode deleteLocalUser des DirectoryManagerServiceClient-Objekts auf.

Siehe auch

Löschen von Benutzern mithilfe der Java-API

Löschen von Benutzern mit der Webservice-API

Einbeziehung von AEM Forms Java-Bibliotheksdateien

Verbindungseigenschaften festlegen

Hinzufügen von Benutzern

Löschen von Benutzern mithilfe der Java-API

So löschen Sie Benutzer mithilfe der Directory Manager Service-API (Java):

  1. Schließen Sie Projektdateien ein.

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

  2. Erstellen Sie einen DirectoryManagerService-Client.

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

  3. Geben Sie den zu löschenden Benutzer an.

    • Erstellen Sie ein Objekt PrincipalSearchFilter, indem Sie den Konstruktor verwenden.
    • Legen Sie den Wert der Benutzerkennung fest, indem Sie die setUserId-Methode des PrincipalSearchFilter-Objekts aufrufen. Ein Zeichenfolgenwert, der den Wert der Benutzerkennung darstellt.
    • Rufen Sie die findPrincipals-Methode des DirectoryManagerServiceClient-Objekts auf, und übergeben Sie das PrincipalSearchFilter-Objekt. Diese Methode gibt eine java.util.List-Instanz zurück, bei der jedes Element ein User-Objekt ist. Iterieren Sie durch die java.util.List-Instanz, um den zu löschenden Benutzer zu suchen.
  4. Löschen Sie den Benutzer aus AEM Forms.

    Rufen Sie die deleteLocalUser-Methode des DirectoryManagerServiceClient-Objekts auf und übergeben Sie den Wert des oid-Feldes des User-Objekts. Rufen Sie die getOid-Methode des User-Objekts auf. Verwenden Sie das User-Objekt, das aus der java.util.List-Instanz abgerufen wurde.

Siehe auch

Zusammenfassung der Schritte

Schnellstart (EJB-Modus): Löschen von Benutzern mit der Java-API

Schnellstart (SOAP-Modus): Löschen von Benutzern mit der Java-API

Einbeziehung von AEM Forms Java-Bibliotheksdateien

Verbindungseigenschaften festlegen

Löschen von Benutzern mit der Webservice-API

Löschen Sie Benutzer mithilfe der Directory Manager-Service-API (Webservice):

  1. Schließen Sie Projektdateien ein.

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

  2. Erstellen Sie einen DirectoryManagerService-Client.

    • Erstellen Sie ein DirectoryManagerServiceClient-Objekt, indem Sie dessen Standardkonstruktor verwenden.

    • Erstellen Sie mithilfe des System.ServiceModel.EndpointAddress-Konstruktors ein DirectoryManagerServiceClient.Endpoint.Address-Objekt. Übergeben Sie einen Zeichenfolgenwert, der die WSDL für den AEM Forms-Service angibt (z. B. http://localhost:8080/soap/services/DirectoryManagerService?blob=mtom). Sie müssen das lc_version-Attribut nicht verwenden. Dieses Attribut wird verwendet, wenn Sie eine Servicereferenz erstellen. Stellen Sie sicher, dass Sie blob=mtom. angeben

    • Erstellen Sie ein System.ServiceModel.BasicHttpBinding-Objekt, indem Sie den Wert des DirectoryManagerServiceClient.Endpoint.Binding-Feldes abrufen. 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 DirectoryManagerServiceClient.ClientCredentials.UserName.UserName den AEM Forms-Benutzernamen zu.
      • Weisen Sie dem Feld DirectoryManagerServiceClient.ClientCredentials.UserName.Password den entsprechenden Passwortwert zu.
      • Weisen Sie dem Feld BasicHttpBindingSecurity.Transport.ClientCredentialType den konstanten Wert HttpClientCredentialType.Basic zu.
      • Weisen Sie dem BasicHttpBindingSecurity.Security.Mode-Feld den Konstantenwert BasicHttpSecurityMode.TransportCredentialOnly zu.
  3. Geben Sie den zu löschenden Benutzer an.

    • Erstellen Sie ein Objekt PrincipalSearchFilter, indem Sie den Konstruktor verwenden.
    • Legen Sie den Wert der Benutzerkennung durch Zuweisen eines Zeichenfolgenwerts zum userId-Feld des PrincipalSearchFilter-Objekts fest.
    • Rufen Sie die findPrincipals-Methode des DirectoryManagerServiceClient-Objekts auf und übergeben Sie das PrincipalSearchFilter-Objekt. Diese Methode gibt ein MyArrayOfUser-Sammlungsobjekt zurück, bei dem jedes Element ein User-Objekt ist. Iterieren Sie durch die MyArrayOfUser-Sammlung, um den Benutzer zu finden. Das User-Objekt, das aus dem MyArrayOfUser-Sammlungsobjekt abgerufen wurde, wird zum Löschen des Benutzers verwendet.
  4. Löschen Sie den Benutzer aus AEM Forms.

    Löschen Sie den Benutzer, indem Sie den Wert des oid-Feldes des User-Objekts an die deleteLocalUser-Methode des DirectoryManagerServiceClient-Objekts übergeben.

Siehe auch

Zusammenfassung der Schritte

AEM Forms mithilfe von MTOM aufrufen

Aufrufen von AEM Forms mithilfe von SwaRef

Erstellen von Gruppen

Sie können die Directory Manager-Service-API (Java und Webservice) verwenden, um AEM Forms-Gruppen programmgesteuert zu erstellen. Nachdem Sie eine Gruppe erstellt haben, können Sie diese Gruppe verwenden, um einen Service-Vorgang durchzuführen, für den eine Gruppe erforderlich ist. Beispielsweise können Sie der neuen Gruppe einen Benutzer zuweisen. (Siehe Verwalten von Benutzern und Gruppen.)

Zusammenfassung der Schritte

Gehen Sie wie folgt vor, um eine Gruppe zu erstellen:

  1. Schließen Sie Projektdateien ein.
  2. Erstellen Sie einen DirectoryManagerService-Client.
  3. Stellen Sie sicher, dass die Gruppe nicht vorhanden ist.
  4. Erstellen Sie die Gruppe.
  5. Führen Sie eine Aktion mit der Gruppe aus.

Einschließen von Projektdateien

Schließen Sie die erforderlichen Dateien in Ihr Entwicklungsprojekt ein. Wenn Sie ein Client-Programm mithilfe von Java erstellen, schließen Sie die erforderlichen JAR-Dateien ein.

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

  • adobe-livecycle-client.jar
  • adobe-usermanager-client.jar
  • adobe-utilities.jar (erforderlich, wenn AEM Forms auf JBoss bereitgestellt wird)
  • jbossall-client.jar (erforderlich, wenn AEM Forms auf JBoss bereitgestellt wird)

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

Erstellen eines DirectoryManagerService-Clients

Bevor Sie einen Directory Manager Service-Vorgang programmgesteuert durchführen können, erstellen Sie einen Directory Manager Service-API-Client.

Ermitteln, ob die Gruppe vorhanden ist

Stellen Sie beim Erstellen einer Gruppe sicher, dass die Gruppe nicht in derselben Domain schon vorhanden ist. Das heißt, zwei Gruppen können nicht denselben Namen innerhalb derselben Domain haben. Führen Sie dazu eine Suche durch und filtern Sie die Suchergebnisse anhand von zwei Werten. Legen Sie den Prinzipaltyp auf com.adobe.idp.um.api.infomodel.Principal.PRINCIPALTYPE_GROUP fest, um sicherzustellen, dass nur Gruppen zurückgegeben werden. Geben Sie außerdem den Domain-Namen an.

Erstellen der Gruppe

Nachdem Sie festgestellt haben, dass die Gruppe nicht schon in der Domain vorhanden ist, erstellen Sie die Gruppe und geben Sie die folgenden Attribute an:

  • CommonName: Der Name der Gruppe.
  • Domain: Die Domain, in der die Gruppe hinzugefügt wird.
  • Beschreibung: Eine Beschreibung der Gruppe.

Durchführen einer Aktion mit der Gruppe

Nachdem Sie eine Gruppe erstellt haben, können Sie eine Aktion mit der Gruppe durchführen. Sie können zum Beispiel einen Benutzer zu der Gruppe hinzufügen. Um einen Benutzer zu einer Gruppe hinzuzufügen, rufen Sie den eindeutigen Kennungswert sowohl des Benutzers als auch der Gruppe ab. Übergeben Sie diese Werte an die Methode addPrincipalToLocalGroup.

Siehe auch

Erstellen von Gruppen mithilfe der Java-API

Einbeziehung von AEM Forms Java-Bibliotheksdateien

Verbindungseigenschaften festlegen

Hinzufügen von Benutzern

Löschen von Benutzern

Erstellen von Gruppen mithilfe der Java-API

So erstellen Sie eine Gruppe mithilfe der Directory Manager Service-API (Java):

  1. Schließen Sie Projektdateien ein.

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

  2. Erstellen Sie einen DirectoryManagerService-Client.

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

  3. Ermitteln Sie, ob die Gruppe vorhanden ist.

    • Erstellen Sie ein Objekt PrincipalSearchFilter, indem Sie den Konstruktor verwenden.
    • Legen Sie den Prinzipaltyp fest, indem Sie Die Methode setPrincipalType des PrincipalSearchFilter-Objekts aufrufen. Übergeben Sie den Wert com.adobe.idp.um.api.infomodel.Principal.PRINCIPALTYPE_GROUP.
    • Legen Sie die Domain fest, indem Sie die Methode setSpecificDomainName des PrincipalSearchFilter-Objekts aufrufen. Übergeben Sie einen Zeichenfolgenwert, der den Domain-Namen angibt.
    • Um eine Gruppe zu finden, rufen Sie die Methode findPrincipals des DirectoryManagerServiceClient-Objekts auf (ein Prinzipal kann eine Gruppe sein). Übergeben Sie das PrincipalSearchFilter-Objekt, das den Prinzipaltyp und den Domain-Namen angibt. Diese Methode gibt eine java.util.List-Instanz zurück, bei der jedes Element eine Group-Instanz ist. Jede Gruppeninstanz entspricht dem Filter, der mithilfe des PrincipalSearchFilter-Objekts angegeben wird.
    • Iterieren Sie durch die java.util.List-Instanz. Rufen Sie für jedes Element den Gruppennamen ab. Stellen Sie sicher, dass der Gruppenname nicht mit dem neuen Gruppennamen übereinstimmt.
  4. Erstellen Sie die Gruppe.

    • Wenn die Gruppe nicht existiert, rufen Sie die Methode setCommonName des Group-Objekts auf und übergeben Sie einen Zeichenfolgenwert, der den Gruppennamen angibt.
    • Rufen Sie die Methode setDescription des Group-Objekts auf und übergeben Sie einen Zeichenfolgenwert, der die Gruppenbeschreibung angibt.
    • Rufen Sie die Methode setDomainName des Group-Objekts auf und übergeben Sie einen Zeichenfolgenwert, der den Domain-Namen angibt.
    • Rufen Sie die Methode createLocalGroup des DirectoryManagerServiceClient-Objekts auf und übergeben Sie die Group-Instanz.

    Die Methode createLocalUser gibt einen Zeichenfolgenwert zurück, der den Wert der lokalen Benutzerkennung angibt.

  5. Führen Sie eine Aktion mit der Gruppe aus.

    • Erstellen Sie ein Objekt PrincipalSearchFilter, indem Sie den Konstruktor verwenden.
    • Legen Sie den Wert der Benutzerkennung fest, indem Sie die setUserId-Methode des PrincipalSearchFilter-Objekts aufrufen. Ein Zeichenfolgenwert, der den Wert der Benutzerkennung darstellt.
    • Rufen Sie die findPrincipals-Methode des DirectoryManagerServiceClient-Objekts auf, und übergeben Sie das PrincipalSearchFilter-Objekt. Diese Methode gibt eine java.util.List-Instanz zurück, bei der jedes Element ein User-Objekt ist. Iterieren Sie durch die java.util.List-Instanz, um den Benutzer zu suchen.
    • Fügen Sie einen Benutzer zur Gruppe hinzu, indem Sie die Methode addPrincipalToLocalGroup des DirectoryManagerServiceClient-Objekts aufrufen. Übergeben Sie den Rückgabewert der Methode getOid des User-Objekts. Übergeben Sie den Rückgabewert der Methode getOid des Group-Objekts (verwenden Sie die Group-Instanz, die die neue Gruppe darstellt).

Siehe auch

Zusammenfassung der Schritte

Einbeziehung von AEM Forms Java-Bibliotheksdateien

Verbindungseigenschaften festlegen

Verwalten von Benutzern und Gruppen

In diesem Thema wird beschrieben, wie Sie (Java) verwenden können, um Domains, Benutzer und Gruppen programmgesteuert zuzuweisen, zu entfernen und abzufragen.

HINWEIS

Beim Konfigurieren einer Domain müssen Sie die eindeutige Kennung für Gruppen und Benutzer festlegen. Das ausgewählte Attribut darf nicht nur innerhalb der LDAP-Umgebung eindeutig sein, sondern muss auch unveränderlich sein und darf sich innerhalb des Verzeichnisses nicht ändern. Dieses Attribut muss außerdem vom einfachen Datentyp „String“ sein (die einzige Ausnahme, die derzeit für Active Directory 2000/2003 zulässig ist, ist "objectsid", ein Binärwert). Das Novell eDirectory-Attribut "GUID", ist beispielsweise kein einfacher Datentyp „String“ und funktioniert daher nicht.

  • Verwenden Sie für Active Directory "objectsid".
  • Verwenden Sie für SunOne "nsuniqueid".
HINWEIS

Das Erstellen mehrerer lokaler Benutzer und Gruppen während einer laufenden LDAP-Verzeichnissynchronisierung wird nicht unterstützt. Wird dies dennoch versucht, können Fehler auftreten.

Zusammenfassung der Schritte

Führen Sie die folgenden Schritte aus, um Benutzer und Gruppen zu verwalten:

  1. Schließen Sie Projektdateien ein.
  2. Erstellen Sie einen DirectoryManagerService-Client.
  3. Rufen Sie die entsprechenden Benutzer- oder Gruppenvorgänge auf.

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 DirectoryManagerService-Clients

Bevor Sie einen Directory Manager Service-Vorgang programmgesteuert durchführen können, müssen Sie einen Directory Manager Service-Client erstellen. Mit der Java-API wird dies durch die Erstellung eines DirectoryManagerServiceClient-Objekts erreicht. Mit der Webservice-API wird dies durch die Erstellung eines DirectoryManagerServiceService-Objekts erreicht.

Aufrufen der entsprechenden Benutzer- oder Gruppenvorgänge

Nachdem Sie den Service-Client erstellt haben, können Sie die Benutzer- oder Gruppenverwaltungsvorgänge aufrufen. Mit dem Service-Client können Sie Domains, Benutzer und Gruppen zuweisen, entfernen und abfragen. Beachten Sie, dass es möglich ist, entweder einen Verzeichnisprinzipal oder einen lokalen Prinzipal zu einer lokalen Gruppe hinzuzufügen. Es ist jedoch nicht möglich, einen lokalen Prinzipal zu einer Verzeichnisgruppe hinzuzufügen.

Siehe auch

Verwalten von Benutzern und Gruppen mithilfe der Java-API

Verwalten von Benutzern und Gruppen mithilfe der Webservice-API

Einbeziehung von AEM Forms Java-Bibliotheksdateien

Verbindungseigenschaften festlegen

Kurzanleitungen für die User Manager-API

Verwalten von Benutzern und Gruppen mithilfe der Java-API

Führen Sie die folgenden Aufgaben aus, um Benutzer, Gruppen und Domains mithilfe von (Java) programmgesteuert zu verwalten:

  1. Schließen Sie Projektdateien ein.

    Fügen Sie Client-JAR-Dateien wie „adobe-usermanager-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 einen DirectoryManagerService-Client.

    Erstellen Sie ein DirectoryManagerServiceClient-Objekt, indem Sie seinen Konstruktor verwenden und ein ServiceClientFactory-Objekt übergeben, das Verbindungseigenschaften enthält. Weitere Informationen finden Sie unter Festlegen von Verbindungseigenschaften .

  3. Rufen Sie die entsprechenden Benutzer- oder Gruppenvorgänge auf.

    Um einen Benutzer oder eine Gruppe zu finden, rufen Sie eine der Methoden des DirectoryManagerServiceClient-Objekts zum Auffinden von Prinzipalen auf (da ein Prinzipal ein Benutzer oder eine Gruppe sein kann). Im folgenden Beispiel wird die Methode findPrincipals mithilfe eines Suchfilters (ein PrincipalSearchFilter-Objekt) aufgerufen.

    Da der Rückgabewert in diesem Fall eine java.util.List ist, die Principal-Objekte enthält, iterieren Sie durch das Ergebnis und wandeln die Principal-Objekte entweder in User- oder Group-Objekte um.

    Mithilfe des resultierenden User- oder Group-Objekts (beide stammen von der Principal-Schnittstelle ab) können Sie die Informationen abrufen, die Sie für Ihre Workflows benötigen. Beispielsweise identifizieren die Werte für Domain-Namen und kanonische Namen gemeinsam einen Prinzipal eindeutig. Diese werden durch Aufrufen der Methoden getDomainName bzw. getCanonicalName des Principal-Objekts abgerufen.

    Um einen lokalen Benutzer zu löschen, rufen Sie die Methode deleteLocalUser des DirectoryManagerServiceClient-Objekts auf und übergeben die Kennung des Benutzers.

    Um eine lokale Gruppe zu löschen, rufen Sie die Methode deleteLocalGroup des DirectoryManagerServiceClient-Objekts auf und übergeben die Kennung der Gruppe.

Siehe auch

Zusammenfassung der Schritte

Einbeziehung von AEM Forms Java-Bibliotheksdateien

Verbindungseigenschaften festlegen

Verwalten von Benutzern und Gruppen mithilfe der Webservice-API

Führen Sie die folgenden Aufgaben aus, um Benutzer, Gruppen und Domains mithilfe der Directory Manager Service-API (Webservice) programmgesteuert zu verwalten:

  1. Schließen Sie Projektdateien ein.

  2. Erstellen Sie einen DirectoryManagerService-Client.

    Erstellen Sie ein DirectoryManagerServiceService-Objekt, indem Sie den Konstruktor Ihrer Proxy-Klasse verwenden.

  3. Rufen Sie die entsprechenden Benutzer- oder Gruppenvorgänge auf.

    Um einen Benutzer oder eine Gruppe zu finden, rufen Sie eine der Methoden des DirectoryManagerServiceService-Objekts zum Suchen von Prinzipalen (da ein Prinzipal ein Benutzer oder eine Gruppe sein kann). Im folgenden Beispiel wird die Methode findPrincipalsWithFilter mithilfe eines Suchfilters (ein PrincipalSearchFilter-Objekt) aufgerufen. Bei Verwendung eines PrincipalSearchFilter-Objekts werden lokale Prinzipale nur dann zurückgegeben, wenn die Eigenschaft isLocal auf true gesetzt ist. Dieses Verhalten unterscheidet sich von dem, das mit der Java-API auftreten würde.

    HINWEIS

    Wenn die maximale Anzahl von Ergebnissen nicht im Suchfilter angegeben ist (durch das Feld PrincipalSearchFilter.resultsMax), werden maximal 1.000 Ergebnisse zurückgegeben. Dieses Verhalten unterscheidet sich von dem, was mit der Java-API auftritt, bei der 10 Ergebnisse das standardmäßige Maximum sind. Außerdem liefern Suchmethoden wie findGroupMembers nur dann Ergebnisse, wenn die maximale Anzahl von Ergebnissen im Suchfilter angegeben ist (z. B. über das Feld GroupMembershipSearchFilter.resultsMax). Dies gilt für alle Suchfilter, die von der Klasse GenericSearchFilter abstammen. Weitere Informationen finden Sie in der AEM Forms-API-Referenz.

    Da der Rückgabewert in diesem Fall ein object[] mit Principal-Objekten ist, iterieren Sie durch das Ergebnis und wandeln die Principal-Objekte entweder in User- oder Group-Objekte um.

    Mithilfe des resultierenden User- oder Group-Objekts (beide stammen von der Principal-Schnittstelle ab) können Sie die Informationen abrufen, die Sie für Ihre Workflows benötigen. Beispielsweise identifizieren die Werte für Domain-Namen und kanonische Namen gemeinsam einen Prinzipal eindeutig. Diese werden durch Aufrufen der Felder domainName bzw. canonicalName des Principal-Objekts abgerufen.

    Um einen lokalen Benutzer zu löschen, rufen Sie die Methode deleteLocalUser des DirectoryManagerServiceService-Objekts auf und übergeben die Kennung des Benutzers.

    Um eine lokale Gruppe zu löschen, rufen Sie die Methode deleteLocalGroup des DirectoryManagerServiceService-Objekts auf und übergeben die Kennung der Gruppe.

Siehe auch

Zusammenfassung der Schritte

AEM Forms mithilfe von MTOM aufrufen

Verwalten von Rollen und Berechtigungen

In diesem Thema wird beschrieben, wie Sie mithilfe der Authorization Manager Service-API (Java) Rollen und Berechtigungen programmgesteuert zuweisen, entfernen und ermitteln können.

In AEM Forms ist eine Rolle eine Gruppe von Berechtigungen für den Zugriff auf eine oder mehrere Ressourcen auf Systemebene. Diese Berechtigungen werden über User Management erstellt und von den Service-Komponenten erzwungen. Beispielsweise könnte ein Administrator einer Benutzergruppe die Rolle „Richtliniensatzautor“ zuweisen. Rights Management würde es dann den Benutzern dieser Gruppe mit dieser Rolle ermöglichen, Richtliniensätze über Administration-Console zu erstellen.

Es gibt zwei Arten von Rollen: Standardrollen und benutzerdefinierte Rollen. Standardrollen (Systemrollen) sind bereits in AEM Forms vorhanden. Es wird davon ausgegangen, dass Standardrollen vom Administrator nicht gelöscht oder geändert werden und daher unveränderlich sind. Benutzerdefinierte Rollen, die vom Administrator erstellt werden, der sie anschließend ändern oder löschen kann, sind somit veränderbar.

Rollen erleichtern die Verwaltung von Berechtigungen. Wenn einem Prinzipal eine Rolle zugewiesen wird, wird diesem Prinzipal automatisch eine Reihe von Berechtigungen zugewiesen, und alle spezifischen Zugriffsentscheidungen für den Prinzipal basieren auf dieser Gesamtmenge zugewiesener Berechtigungen.

Zusammenfassung der Schritte

Führen Sie die folgenden Schritte aus, um Rollen und Berechtigungen zu verwalten:

  1. Schließen Sie Projektdateien ein.
  2. Erstellen Sie einen AuthorizationManagerService-Client.
  3. Rufen Sie die entsprechenden Rollen- oder Berechtigungsvorgänge auf.

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 AuthorizationManagerService-Clients

Bevor Sie einen AuthorizationManagerService-Vorgang für User Management programmgesteuert durchführen können, müssen Sie einen AuthorizationManagerService-Client erstellen. Mit der Java-API wird dies durch Erstellen eines AuthorizationManagerServiceClient-Objekts erreicht.

Aufrufen der entsprechenden Rollen- oder Berechtigungsvorgänge

Nachdem Sie den Service-Client erstellt haben, können Sie die Rollen- oder Berechtigungsvorgänge aufrufen. Mit dem Service-Client können Sie Rollen und Berechtigungen zuweisen, entfernen und bestimmen.

Siehe auch

Verwalten von Rollen und Berechtigungen mithilfe der Java-API

Verwalten von Rollen und Berechtigungen mithilfe der Webservice-API

Einbeziehung von AEM Forms Java-Bibliotheksdateien

Verbindungseigenschaften festlegen

Kurzanleitungen für die User Manager-API

Verwalten von Rollen und Berechtigungen mithilfe der Java-API

Führen Sie die folgenden Aufgaben aus, um Rollen und Berechtigungen mithilfe der Authorization Manager Service-API (Java) zu verwalten:

  1. Schließen Sie Projektdateien ein.

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

  2. Erstellen Sie einen AuthorizationManagerService-Client.

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

  3. Rufen Sie die entsprechenden Rollen- oder Berechtigungsvorgänge auf.

    Um einem Prinzipal eine Rolle zuzuweisen, rufen Sie die assignRole-Methode des AuthorizationManagerServiceClient-Objekts auf und übergeben ihr die folgenden Werte:

    • Ein java.lang.String-Objekt, das die Rollenkennung enthält
    • Ein Array von java.lang.String-Objekten, die die Prinzipalkennungen enthalten.

    Um eine Rolle aus einem Prinzipal zu entfernen, rufen Sie die unassignRole-Methode des AuthorizationManagerServiceClient-Objekts auf und übergeben ihr die folgenden Werte:

    • ein java.lang.String-Objekt, das die Rollenkennung enthält.
    • Ein Array von java.lang.String-Objekten, die die Prinzipalkennungen enthalten.

Siehe auch

Zusammenfassung der Schritte

Schnellstart (SOAP-Modus): Verwalten von Rollen und Berechtigungen mit der Java-API

Einbeziehung von AEM Forms Java-Bibliotheksdateien

Verbindungseigenschaften festlegen

Verwalten von Rollen und Berechtigungen mithilfe der Webservice-API

Verwalten Sie Rollen und Berechtigungen mithilfe der Authorization Manager 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/AuthorizationManagerService?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 einen AuthorizationManagerService-Client.

    • Erstellen Sie mithilfe des Standardkonstruktors ein AuthorizationManagerServiceClient-Objekt.

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

    • Erstellen Sie ein System.ServiceModel.BasicHttpBinding-Objekr, indem Sie den Wert des Felds AuthorizationManagerServiceClient.Endpoint.Binding abrufen. 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 AuthorizationManagerServiceClient.ClientCredentials.UserName.UserName den AEM Forms-Benutzernamen zu.
      • Weisen Sie dem Feld AuthorizationManagerServiceClient.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 entsprechenden Rollen- oder Berechtigungsvorgänge auf.

    Um einem Prinzipal eine Rolle zuzuweisen, rufen Sie die assignRole-Methode des AuthorizationManagerServiceClient-Objekts auf und übergeben ihr die folgenden Werte:

    • Ein string-Objekt, das die Rollenkennung enthält
    • Ein MyArrayOf_xsd_string-Objekt, das die Prinzipalkennungen enthält.

    Um eine Rolle aus einem Prinzipal zu entfernen, rufen Sie die Methode unassignRole des AuthorizationManagerServiceService-Objekts auf und übergeben ihr die folgenden Werte:

    • ein string-Objekt, das die Rollenkennung enthält.
    • Ein Array von string-Objekten, die die Prinzipalkennungen enthalten.

Siehe auch

Zusammenfassung der Schritte

AEM Forms mithilfe von MTOM aufrufen

Authentifizieren von Benutzern

In diesem Thema wird beschrieben, wie Sie mit der Authentication Manager Service API (Java) Benutzer programmgesteuert authentifizieren können, um Clientanwendungen die programmgesteuerte Authentifizierung von Benutzern zu ermöglichen.

Die Benutzerauthentifizierung kann erforderlich sein, um mit einer Unternehmensdatenbank oder anderen Unternehmensrepository, in denen sichere Daten gespeichert werden, zu interagieren.

Angenommen, ein Benutzer gibt auf einer Webseite einen Benutzernamen und ein Kennwort ein und sendet die Werte an einen J2EE-Anwendungs-Server, der als Host für Forms dient. Ein benutzerdefiniertes Forms-Programm kann den Benutzer mit dem Authentication Manager-Service authentifizieren.

Bei erfolgreicher Authentifizierung greift das Programm auf eine gesicherte Unternehmensdatenbank zu. Andernfalls wird dem Benutzer eine Nachricht gesendet, in der er darauf hingewiesen wird, dass er kein autorisierter Benutzer ist.

Das folgende Diagramm zeigt den logischen Ablauf des Programms.

au_au_umauth_process

Die folgende Tabelle enthält eine Beschreibung der Schritte in diesem Diagramm

Schritt

Beschreibung

1

Der Benutzer greift auf eine Website zu und gibt einen Benutzernamen und ein Kennwort an. Diese Informationen werden an einen J2EE-Anwendungs-Server übermittelt, der als Host für AEM Forms dient.

2

Die Benutzeranmeldeinformationen werden über den Authentication Manager-Service authentifiziert. Wenn die Benutzeranmeldeinformationen gültig sind, fährt der Workflow mit Schritt 3 fort. Andernfalls wird dem Benutzer eine Nachricht gesendet, in der er darauf hingewiesen wird, dass er kein autorisierter Benutzer ist.

3

Benutzerinformationen und Formularentwürfe werden aus einer gesicherten Unternehmensdatenbank abgerufen.

4

Benutzerinformationen werden mit einem Formularentwurf zusammengeführt, und das Formular wird für den Benutzer gerendert.

Zusammenfassung der Schritte

Zum programmgesteuerten Authentifizieren von Benutzern führen Sie folgende Schritte aus:

  1. Schließen Sie Projektdateien ein.
  2. Erstellen Sie einen AuthenticationManagerService-Client.
  3. Rufen Sie den Authentifizierungsvorgang auf.
  4. Rufen Sie bei Bedarf den Kontext ab, damit das Client-Programm ihn zur Authentifizierung an einen anderen AEM Forms-Service weiterleiten kann.

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.

Einen AuthenticationManagerService-Client erstellen

Bevor Sie einen Benutzer programmgesteuert authentifizieren können, müssen Sie einen AuthenticationManagerService-Client erstellen. Wenn Sie die Java-API verwenden, erstellen Sie ein AuthenticationManagerServiceClient-Objekt.

Authentifizierungsvorgang aufrufen

Nachdem Sie den Service-Client erstellt haben, können Sie den Authentifizierungsvorgang aufrufen. Für diesen Vorgang sind Informationen zum Benutzer erforderlich, z. B. Name und Kennwort des Benutzers. Wenn der Benutzer nicht authentifiziert werden kann, wird eine Ausnahme ausgelöst.

Authentifizierungskontext abrufen

Nachdem Sie den Benutzer authentifiziert haben, können Sie einen auf dem authentifizierten Benutzer basierenden Kontext erstellen. Anschließend können Sie den Inhalt verwenden, um andere AEM Forms-Services aufzurufen. Beispielsweise können Sie den Kontext verwenden, um einen EncryptionServiceClient zu erstellen und ein PDF-Dokument mit einem Kennwort zu verschlüsseln. Stellen Sie sicher, dass der authentifizierte Benutzer über die Rolle namens Services User verfügt, die zum Aufrufen eines AEM Forms-Service erforderlich ist.

Siehe auch

Einbeziehung von AEM Forms Java-Bibliotheksdateien

Verbindungseigenschaften festlegen

Kurzanleitungen für die User Manager-API

Verschlüsseln von PDF-Dokumenten mit einem Kennwort

Benutzer mithilfe der Java-API authentifizieren

Authentifizieren Sie einen Benutzer mit der Authentication Manager Service API (Java):

  1. Schließen Sie Projektdateien ein.

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

  2. Erstellen Sie einen AuthenticationManagerServices-Client.

    Erstellen Sie ein AuthenticationManagerServiceClient-Objekt, indem Sie seinen Konstruktor aufrufen und ihm ein ServiceClientFactory-Objekt mit den Verbindungseigenschaften übergeben.

  3. Rufen Sie den Authentifizierungsvorgang auf.

    Rufen Sie die authenticate-Methode des AuthenticationManagerServiceClient-Objekts auf und übergeben Sie ihr folgende Werte:

    • Ein java.lang.String-Objekt, das den Namen des Benutzers enthält.
    • Ein Byte-Array (ein byte[]-Objekt), das das Kennwort des Benutzers enthält. Sie können das byte[]-Objekt durch Aufrufen der getBytes-Methode des java.lang.String-Objekts beziehen.

    Die Authentifizierungsmethode gibt ein AuthResult-Objekt zurück, das Informationen zum authentifizierten Benutzer enthält.

  4. Rufen Sie den Authentifizierungskontext ab.

    Rufen Sie die getContext-Methode des ServiceClientFactory-Objekts auf, die ein Context-Objekt zurückgibt.

    Rufen Sie dann die initPrincipal-Methode des Context-Objekts auf und übergeben Sie ihr das AuthResult.

Benutzer mithilfe der Webservice-API authentifizieren

Authentifizieren Sie einen Benutzer mit der Authentication Manager Service API (Webservice):

  1. Schließen Sie Projektdateien ein.

  2. Erstellen Sie einen AuthenticationManagerService-Client.

    Erstellen Sie mithilfe des Konstruktors Ihrer Proxyklasse ein AuthenticationManagerServiceService-Objekt.

  3. Rufen Sie den Authentifizierungsvorgang auf.

    Rufen Sie die authenticate-Methode des AuthenticationManagerServiceClient-Objekts auf und übergeben Sie ihr die folgenden Werte:

    • Ein string-Objekt, das den Namen des Benutzers enthält
    • Ein Byte-Array (ein byte[]-Objekt), das das Kennwort des Benutzers enthält. Sie können das byte[]-Objekt erhalten, indem Sie ein string-Objekt, das das Kennwort enthält, mit der im folgenden Beispiel gezeigten Logik in ein byte[]-Array konvertieren.
    • Der zurückgegebene Wert ist ein AuthResult-Objekt, das Sie zum Abrufen von Informationen über den Benutzer verwendet können. Im folgenden Beispiel werden die Informationen des Benutzers abgerufen, indem zunächst das authenticatedUser-Feld des AuthResult-Objekts und anschließend die Felder canonicalName und domainName des resultierenden User-Objekts abgerufen werden.

Siehe auch

AEM Forms mithilfe von MTOM aufrufen

Aufrufen von AEM Forms mithilfe von SwaRef

Programmgesteuerte Synchronisierung von Benutzern

Sie können Benutzer mithilfe der User Management-API programmgesteuert synchronisieren. Wenn Sie Benutzer synchronisieren, aktualisieren Sie AEM Forms mit Benutzerdaten, die sich in Ihrem Benutzer-Repository befinden. Angenommen, Sie fügen Ihrem Benutzer-Repository neue Benutzer hinzu. Nachdem Sie einen Synchronisierungsvorgang durchgeführt haben, werden die neuen Benutzer zu AEM Forms-Benutzern. Außerdem werden Benutzer, die sich nicht mehr in Ihrem Benutzer-Respository befinden, aus AEM Forms entfernt.

Das folgende Diagramm zeigt das Synchronisieren von AEM Forms mit einem Benutzer-Respository.

ps_ps_umauth_sync

Die folgende Tabelle enthält eine Beschreibung der Schritte in diesem Diagramm

Schritt

Beschreibung

1

Ein Client-Programm fordert von AEM Forms die Durchführung eines Synchronisierungsvorgangs an.

2

AEM Forms führt einen Synchronisierungsvorgang durch.

3

Benutzerinformationen werden aktualisiert.

4

Ein Benutzer kann die aktualisierten Benutzerinformationen einsehen.

Zusammenfassung der Schritte

Führen Sie die folgenden Schritte aus, um Benutzer programmgesteuert zu synchronisieren:

  1. Schließen Sie Projektdateien ein.
  2. Erstellen Sie einen UserManagerUtilServiceClient-Client.
  3. Geben Sie die Unternehmens-Domain an.
  4. Rufen Sie den Authentifizierungsvorgang auf.
  5. Prüfen Sie, ob der Synchronisierungsvorgang abgeschlossen ist.

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 UserManagerUtilServiceClient

Bevor Sie Benutzer programmgesteuert synchronisieren können, müssen Sie ein UserManagerUtilServiceClient-Objekt erstellen.

Angeben der Unternehmens-Domain

Bevor Sie mithilfe der User Management-API einen Synchronisierungsvorgang durchführen, geben Sie die Unternehmens-Domain an, zu der die Benutzer gehören. Sie können eine oder mehrere Unternehmens-Domains angeben. Bevor Sie einen Synchronisierungsvorgang programmgesteuert durchführen können, müssen Sie mithilfe von Administration Console eine Unternehmens-Domain einrichten. (Siehe Administration-Hilfe.)

Aufrufen des Synchronisierungsvorgangs

Nachdem Sie eine oder mehrere Unternehmens-Domains angegeben haben, können Sie den Synchronisierungsvorgang durchführen. Wie viel Zeit für diesen Vorgang benötigt wird, hängt von der Anzahl der Benutzerdatensätze ab, die sich im Benutzer-Repository befinden.

Prüfen, ob der Synchronisierungsvorgang abgeschlossen ist

Nachdem Sie einen Synchronisierungsvorgang programmgesteuert durchgeführt haben, können Sie feststellen, ob der Vorgang abgeschlossen ist.

Siehe auch

Einbeziehung von AEM Forms Java-Bibliotheksdateien

Verbindungseigenschaften festlegen

Kurzanleitungen für die User Manager-API

Verschlüsseln von PDF-Dokumenten mit einem Kennwort

Programmgesteuerte Synchronisation von Benutzern mithilfe der Java-API

So synchronisieren Sie Benutzer mithilfe der User Management-API (Java):

  1. Schließen Sie Projektdateien ein.

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

  2. Erstellen Sie einen UserManagerUtilServiceClient-Client.

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

  3. Geben Sie die Unternehmens-Domain an.

    • Rufen Sie die Methode scheduleSynchronization des UserManagerUtilServiceClient-Objekts auf, um den Vorgang der Benutzersynchronisierung zu starten.
    • Erstellen Sie eine java.util.Set-Instanz mit Hilfe eines HashSet-Konstruktors. Stellen Sie sicher, dass Sie String als Datentyp angeben. Diese Java.util.Set-Instanz speichert die Domain-Namen, für die der Synchronisierungsvorgang gilt.
    • Rufen Sie für jeden hinzuzufügenden Domain-Namen die Methode Add des java.util.Set-Objekts auf und übergeben Sie den Domain-Namen.
  4. Rufen Sie den Synchronisierungsvorgang auf.

    Rufen Sie die Methode getContext des ServiceClientFactory-Objekts auf, die ein Context-Objekt zurückgibt.

    Rufen Sie dann die Methode initPrincipal des Context-Objekts auf und übergeben Sie das AuthResult.

Siehe auch

Programmgesteuerte Synchronisierung von Benutzern

Einbeziehung von AEM Forms Java-Bibliotheksdateien

Verbindungseigenschaften festlegen

Auf dieser Seite