Benutzer muss Kennwort bei der nächsten Anmeldung ändern (LDAP-Anbieter)
Um einen Benutzer zu zwingen, sein Kennwort bei der nächsten Anmeldung zu ändern, legen Sie das pwdLastSet-Attribut auf 0 (null) fest. Um diese Anforderung zu entfernen, legen Sie das pwdLastSet-Attribut auf -1 fest. Das pwdLastSet-Attribut kann nur vom System auf einen anderen Wert festgelegt werden.
Im folgenden Codebeispiel wird gezeigt, wie die Option "Benutzer muss Kennwort bei der nächsten Anmeldung ändern" festgelegt wird.
Dim usr as IADs
Set usr = GetObject("LDAP://CN=Jeff Smith,OU=Sales,DC=Fabrikam,DC=Com")
usr.Put "pwdLastSet", CLng(0)
usr.SetInfo
Im folgenden Codebeispiel wird gezeigt, wie die Option "Benutzer muss Kennwort bei der nächsten Anmeldung ändern" festgelegt wird.
/***************************************************************************
SetUserMustChangePassword()
***************************************************************************/
HRESULT SetUserMustChangePassword(LPCWSTR pwszUserADsPath,
LPCWSTR pwszUsername,
LPCWSTR pwszPassword)
{
IADs *pUser;
HRESULT hr;
hr = ADsOpenObject(pwszUserADsPath,
pwszUsername,
pwszPassword,
ADS_SECURE_AUTHENTICATION,
IID_IADs,
(void**)&pUser);
if(SUCCEEDED(hr))
{
VARIANT var;
VariantInit(&var);
V_I4(&var) = 0;
V_VT(&var) = VT_I4;
hr = pUser->Put(CComBSTR("pwdLastSet"), var);
hr = pUser->SetInfo();
VariantClear(&var);
pUser->Release();
}
return hr;
}