Inicio de sesión

Utilice el método login(DataObject) y LoginControl para autentificar un usuario.

Acerca de esta tarea

Utilice el objeto de datos LoginAccount o el subtipo explícito para autentificar un usuario. Utilice el método LoginControl opcional para recuperar las propiedades de la entidad que se está autentificando.
Nota: Si el usuario no pertenece a la esfera predeterminada, el nombre de la esfera debe establecerse en el contexto utilizando la tecla de esfera. Cuando se inicia la sesión utilizando la consola administrativa de WebSphere, debe utilizarse username@realmName.

En este ejemplo se muestra cómo autentificarse mediante un objeto PersonAccount con un principalName y una contraseña.

Para autentificarse mediante un objeto PersonAccount con un principalName y una contraseña, añada este código de ejemplo al código de aplicación y sustituya las variables por los valores reales que desea utilizar para esta solicitud:
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();
}

Gráficos de ejemplo de datos de entrada y salida

Para este ejemplo concreto, el gráfico de datos de entrada es:
<?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>
El gráfico de datos de salida resultante es:
<?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>


Condiciones de uso | Comentarios