ロード バランサーから 2 つの Notes サーバーを実行しています。データベースは、ディレクトリ サービスを使用して LDAP に対する認証を行います。
ユーザーのパスワードの有効期限が切れているかどうかを確認するために LDAP をチェックする Java コードがあります。パスワードの有効期限が切れている場合、コードはパスワード変更画面にリダイレクトされます。このコードは、ページ読み込み前のイベントで実行されます。すべてのページがパブリック アクセスではないため、何かが行われる前に Notes によって生成されたログインが行われます。
パスワード変更画面は、まず LDAP でユーザーを認証してからパスワードを変更します。しかし、初めて Note にログインした直後にパスワードを変更すると、認証エラーが発生します。
パスワードを同じものに戻すと、認証エラーが発生せず、すべて正常に機能します。
そのため、Java コードが 2 回実行されているのではないかと疑っていました。メモ ログは 1 回だけ実行する必要があります。しかし、LDAP チームがログ記録をオンにすると、パスワード属性が 2 回変更されていることがわかりました (同じパスワードに変更したとき)。失敗で何が起こっていたかというと、パスワードは正常に変更されましたが、コードが 2 回目に実行されたとき、「古い」パスワードが使用されていたため、ブラウザに返されたのはこのエラーでした。
ここからが本当に奇妙になります。Notes 認証を行ってから、パスワードを変更するまで 1 分間待っても、コードは 1 回しか実行されません。
または、サーバーの 1 つにアクセスすると、コードは 1 回だけ実行されます。
ログイン直後にロードバランサーを通過するか、パスワードを変更しようとした場合にのみ、コードが 2 回実行されます。
ここで一体何が起こっているのか、何か考えはありますか?
更新: この問題は当社のリバース プロキシ サーバーから発生しているようです。当サイトの構成方法は、Browser->Reverve Proxy->Load Balancer->(Notes Server 1, Notes Server 2) です。Load Balancer にアクセスすると、コードは 1 回だけ実行されます。
notes.nsf にログインしていないかもしれませんが、コンソールを直接見ると、2 回実行されていることがわかります。
更新: リバース プロキシは Apache で実行されています。バージョンがわかりません。