(IOCPを使用して)http.sysベースのサーバーにシングルサインオンを実装しようとしていますが、AcceptSecurityContextで奇妙な問題が発生し、SEC_E_LOGON_DENIEDでランダムに失敗します。
同じクライアントマシンから同じサーバーマシンに接続すると(約50%の確率で)、http接続が1つしかないクライアントが1つしかない場合でも、ランダムにエラーが発生します。両方のマシンは同じドメインにあり、どちらもドメインコントローラーではありません。
失敗した呼び出しは、チャレンジ/レスポンスシーケンスの2番目(そして最後)の呼び出しであり、最初の呼び出しは常に成功します。
AcceptSecurityContext呼び出しの前にIDEにブレークポイントがある場合(他に何も変更されていない場合)、認証は常に成功します(テストできる限り)。
タイミングの問題を疑って、呼び出しの前にSleep()を配置しましたが、成功率は向上しませんでした。
また、httpサーバーが実行されているのと同じマシンから接続する場合、認証は常に成功します。
クライアントブラウザ(IEとChrome)に関係なく、動作は同じです。
何か案は?