ActiveDirectoryMembershipProvider.ChangePassword Método

Definição

Altera a senha para o usuário especificado.

public:
 override bool ChangePassword(System::String ^ username, System::String ^ oldPassword, System::String ^ newPassword);
public override bool ChangePassword (string username, string oldPassword, string newPassword);
override this.ChangePassword : string * string * string -> bool
Public Overrides Function ChangePassword (username As String, oldPassword As String, newPassword As String) As Boolean

Parâmetros

username
String

O nome do usuário para o qual atualizar a senha.

oldPassword
String

A senha atual do usuário especificado.

newPassword
String

A nova senha do usuário especificado.

Retornos

true se a senha tiver sido atualizada com êxito; caso contrário, false.

Exceções

username está vazio ou excede o comprimento máximo do nome de usuário (normalmente de 256 caracteres).

- ou -

username contém vírgulas.

- ou -

O nome de usuário é mapeado para o atributo userPrincipalName e o parâmetro username contém barras invertidas.

- ou -

oldPassword ou newPassword é uma cadeia de comprimento zero.

- ou -

oldPassword ou newPassword excede o comprimento máximo da senha (geralmente de 128 caracteres).

- ou -

newPassword é menor que o tamanho de senha mínimo especificado na propriedade MinRequiredPasswordLength

- ou -

newPassword contém um número menor que o número de caracteres não alfabéticos especificado na propriedade MinRequiredNonAlphanumericCharacters.

- ou -

newPassword falha na validação pela expressão regular definida na propriedade PasswordStrengthRegularExpression.

username é null.

- ou -

oldPassword é null.

- ou -

newPassword é null.

newPassword não atende aos requisitos de complexidade definidos pelo servidor do Active Directory.

Não foi possível realizar uma conexão segura para um servidor do AD LDS.

O método ChangePassword(String, String, String) é chamado antes que a instância ActiveDirectoryMembershipProvider seja inicializada.

Ocorreu uma exceção sem tratamento.

Comentários

O ChangePassword método é usado para atualizar a senha do usuário no armazenamento de dados do Active Directory. Independentemente das credenciais que a ActiveDirectoryMembershipProvider instância está configurada para usar, o provedor se conecta ao servidor do Active Directory usando os username parâmetros e oldPassword como as credenciais de conexão.

Se a EnablePasswordReset propriedade for true, o usuário não poderá alterar sua senha se a conta tiver sido bloqueada anteriormente porque o usuário fez muitas tentativas para responder à pergunta de senha. O usuário precisará aguardar o número de minutos especificado na PasswordAnswerAttemptLockoutDuration propriedade antes de alterar a senha.

Se a alteração de senha for bem-sucedida e a EnablePasswordReset propriedade for true, os contadores de acompanhamento de resposta de senha inválido do usuário serão redefinidos.

O provedor localiza a instância de usuário a ser atualizada executando uma pesquisa de subárvore para o nome de usuário começando no ponto de pesquisa especificado na cadeia de conexão. Consulte o tópico de ActiveDirectoryMembershipProvider classe para obter mais informações sobre cadeias de conexão.

Para alterar senhas em um servidor do Active Directory, o connectionProtection atributo deve ser definido SignAndSealcomo .

Ao usar um servidor ADAM, o connectionProtection atributo pode ser definido Nonecomo , mas somente se você configurar explicitamente o servidor ADAM para permitir a alteração de senha em conexões não seguras.

Aplica-se a

Confira também