
今週、SQL Server インスタンスの 1 つが予期せずオフラインになるというインシデントが発生しました。インスタンスを実行する Windows サービスが停止し、サービスで使用されるアカウントが無効になっているため、サービスを再度起動できないことがわかりました。これらのアカウントは約 3 週間前に無効にされていたようです。
これらのサービスを格納する Windows サーバーは、ダウンしていることが判明した早朝に再起動されました。再起動の数時間前に、問題なくそのインスタンスに最後にアクセスしていました。このことから、常時実行されているサービスでは、資格情報の再認証は行われないと考えられます。これは本当でしょうか。そうでない場合、その動作を制御するポリシーまたはデフォルトは何ですか。
これまでオンラインで検索して見つけた情報はすべて、デバイスがドメイン ネットワーク上にない場合に発生する無効なアカウントのローカル認証に関するものでした。サービスが起動しない場合の標準的なトラブルシューティング手順以外に、サービスで使用される無効な AD アカウントについて説明しているものは何も見つからないようです。
答え1
それはあなたのサービス次第です。
サービスの開始に使用されるアカウントは、サービスの起動時にドメイン コントローラーから Kerberos チケットを取得します。そのチケットを使用してサービスが実行する処理は、アカウント エラーの発生に影響します。
SQL インスタンスの場合、問題は SQL インスタンスが起動していて、認証方法が SQL によって実行されるときに発生します。この場合のように、後になって初めて問題が発生する可能性があります。問題は、サービスが他のネットワーク リソースと対話する必要がない場合、再起動するかサービスを再起動しようとするまで、問題なくローカルで独自の処理を実行することです。(または、SQL が Windows 認証を実行する場合)
別の製品の例。Microsoft Exchange Topologie Active Directory サービスなど、このサービスはドメイン コントローラーを操作します。これがジョブです。したがって、このような場合、そのサービスが実行しているアカウントを閉じると、すぐに影響が出ます。
サービス アカウントを使用するのがベスト プラクティスですが、それらを文書化することは非常に重要です。サービスがまだ実行されている場合は、そのようなアカウントを無効にしないでください。