認証時に各セッション (デスクトップ セッションなど) を検証し、いくつかの基準に基づいて許可または禁止するこの気の利いた PAM モジュールがあります。Windows 7でも同じことをしたいと思います。
さて、これはばかげているか些細なことのように聞こえるかもしれませんが、私は Windows システムの使い方を本当に知りません。ユーザーがセッションを開始しようとします。)
あなたが探しているのはSubauthentication Packageだと思いますが、 Credential Providerでいくらかのマイレージを得ることができます。
サブ認証パッケージは、ローカル セキュリティ機関または Kerberos キー配布センター (KDC) が、認証が成功した後、ユーザーにアクセスが許可される前に呼び出す、動的にリンクされたライブラリです。
Windows は、構成に応じて、ローカルで、または Kerberos を介してユーザーを認証します。次の 2 つの関数をエクスポートする DLL をビルドする必要があります。
Msv1_0SubAuthenticationRoutine
(対話型ログオンまたは Kerberos では呼び出されません)Msv1_0SubAuthenticationFilter
コードをその DLL に入れ、ユーザーがログオンを許可されている場合は STATUS_SUCCESS を返すか、その他のエラー コードのいずれかを返します。パスワードにアクセスできるとは限りません。
Kerberos を介してログオンする場合は、DLL を KDC に登録する必要があります。ハードウェアや生体認証デバイスなど、一部のローカル情報に対する認証が困難になります。
したがって、資格情報プロバイダーが役立つかもしれませんが、それは最も洗練されたソリューションではありません。資格情報を取得し、認証パッケージにフィードするように設計されています。ただし、Microsoft は、資格情報プロバイダーがユーザーをロックアウトしないことを保証したため、(セーフ モードで) 常に呼び出されるとは限らず、ユーザーは別の CP などをインストールする可能性があります。