Anmeldung

Mit den Methoden "login (DataObject)" und "LoginControl" können Sie einen Benutzer authentifizieren.

Informationen zu diesem Vorgang

Verwenden Sie das Datenobjekt "LoginAccount" oder einen expliziten Subtyp, um einen Benutzer zu authentifizieren. Verwenden Sie optional das Datenobjekt "LoginControl", um die Merkmale der Entität abzurufen, die Sie gerade authentifizieren.
Anmerkung: Wenn der Benutzer nicht zu dem Standard-Realm gehört, muss der Realm-Name im Kontext und unter Verwendung des Realm-Schlüssels definiert werden. Bei Anmeldung über die Administrationskonsole von WebSphere muss "username@realmName" verwendet werden.

Im folgenden Beispiel wird gezeigt, wie Sie eine Authentifizierung mit Hilfe des Objekts "PersonAccount" mit dem Namen des Principals "principalName" und dem Kennwort "password" ausführen.

Wenn Sie eine Authentifizierung mit Hilfe des Objekts "PersonAccount" ausführen möchten, das den Namen des Principals "principalName" und das Kennwort "password" aufweist, nehmen Sie den Mustercode in Ihren Anwendungscode auf, und ersetzen Sie die kursiv gedruckten variablen durch die aktuellen Werte, die Sie für diese Anforderung verwenden möchten:
try {
    DataObject root = SDOHelper.createRootDataObject(); 
    DataObject paccount = SDOHelper.createEntityDataObject(root, null, DO_PERSON_ACCOUNT);
    paccount.set(PROP_PRINCIPAL_NAME, "bob"); 
    paccount.set(Service.PROP_PASSWORD, 
                 com.ibm.websphere.wim.util.PasswordUtil.getByteArrayPassword("mypassword"));
    DataObject loginCtrl = SDOHelper.createControlDataObject(root, null, DO_LOGIN_CONTROL);
    loginCtrl.getList(PROP_SEARCH_BASES).add("cn=users,dc=yourco,dc=com"); 
    loginCtrl.getList(PROP_PROPERTIES).add("uid"); 
    loginCtrl.getList(PROP_PROPERTIES).add("cn"); 
    root = service.login(root);
} catch (WIMException e) {
    e.printStackTrace();
}

Beispiele für Eingabe- und Ausgabedatengraphen

Für das dargestellte Beispiel ist der Eingabedatengraph:
<?xml version="1.0" encoding="UTF-8"?>
<sdo:datagraph xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
               xmlns:sdo="commonj.sdo"
               xmlns:wim="http://www.ibm.com/websphere/wim">
<wim:Root>
<wim:entities xsi:type="wim:PersonAccount">
   <wim:principalName>bob</wim:principalName>
   <wim:password>KioqKg==</wim:password>
</wim:entities>
<wim:controls xsi:type="wim:LoginControl">
  <wim:searchBases>cn=users,dc=yourco,dc=com</wim:searchBases>
    <wim:properties>cn</wim:properties>
    <wim:properties>uid</wim:properties>
</wim:controls>
</wim:Root>
</sdo:datagraph>
Daraus resultiert der folgende Ausgabedatengraph:
<?xml version="1.0" encoding="UTF-8"?>
<sdo:datagraph xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
               xmlns:sdo="commonj.sdo"
               xmlns:wim="http://www.ibm.com/websphere/wim">
  <changeSummary/>
  <Root>
<entities xsi:type="PersonAccount">
        <identifier uniqueId="f0cf975b-eca8-4331-8a70-6b90556f4f65"
                    uniqueName="accountName=bob,cn=users,dc=yourco,dc=com">
          <cn>bob W</cn>
          <uid>bob</uid>
    </entities>
 </Root>
</sdo:datagraph>


Rechtliche Hinweise | Feedback