ActiveDirectoryMembershipProvider.ChangePassword Método

Definição

Altera a palavra-passe do utilizador 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 utilizador para atualizar a palavra-passe.

oldPassword
String

A palavra-passe atual do utilizador especificado.

newPassword
String

A nova palavra-passe para o utilizador especificado.

Devoluções

true se a palavra-passe fosse atualizada com sucesso; caso contrário, false.

Exceções

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

-ou-

username contém vírgulas.

-ou-

O nome de utilizador está mapeado para o userPrincipalName atributo e o username parâmetro contém barras adicionais.

-ou-

oldPassword ou newPassword é uma corda de comprimento zero.

-ou-

oldPassword ou newPassword ultrapassa o comprimento máximo da palavra-passe (normalmente 128 caracteres).

-ou-

newPassword é inferior ao tamanho mínimo da palavra-passe especificado na MinRequiredPasswordLength propriedade

-ou-

newPassword contém menos do que o número de caracteres não alfabéticos especificados na MinRequiredNonAlphanumericCharacters propriedade.

-ou-

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

username é null.

-ou-

oldPassword é null.

-ou-

newPassword é null.

newPassword não cumpre os requisitos de complexidade definidos pelo servidor Active Directory.

Não podia ser feita uma ligação segura a um servidor do Active Directory Application Mode.

Ocorreu uma exceção não tratada.

Observações

O método ChangePassword é usado para atualizar a palavra-passe do utilizador na Active Directory data store. Independentemente das credenciais que a instância ActiveDirectoryMembershipProvider esteja configurada para usar, o fornecedor liga-se ao servidor Active Directory usando os parâmetros username e oldPassword como credenciais de ligação.

Se a EnablePasswordReset propriedade for true, o utilizador não pode mudar a sua palavra-passe se a conta esteve previamente bloqueada porque o utilizador fez demasiadas tentativas para responder à pergunta da palavra-passe. O utilizador terá de esperar o número de minutos especificado na PasswordAnswerAttemptLockoutDuration propriedade antes de alterar a palavra-passe.

Se a alteração da palavra-passe for bem-sucedida e a EnablePasswordReset propriedade for true, então os contadores de rastreio de respostas de palavra-passe erradas do utilizador são reiniciados.

O fornecedor encontra a instância do utilizador a atualizar realizando uma pesquisa em subárvore pelo nome de utilizador a partir do ponto de pesquisa especificado na cadeia de ligação. Consulte o ActiveDirectoryMembershipProvider tópico da aula para mais informações sobre cordas de ligação.

Para alterar palavras-passe num servidor Active Directory, o atributo connectionProtection deve ser definido como SignAndSeal.

Ao usar um servidor ADAM, o connectionProtection atributo pode ser definido para None, mas apenas se configurar explicitamente o servidor ADAM para permitir a alteração de palavra-passe em ligações não seguras.

Aplica-se a

Ver também