SetLDAPAuthentication

Descripción

Establece un usuario para la autenticación LDAP. Más específicamente, este método establece el AuthenticationMode de cuenta de usuario en LDAP_AUTHENTICATION, que autentica con relación a un servidor LDAP.

Si lo desea, configura la correlación de Rational ClearQuest para LDAP. El depósito de esquemas debe estar configurado con una ubicación de servidor LDAP. Dependiendo del estado de configuración de LDAP del conjunto de bases de datos y de si se proporciona el nombre de inicio de sesión de LDAP, el método también copia el atributo de correlación de LDAP en el campo de correlación de Rational ClearQuest.

Todas las bases de datos de usuario de un conjunto de bases de datos de Rational ClearQuest se deben actualizar a partir del depósito de esquemas maestro para que un usuario pueda iniciar la sesión en una base de datos de usuario utilizando la autenticación LDAP (para actualizaciones de usuario, utilice el método UpgradeInfo del objeto User, o bien, para todos los usuarios suscritos, utilice el método UpgradeMasterUserInfo del objeto Database). Consulte el apartado Actualización de la información de usuario de un depósito de esquemas para una base de datos de usuario para obtener más información.

El método da error si el valor del campo de correlación no es exclusivo entre los usuarios de LDAP que ya se han habilitado en la base de datos. El resultado también es incorrecto si se produce un error de LDAP mientras se intenta copiar encima del atributo de correlación de LDAP en el campo de correlación de Rational ClearQuest.

Al establecer el AuthenticationMode para un usuario en LDAP_AUTHENTICATION, se establece la contraseña de la cuenta de usuario de Rational ClearQuest en la base de datos de Rational ClearQuest en un valor especial que indica que el usuario está configurado para la autenticación LDAP. De este modo se evita que clientes de Rational ClearQuest anteriores puedan iniciar la sesión utilizando la autenticación de Rational ClearQuest en lugar de la autenticación LDAP deseada.

Marcar un usuario como si tuviera un AuthenticationMode deLDAP_AUTHENTICATION no es suficiente para permitir que el usuario pueda iniciar la sesión utilizando la contraseña y el nombre de cuenta de LDAP. También se debe ajustar el registro de usuario de Rational ClearQuest de modo que el valor de atributo de correlación de LDAP del usuario se almacene en el campo de correlación de usuarios de Rational ClearQuest (consulte el mandato installutil setcqldapmap). El método SetLDAPAuthentication copia encima del valor de atributo de correlación de LDAP del usuario, si se cumplen las condiciones siguientes:
  • el conjunto de bases de datos está completamente configurado para la autenticación LDAP utilizando los submandatos de LDAP installutil y la conexión de LDAP en funcionamiento
  • la configuración setcqldapmap no utiliza el menú de acceso directo %login%
  • se proporciona el método SetLDAPAuthentication con una serie nombre_inicioSesión_ldap no nula
Si se cumplen estas condiciones, el método SetLDAPAuthentication copia encima del valor de atributo de correlación de LDAP y lo almacena en el campo de correlación de Rational ClearQuest del usuario. El usuario está pues totalmente configurado para LDAP_AUTHENTICATION y puede iniciar la sesión en la base de datos de usuario de Rational ClearQuest que desea una vez que el administrador actualice la base de datos de usuario a partir del depósito de esquemas maestro.

Si no se cumplen una o más de las condiciones anteriores, el método SetLDAPAuthentication no copia el atributo de correlación de LDAP en el campo de correlación de Rational ClearQuest. No es una condición de error. En especial, puede utilizar el método SetLDAPAuthentication con el argumento nombre_inicioSesión_ldap establecido en un valor de serie de nulo (""), lo que permite que un administrador establezca usuarios de Rational ClearQuest como usuarios autenticados de LDAP, sin que sea necesario que el administrador proporcione los nombres de inicio de sesión de LDAP de los usuarios. En este caso, el atributo de correlación de LDAP no se copia en el campo de correlación de Rational ClearQuest. Requiere que un administrador almacene manualmente el atributo de correlación de LDAP correcto en el campo de correlación de Rational ClearQuest (por ejemplo, el correo electrónico del usuario. El inicio de sesión del usuario da error hasta que se actualiza el campo de Rational ClearQuest correcto con la información de correlación necesaria.

La utilización del método SetLDAPAuthentication sin un nombre de inicio de sesión de LDAP válido requiere que un usuario tenga establecido el atributo de correlación de LDAP de Rational ClearQuest correcto (por ejemplo, el correo electrónico del usuario). El inicio de sesión del usuario da error hasta que se actualiza el campo de Rational ClearQuest correcto con la información de correlación necesaria.

Nota: El llamador de este método debe tener privilegios de administrador (es decir, un valor UserPrivilegeMaskType, USER_ADMIN) para establecer el atributo. Rational ClearQuest impide que los usuarios con el privilegio USER_ADMIN establezcan su propio AuthenticationMode.
Nota: Este método estuvo disponible en la versión 2003.06.14.

Sintaxis

VBScript

user.SetLDAPAuthentication(nombre_inicioSesión_LDAP) 

Perl

user->SetLDAPAuthentication(nombre_inicioSesión_LDAP); 
Identificador
Descripción
user
Un objeto User.
nombre_inicioSesión_LDAP
Un valor String que contiene el nombre de inicio de sesión de usuario para LDAP (por ejemplo, myUniqueName@ibm.com.)
Valor de retorno
Ninguno si es satisfactorio, de otro modo, una excepción (por ejemplo, si no se encuentra el valor nombre_inicioSesión_LDAP en el servidor LDAP.

Ejemplos

VBScript

'establecer la modalidad de autenticación de usuario para ldap:
   Dim cquser2 ' un objeto User 
   Dim ldap_login   
   Dim mode ' la modalidad de autenticación de usuario
   ldap_login = "yourusername@us.ibm.com"
   StdOut "Setting ldap authentication for " & cquser2.name & vbCrLf
   cquser2.SetLDAPAuthentication (ldap_login)
   ' verificar la modalidad de autenticación de usuario:  
   StdOut "Getting authentication mode for user " & cquser2.name & vbCrLf
   mode = cquser2.GetAuthenticationMode
   StdOut "user mode: " & CStr(mode) & vbCrLf

Perl

# Comprobar la modalidad de autenticación del usuario. 
# Si no es la autenticación LDAP, cambiarla por dicha modalidad
sub Enforce_LDAP_Authentication_On_User
{
	my($user, $LDAP_login) = @_;
	$authentication = $user->GetAuthenticationMode();
	if ($authentication == $CQPerlExt::CQ_LDAP_AUTHENTICATION)
	{
		$auth_s = "LDAP Authenticated";
		print "User's authentication mode is $auth_s. No Changes needed.\n";
		return 0;
	}		
	else 
	{
		$auth_s = "CQ Authenticated";
		eval{$user->SetLDAPAuthentication($LDAP_login);};
		if ($@)
		{
			print "Couldnt run User->SetLDAPAuthentication.  Error: $@\n";
			die;
		}
		print "LDAP Authentication set.\n";
		return 1;
	}
}
		


Comentarios