正しいアカウントでログインしているにもかかわらず、Windows サービスでマップされたドライブが見つからない

正しいアカウントでログインしているにもかかわらず、Windows サービスでマップされたドライブが見つからない

ウィンドウズ10プロ

バージョン 1709 OS

ビルド 16299.666

ネットワーク ドライブにアクセスするサービスがありますU:/public/blah.txt。コマンド プロンプトを使用して通常のユーザーとして実行すると機能しますが、サービスとして実行すると機能しません。

に移動しservices.msc -> servicename -> properties -> Log On -> This accountて正しいパスワードを使用しMYDOMAIN/MYUSERて再起動しても、まだ機能せず、同じエラー メッセージが表示されます。これは、コマンド プロンプトからプログラムを正常に実行できるアカウントです。

これはGolangの実行ファイルで、nssmサービスであり、実際のエラー メッセージは次のとおりですError opening file U:\public\blah.txt: The system cannot find the path specified

このプログラムは以前は別のコンピューターのサービスとして動作しており、同じドライブにアクセスしています。私が確認した唯一の違いは、現在使用しているアカウントがドメイン アカウントであるのに対し、以前はローカル ユーザーであったことです。

ドライブ マッピングを持つユーザーとして正常にログインしているのに、サービスがドライブ マッピングを認識しないのはなぜですか?

答え1

サービスがマップされたドライブ経由でデータにアクセスする代わりに、UNC パス名を使用します。

ユーザープロファイルが読み込まれるときにドライブをマップする方法はいくつかあります。サービス特定のアカウントを使用してログオンします。このため、UNC パスはマップされたドライブよりも信頼性が高くなります。

関連情報