アカウントの有効期限 (LDAP プロバイダー)
アカウントの有効期限を設定するには、IADsUser.AccountExpirationDate プロパティを目的の日付値に設定します。 アカウントの有効期限を無効にするには、accountExpires 属性を 0 に設定します。 次のコード例は、有効期限を設定する方法を示しています。
Public Sub SetUserAccountExpirationDate(User As IADsUser, ExpirationDate As Date)
If 0 = ExpirationDate Then
' Disable the account expiration date.
User.Put "accountExpires", 0
Else
' Set the new account expiration date.
User.AccountExpirationDate = ExpirationDate
End If
User.SetInfo
End Sub
/***************************************************************************
SetUserAccountExpirationDate()
***************************************************************************/
HRESULT SetUserAccountExpirationDate(IADsUser *pUser, DATE date)
{
if(!pUser)
{
return E_INVALIDARG;
}
HRESULT hr;
if(!date || date < 0)
{
// Account never expires. Set the accountExpires attribute to zero.
VARIANT var;
VariantInit(&var);
V_I4(&var) = 0;
V_VT(&var) = VT_I4;
hr = pUser->Put(CComBSTR("accountExpires"), var);
VariantClear(&var);
}
else
{
// Account expires on date.
hr = pUser->put_AccountExpirationDate(date);
}
if(S_OK == hr)
{
hr = pUser->SetInfo();
}
return hr;
}
Note
accountExpires 属性には、アカウントの有効期限が含まれています。 Active Directory ユーザーとコンピューター MMC スナップインには、アカウントの有効期限が切れる日付が表示されます。 つまり、Active Directory ユーザーとコンピューター MMC スナップインでは、アカウントの有効期限が accountExpires 属性に含まれる日付よりも 1 日早く表示されます。