
IIS 10 を実行して、アプリケーション プール ID としてドメイン ユーザーを使用しました。my-company/custom_app_pool_identity
しかし、ローカル管理者も付与されていたため、サーバー自体からそのユーザーを完全に削除しました (ID をローカル管理者にもしたくありませんでした。appcmd
コマンドを使用してそのパスワードを確認できます)
コード (PHP) では、ネットワーク フォルダーにアクセスしますX:/some_folder
。
このアプリ プールが実行する Web サイトには、そのフォルダーのファイルが表示されますが、そうでない場合は何も表示されません (アクセスできない場合はエラーは発生しません)。
しかし、削除後、ファイルが一切表示されなくなりました。これは、アプリが にアクセスできないことを意味していると考えられますX:/some_folder
。ローカル開発環境では、ファイルは表示されます。(削除直後は機能していたので奇妙ですが、キャッシュされていたのかもしれません。)
しかし、ドメイン ユーザーなので、サーバー自体からドメイン ユーザーを完全に削除できると確信していました。したがって、このユーザーがそのネットワーク フォルダーの許可されたユーザーに追加されていれば、アプリが ID を使用して IIS によって実行されるとmy-company/custom_app_pool_identity
、機能するはずです。または、カスタム ユーザーの下で IIS を使用して任意の ID を実行する場合、そのユーザーがサーバー自体にも存在している必要がありますか?
もしそうなら、それをサーバーに再度追加して、適切な権限(管理者権限ではない)を与えるだけでよいのでしょうか?
更新: フォルダーのセキュリティ (プロパティ内) を確認したところ、何らかの理由で、ドメイン ユーザーがユーザー リストから削除されていました。ドメイン ユーザーを再度追加し、適切な権限を与えると、正常に機能するようになりました。つまり、ユーザーがサーバーにローカル ユーザーとして存在していなくても機能することが確認できます。ローカル管理者からユーザーを削除する前にユーザー リストから削除されていたのに、なぜユーザー リストから消えたのか疑問に思います。