サーバーで実行するカスタム管理タスクがいくつかありますが、Web サービス/アプリケーションを介してサーバーをリモートで管理できるようにしたいと考えています。サーバーで実行するタスクには、昇格されたアクセスが必要です。
簡単な答えは、ASP.NET アプリケーションをサーバー上で管理者として実行することです。これにより、管理タスクを実行するために必要なすべての特権が付与されます。ただし、管理者ユーザーとして Web アプリを実行することは、あまりお勧めできません (当然のことです)。では、管理タスクを実行できる Web アプリケーションを提供するためのオプションは何ですか? これまでの私の考えは次のとおりです。
- ASP.NET によるある種のなりすまし。
- ASP.NET アプリケーションがプラグインするための名前付きパイプ通信を使用して、サーバー上で管理者 (SYSTEM?) として実行されるセカンダリ プロセス。
これら 2 つのアプローチの長所と短所は何でしょうか? 私が検討していない代替案はありますか?私の考えでは、ASP.NET の偽装は依然として Web アプリケーションにあまりにも多くの権限を付与している可能性がありますが、二次プロセスを作成し、適切なインターフェイスをすべて維持することは、理想的には避けるべき余分な作業です。