Get it on Google Play

Módulos Drupal para loguear usuarios con otros sistemas

07-02-2010
 

drupal-logoHace poco tuve que desarrollar un módulo de Drupal para que los usuarios se loguearan a partir de los datos de usuarios situados en un sistema SAP/R3, mas tarde desarrollé otro para que los usuarios se loguearan mediante OAUTH (Escribí un post sobre OAUTH para Pymecrunch) y sus cuentas Twitter (A ver si lo comparto un día de estos).

En definitiva que para loguear usuarios en Drupal desde otros sistemas solo hay que seguir este código:

/* Validamos */
if ( !validarUsuario( $username, $password ) ) return FALSE;

/* Buscamos la cuenta de usuario */
$account = user_external_load(rawurlencode($username) .'@saplogin');

if (!$account->name) {
/* Si cuenta no encontrada creamos la cuenta */
$user_default = array( 'name' => $username, 'pass' => user_password(), 'init' => db_escape_string($username), 'status' => 1, 'authname_saplogin1' => rawurlencode($username) .'@saplogin' );

$user_default['roles'][DRUPAL_AUTHENTICATED_RID] = 'authenticated user';

$user = user_save('', $user_default);

} else {
/* Si cuenta existente asignamos */
$user = $account;
}

return TRUE;

 

Leave a Reply