Metodo IADsUser::ChangePassword (iads.h)

Il metodo IADsUser::ChangePassword modifica la password utente dal valore precedente specificato a un nuovo valore.

Sintassi

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

Parametri

[in] bstrOldPassword

BSTR che contiene la password corrente.

[out] bstrNewPassword

BSTR che contiene la nuova password.

Valore restituito

Questo metodo supporta i valori restituiti standard, inclusi i S_OK. Per altre informazioni e altri valori restituiti, vedere Codici di errore ADSI.

Commenti

IADsUser::ChangePassword funziona in modo analogo a IADsUser::SetPassword in quanto userà uno dei tre metodi per provare a modificare la password. Inizialmente, il provider LDAP tenterà un'operazione di modifica della password LDAP, se viene stabilita una connessione SSL sicura al server. Se questo tentativo ha esito negativo, il provider LDAP tenterà di usare Kerberos (vedere IADsUser::SetPassword per alcuni problemi che potrebbero causare windows con autenticazione tra foreste) e, se questo non riesce, chiamerà infine l'API di gestione di rete specifica di Active Directory, NetUserChangePassword.

In Active Directory il chiamante deve avere il diritto di accesso di controllo esteso Change Password per modificare la password con questo metodo.

Esempio

Nell'esempio di codice seguente viene illustrato come modificare una password utente.

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

Nell'esempio di codice seguente viene illustrato come modificare una password utente.

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

Requisiti

Requisito Valore
Client minimo supportato Windows Vista
Server minimo supportato Windows Server 2008
Piattaforma di destinazione Windows
Intestazione iads.h
DLL Activeds.dll

Vedi anche

Codici di errore ADSI

IADsUser

Metodi di proprietà IADsUser