IADsUser::ChangePassword-Methode (iads.h)
Die IADsUser::ChangePassword-Methode ändert das Benutzerkennwort vom angegebenen alten Wert in einen neuen Wert.
Syntax
HRESULT ChangePassword(
[in] BSTR bstrOldPassword,
[out] BSTR bstrNewPassword
);
Parameter
[in] bstrOldPassword
Ein BSTR , der das aktuelle Kennwort enthält.
[out] bstrNewPassword
Ein BSTR , der das neue Kennwort enthält.
Rückgabewert
Diese Methode unterstützt die Standardmäßigen Rückgabewerte, einschließlich S_OK. Weitere Informationen und andere Rückgabewerte finden Sie unter ADSI-Fehlercodes.
Hinweise
IADsUser::ChangePassword funktioniert ähnlich wie IADsUser::SetPassword , da eine von drei Methoden verwendet wird, um das Kennwort zu ändern. Zunächst versucht der LDAP-Anbieter, ein LDAP-Kennwort zu ändern, wenn eine sichere SSL-Verbindung mit dem Server hergestellt wird. Wenn dieser Versuch fehlschlägt, versucht der LDAP-Anbieter als Nächstes, Kerberos zu verwenden (informationen zu einigen Problemen, die unter Windows bei gesamtstrukturübergreifender Authentifizierung auftreten können, finden Sie unter IADsUser::SetPassword ). Wenn dies ebenfalls fehlschlägt, ruft er schließlich die Active Directory-spezifische Netzwerkverwaltungs-API NetUserChangePassword auf.
In Active Directory muss der Aufrufer über das erweiterte Zugriffssteuerungsrecht Kennwort ändern verfügen, um das Kennwort mit dieser Methode zu ändern.
Beispiele
Im folgenden Codebeispiel wird gezeigt, wie Sie ein Benutzerkennwort ändern.
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
Im folgenden Codebeispiel wird gezeigt, wie Sie ein Benutzerkennwort ändern.
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;
}
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows Vista |
Unterstützte Mindestversion (Server) | Windows Server 2008 |
Zielplattform | Windows |
Kopfzeile | iads.h |
DLL | Activeds.dll |