こんにちは、手島さん。
Microsoft Windowsフォーラムに質問を投稿してくださりありがとうございます!
問題の説明に基づいています。ユーザーが特定のマシンで突然「期限切れ」や「アクセス拒否」エラーが出る際の症状のもっともらしい説明は、Windows 11がネットワークリソースのために認証情報を積極的にキャッシュしているからです。ユーザーがファイルサーバーに接続して「認証情報を覚えている」にチェックを入れたり、アプリケーションが認証トークンをキャッシュした場合、Windowsはこれを認証マネージャーに保存します。ユーザーが後でファイルサーバーにアクセスしようとすると、WindowsはアクティブなログインユーザーのKerberosチケット付与チケット(TGT)ではなく、その特定のキャッシュされた認証情報を使おうとします。キャッシュされたトークンのセッションが古くなっているか、バックエンドのパスワードが変更された場合、ファイルサーバーはそれを拒否し、「期限切れ」エラーを出します。だからこそ、Windowsの認証情報を手動で削除することで問題が解決します。
一方、Windows 11はモダンスタンバイを利用しています。デフォルトでは、Kerberos TGTは10時間有効です。PCがスリープ状態になり、チケットが切れてPCが起動すると、WindowsはADサーバーに対して静かにTGTを更新するはずです。しかし、ウェイク時にネットワークインターフェースの初期化に時間がかかりすぎると、更新は失敗します。OSは数学的に期限切れのKerberosチケットを使ってファイルサーバーにアクセスしようとしますが、即座に失敗します。
ここでもう一つ言及すべき点は、時には見えないバックグラウンドプロセス(マッピングされたドライブスクリプトや更新エージェントなど)が、ファイルサーバーのIPC$シェアに対して匿名または代替認証セッションを確立することです。Windowsはターゲットサーバーごとに1セットの認証情報しか許可していません。ユーザーが共有フォルダをクリックすると、Windowsは既存の競合するセッションパイプにユーザーのトークンを押し込もうとしますが失敗します。
アカウントの有効期限を「無期限」から「100年後」に変更するという一時的な回避策について。さて!その属性を変更すると、ADオブジェクトに変更が強制されます(USN - Update Sequence Numberの更新)。これによりドメインコントローラーは変更を再現せざるを得なくなります。さらに重要なのは、ユーザーの現在のKerberos TGT状態を無効にすることです。次にクライアントが認証シーケンスを試みた際、ドメインコントローラーはWindows 11 PCに古いキャッシュをダンプし、完全に新規のKerberosチケットを交渉させ、キャッシュされた認証情報の罠を回避します。
このシナリオでは、Windowsがネットワーク共有用の明示的な認証情報を保存しないようにし、常にアクティブなKerberosセッションを強制的に使うことを検討しています。
上記の情報がお役に立てば幸いです!