ActiveDirectoryMembershipProvider.ChangePasswordQuestionAndAnswer(String, String, String, String) ActiveDirectoryMembershipProvider.ChangePasswordQuestionAndAnswer(String, String, String, String) ActiveDirectoryMembershipProvider.ChangePasswordQuestionAndAnswer(String, String, String, String) ActiveDirectoryMembershipProvider.ChangePasswordQuestionAndAnswer(String, String, String, String) Method

Definición

Actualiza la pregunta y respuesta de contraseña de un usuario del almacén de Active Directory.Updates the password question and answer for a user in the Active Directory store.

public:
 override bool ChangePasswordQuestionAndAnswer(System::String ^ username, System::String ^ password, System::String ^ newPasswordQuestion, System::String ^ newPasswordAnswer);
public override bool ChangePasswordQuestionAndAnswer (string username, string password, string newPasswordQuestion, string newPasswordAnswer);
override this.ChangePasswordQuestionAndAnswer : string * string * string * string -> bool
Public Overrides Function ChangePasswordQuestionAndAnswer (username As String, password As String, newPasswordQuestion As String, newPasswordAnswer As String) As Boolean

Parámetros

username
String String String String

Usuario para el que se va a cambiar la pregunta y respuesta de la contraseña.The user to change the password question and answer for.

password
String String String String

Contraseña del usuario especificado.The password for the specified user.

newPasswordQuestion
String String String String

Nueva pregunta de contraseña para el usuario especificado.The new password question for the specified user.

newPasswordAnswer
String String String String

Nueva respuesta a la contraseña para el usuario especificado.The new password answer for the specified user.

Devoluciones

Es true si la actualización se ha realizado con éxito; en caso contrario, es false.true if the update was successful; otherwise, false. También se devuelve un valor de false si la contraseña es incorrecta, si el usuario queda bloqueado o si el usuario no existe en el almacén de datos de Active Directory.A value of false is also returned if the password is incorrect, the user is locked out, or the user does not exist in the Active Directory data store.

Excepciones

El administrador no ha asignado los campos de pregunta y respuesta de la contraseña a los atributos del esquema de Active Directory.The administrator has not mapped the password question-and-answer fields to attributes of the Active Directory schema.

username está vacío o supera la longitud máxima del nombre de usuario (normalmente 256 caracteres).username is empty, or exceeds the maximum length for the user name (usually 256 characters).

o bien-or- username contiene comas.username contains commas.

o bien-or- El nombre de usuario está asignado al atributo userPrincipalName y el parámetro username contiene barras diagonales inversas.The user name is mapped to the userPrincipalName attribute and the username parameter contains backslashes.

O bien-or- password es cadena de longitud cero.password is a zero-length string.

O bien-or- password supera la longitud máxima de contraseña (normalmente 128 caracteres).password exceeds the maximum password length (usually 128 characters).

O bien-or- newPasswordQuestion está vacío y el valor de la propiedad RequiresQuestionAndAnswer es true.newPasswordQuestion is empty and the RequiresQuestionAndAnswer property value is true.

o bien-or- newPasswordQuestion tiene más de 256 caracteres.newPasswordQuestion exceeds 256 characters.

O bien-or- newPasswordAnswer supera los 128 caracteres después de que se cifra la respuesta.newPasswordAnswer exceeds 128 characters after the answer is encrypted.

username es null.username is null.

o bien-or- password es null.password is null.

o bien-or- newPasswordQuestion es null y la propiedad RequiresQuestionAndAnswer es true.newPasswordQuestion is null and RequiresQuestionAndAnswer property is true.

O bien-or- newPasswordAnswer es null y la propiedad RequiresQuestionAndAnswer es true.newPasswordAnswer is null and RequiresQuestionAndAnswer property is true.

El elemento de configuración machineKey (Esquema de configuración de ASP.NET) indica una clave de cifrado de equipo generada automáticamente.The machineKey Element (ASP.NET Settings Schema) configuration element indicates an auto-generated machine encryption key. Debe establecer explícitamente el atributo decryptionKey del elemento de configuración machineKey (Esquema de configuración de ASP.NET) para almacenar las respuestas de contraseña con ActiveDirectoryMembershipProvider.You must explicitly set the decryptionKey attribute of the machineKey Element (ASP.NET Settings Schema) element to store password answers with the ActiveDirectoryMembershipProvider.

Comentarios

La ActiveDirectoryMembershipUser clase llama al método para actualizar la pregunta y respuesta de la contraseña para un usuario en el almacén de pertenencia de Active Directory.The method is called by the ActiveDirectoryMembershipUser class to update the password question and answer for a user in the Active Directory membership store.

Requerir una pregunta y respuesta de la contraseña proporciona una capa adicional de seguridad al restablecer la contraseña de un usuario.Requiring a password question and answer provides an additional layer of security when resetting a user's password. Al crear un nombre de usuario, un usuario puede proporcionar una pregunta y una respuesta que se pueden usar posteriormente para restablecer una contraseña olvidada.When creating a user name, a user can supply a question and answer that can later be used to reset a forgotten password. El ChangePasswordQuestionAndAnswer método actualiza la pregunta y respuesta de la contraseña para un usuario de pertenencia a nuevos valores.The ChangePasswordQuestionAndAnswer method updates the password question and answer for a membership user to new values.

Para usar el ChangePasswordQuestionAndAnswer método, debe establecer estos atributos adicionales en el archivo de configuración de la aplicación:In order to use the ChangePasswordQuestionAndAnswer method, you must set these additional attributes in your application's configuration file:

  • requiresQuestionAndAnswerdebe sertrue.requiresQuestionAndAnswer must be true.

  • attributeMapPasswordQuestiony attributeMapPasswordAnswer deben asignarse a los atributos del esquema de Active Directory.attributeMapPasswordQuestion and attributeMapPasswordAnswer must be mapped to attributes in the Active Directory schema.

Si no se cumplen los criterios anteriores, se ProviderException produce una excepción al inicializar.If the above criteria are not met, a ProviderException is thrown at initialization.

La ActiveDirectoryMembershipProvider instancia de se conecta al Active Directory almacén de datos con las credenciales username proporcionadas en los parámetros y password para validar la combinación de nombre de usuario y contraseña.The ActiveDirectoryMembershipProvider instance connects to the Active Directory data store with the credentials provided in the username and password parameters to validate the user name/password combination. La actualización real de la pregunta y la respuesta se realiza con las credenciales de conexión configuradas del proveedor.The actual update of the question and answer is performed with the configured connection credentials of the provider.

Si se proporciona una contraseña incorrecta al ChangePasswordQuestionAndAnswer método, el servidor de directorio incrementará los contadores que realizan el seguimiento de los intentos de contraseña no válidos.If an incorrect password is supplied to the ChangePasswordQuestionAndAnswer method, the directory server will increment the counters that track invalid password attempts. Esto puede dar lugar a que el usuario se bloquee y no pueda iniciar sesión hasta que se desactive el estado de bloqueo UnlockUser mediante una llamada al método o hasta que se supere la duración de bloqueo especificada en el directorio.This can result in the user being locked and unable to log on until either the lock status is cleared by a call to the UnlockUser method or the locked duration specified in the directory passes.

Si la actualización de la pregunta y la respuesta se realiza correctamente EnablePasswordReset y la truepropiedad es, se restablecen los contadores de seguimiento de respuestas de contraseña no válidas del usuario.If the update to the question and answer succeeds and the EnablePasswordReset property is true, the user's bad password answer tracking counters are reset.

La respuesta de la contraseña se cifra EncryptPassword mediante el método antes de que se almacene en el almacén de datos de Active Directory.The password answer is encrypted using the EncryptPassword method before it is stored in the Active Directory data store. El algoritmo y la clave de cifrado se especifican mediante el elemento de configuración de elemento machineKey (esquema de configuración de ASP.net) .The encryption key and algorithm are specified by the machineKey Element (ASP.NET Settings Schema) configuration element. Se debe especificar el atributo de descifrado en el elemento machineKey (esquema de configuración de ASP.net) , la ActiveDirectoryMembershipProvider clase no es compatible con las claves de cifrado generadas automáticamente.The decryption attribute on the machineKey Element (ASP.NET Settings Schema) element must be specified, the ActiveDirectoryMembershipProvider class does not support auto-generated encryption keys.

La longitud máxima de la pregunta de la contraseña es de 256 caracteres.The maximum length for the password question is 256 characters. La longitud máxima de la respuesta de la contraseña es de 128 caracteres.The maximum length for the password answer is 128 characters.

Los espacios iniciales y finales se recortan de todos los valores passwordde parámetro, excepto.Leading and trailing spaces are trimmed from all parameter values except for password.

El proveedor encuentra la instancia de usuario que se va a actualizar realizando una búsqueda de subárbol para el nombre de usuario que empieza en el punto de búsqueda especificado en la cadena de conexión.The provider finds the user instance to update by performing a subtree search for the user name starting at the search point specified in the connection string. Vea el ActiveDirectoryMembershipProvider tema de la clase para obtener más información sobre las cadenas de conexión.See the ActiveDirectoryMembershipProvider class topic for more information about connection strings.

Se aplica a

Consulte también: