Поделиться через


Метод IADsUser::ChangePassword (iads.h)

Метод IADsUser::ChangePassword изменяет пароль пользователя с указанного старого значения на новое.

Синтаксис

HRESULT ChangePassword(
  [in]  BSTR bstrOldPassword,
  [out] BSTR bstrNewPassword
);

Параметры

[in] bstrOldPassword

BSTR, содержащий текущий пароль.

[out] bstrNewPassword

Объект BSTR, содержащий новый пароль.

Возвращаемое значение

Этот метод поддерживает стандартные возвращаемые значения, включая S_OK. Дополнительные сведения и другие возвращаемые значения см. в разделе Коды ошибок ADSI.

Комментарии

Функции IADsUser::ChangePassword аналогичны функциям IADsUser::SetPassword в том, что для изменения пароля используется один из трех методов. Изначально поставщик LDAP попытается выполнить операцию смены пароля LDAP, если установлено безопасное SSL-подключение к серверу. Если эта попытка завершается неудачей, поставщик LDAP попытается использовать Kerberos (см. раздел IADsUser::SetPassword для некоторых проблем, которые могут привести к windows с проверкой подлинности между лесами), и в случае сбоя он, наконец, вызовет API управления сетью Для Конкретной сети Active Directory NetUserChangePassword.

В Active Directory вызывающий объект должен иметь расширенное право управления изменением пароля , чтобы изменить пароль с помощью этого метода.

Примеры

В следующем примере кода показано, как изменить пароль пользователя.

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

В следующем примере кода показано, как изменить пароль пользователя.

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;
}

Требования

Требование Значение
Минимальная версия клиента Windows Vista
Минимальная версия сервера Windows Server 2008
Целевая платформа Windows
Header iads.h
DLL Activeds.dll

См. также раздел

Коды ошибок ADSI

IADsUser

Методы свойств IADsUser