ログインには ASP.NET MVC と AdMembership プロバイダーを使用していますが、さまざまな理由から、独自の「次回ログイン時にパスワードを変更する」機能を実装する必要がありました。
また、24 時間に 1 回以上の変更を許可しないという NIST 要件もあります。したがって、ADではそのように設定されています。
必要なのは、パスワードをデフォルトにリセットする際の 1 つの要件を無視することです。24 時間前であっても、次回のログオン時にパスワードの変更を学生に強制する必要があります。
これが私の突き刺しです。基本的に、パスワードをリセットしてから 24 時間以上前の値に PwdLastSet プロパティを変更したいと考えています。
if ( bSetToDefault )
{
var adDate = userToActOn.ADEntry.Properties[ "PwdLastSet" ][ 0 ];
DateTime passwordLastSet = DateTime.FromFileTime( ( Int64 ) adDate );
passwordLastSet = System.DateTime.Now.AddHours( -25 );
long filetime = passwordLastSet.ToFileTimeUtc();
userToActOn.ADEntry.Properties[ "PwdLastSet" ][ 0 ] = filetime;
}
しかし、ユーザーのパスワードが変更されていることを知っていても、null が返され続けます。
ヒントや提案はありますか?私は間違った物件を探していますか?