Método IADsUser::ChangePassword (iads.h)
El método IADsUser::ChangePassword cambia la contraseña de usuario del valor antiguo especificado a un nuevo valor.
Sintaxis
HRESULT ChangePassword(
[in] BSTR bstrOldPassword,
[out] BSTR bstrNewPassword
);
Parámetros
[in] bstrOldPassword
BSTR que contiene la contraseña actual.
[out] bstrNewPassword
BSTR que contiene la nueva contraseña.
Valor devuelto
Este método admite los valores devueltos estándar, incluidos S_OK. Para obtener más información y otros valores devueltos, vea Códigos de error adsi.
Comentarios
IADsUser::ChangePassword funciona de forma similar a IADsUser::SetPassword en que usará uno de los tres métodos para intentar cambiar la contraseña. Inicialmente, el proveedor LDAP intentará una operación de cambio de contraseña LDAP, si se establece una conexión SSL segura al servidor. Si se produce un error en este intento, el proveedor LDAP intentará usar Kerberos (consulte IADsUser::SetPassword para ver algunos problemas que pueden dar lugar a Windows con autenticación entre bosques) y, si esto también produce un error, finalmente llamará a la API de administración de red específica de Active Directory, NetUserChangePassword.
En Active Directory, el autor de la llamada debe tener el derecho de acceso de control extendido Cambiar contraseña para cambiar la contraseña con este método.
Ejemplos
En el ejemplo de código siguiente se muestra cómo cambiar una contraseña de usuario.
Dim usr As IADsUser
Dim szOldPass As String
Dim szNewPass As String
On Error GoTo Cleanup
Set usr = GetObject("WinNT://Fabrikam/JeffSmith,user")
' Add code to securely retrieve the old and new password.
usr.ChangePassword szOldPass, szNewPass
Cleanup:
If (Err.Number<>0) Then
MsgBox("An error has occurred. " & Err.Number)
End If
Set usr = Nothing
En el ejemplo de código siguiente se muestra cómo cambiar una contraseña de usuario.
HRESULT ChangePassword(
IADsUser *pUser,
LPWSTR oldPasswd,
LPWSTR newPasswd)
{
HRESULT hr=S_OK;
if(!pUser) { return E_FAIL;}
hr = pUser->ChangePassword(oldPasswd, newPasswd);
printf("User password has been changed");
return hr;
}
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows Vista |
Servidor mínimo compatible | Windows Server 2008 |
Plataforma de destino | Windows |
Encabezado | iads.h |
Archivo DLL | Activeds.dll |