現在ログインしているユーザー以外のIDでiisexpressアプリプールを実行する方法はありますか?
現在、「runas」コマンドを使用してこの問題を回避していますが、利用できるiisexpressに組み込みのものがあるかどうか知りたいです。
これは可能なはずです。 IIS Expressサイトのapplicationhost.configファイルでは、<processModel/>
の下に<applicationPoolDefaults>
で定義されている<applicationPools>
要素があります。
<processModel>
要素には、userName
およびpassword
の属性があります。
から [〜#〜] msdn [〜#〜] :
ASP.NETが、既定のプロセスIDのWindows IDとは異なるWindows IDでワーカープロセスを実行することを指定します。デフォルトでは、この属性はMachineに設定されており、ASP.NETのインストール時に自動的に作成されるASPNETというユーザーアカウントでプロセスが実行されます。 ASPNETアカウントのパスワードは、インストール時に暗号で生成されます。この属性とパスワード属性に有効な資格情報が提示されている場合、プロセスは指定されたアカウントで実行されます。
これにより、ログインしたユーザーとは異なる資格情報でサイトを実行できるようになります。
上記のソリューションを機能させることができず、別の資格情報でIIS Expressを実行しているときにVisual Studioからデバッグできるようにしたいと考えました。
資格情報として実行すると、IISExpressで通常どおりデバッグできます(これは、プロジェクトの構成方法であると想定しています)。これは、データベース接続などに統合セキュリティを使用する必要があるが、異なる資格情報を使用する必要がある場合に最適です。
「runas」は唯一の解決策です。 IIS Expressは、applicationhost.configファイルで定義されているプロセスモデル設定を尊重しない場合があります。
コマンドラインからRunas/netonly IISExpress.exeは機能し、私たちがそうであったように、あなたが答えを求めているなら、非常に実行可能です。 関連記事
これは本当に機能するのでしょうか-IIS Expressはすべてのアプリケーションプールを同じプロセスで実行しているようです-そのプロセスは現在のユーザーのコンテキストで実行されます...?
「別のユーザーとして実行」オプションは機能すると思われますが、Visual Studioの起動に依存する代わりに、コマンドライン(またはビルドイベント)から起動するIISを起動する必要があります。:(