6

Active Directory ドメイン ( と呼びましょう) と、IIS アプリケーション プール ID に使用される foodomainドメイン ユーザー アカウント ( ) があります。foodomain\fooAppPoolUser

SQL サーバーにアクセスし、別のデータベースにアクセスする IIS (独自のアプリ プールを使用) に複数のアプリケーションを配置する必要が あるためNetwork Service、新しいユーザー アカウントではなく、このユーザー アカウントでアプリ プールを実行します。AppPoolIdentity

問題は、このユーザー アカウントにどのユーザー権限を設定する必要があるか、およびこれが機能するように IIS をどのようにセットアップする必要があるかを説明する明確な HOW-TO が見つからないことです。

最初にエラーが発生しました (残念ながらどれがどれだったか思い出せません)。次にfooAppPoolUser、ローカル管理者グループに追加しました (Administrators私が知っているのはテストのみでした)。ここで、ユーザーを再度削除し、IIS を再起動しましたが、引き続き機能します。

だから私は少し混乱していて、それを機能させるためにどのように構成/セットアップをしなければならないかを知りたい.

私が読んだどこかで、アカウントには「認証後にクライアントを偽装する」ユーザー権限が必要であることがわかりました。これが、アカウントを管理者グループに追加した理由です (ユーザー権利の割り当てはグループ ポリシーによってブロックされていますが、本当に必要な場合は変更できます。

質問が何であるかが十分に明確であり、誰かが答えてくれることを願っています。

4

4 に答える 4

8

一部のセキュリティ管理者は、既定のポリシー設定を変更して IIS 内にアプリをインストールできないようにするという残酷で異常な罰を楽しんでいるように見えるため、この情報を見つけるのが非常に難しいのは残念です。

アカウントを ApplicationPool ID として機能させるには、次のことを行う必要があります。

  • 実行aspnet_regiis -ga DOMAIN\USERして、IIS メタベースにアクセスするためのアクセス許可を追加します。(まさにそれが何を意味するのか、誰にもわかりません) aspnet_regiis リファレンス
  • IIS_IUSRSユーザーをグループに追加します。これは、IIS 構成設定の processmodel.manualGroupMembership によっては自動的に行われる場合がありますが、自分で追加するのが最も簡単です。
  • セキュリティポリシーがWindowsのデフォルトを使用している場合、それはそれについてです。セキュリティ ポリシーがロックされている場合、アカウントに対して特定のユーザー権限を有効にする必要がある場合があります。デフォルトで ApplicationPoolIdentities 用に持っているもの (これは開始するのに適しているようですが、必ずしもすべてが必要というわけではありません):
    • ネットワークからこのコンピュータにアクセスする
    • プロセスのメモリ クォータを調整する
    • ローカル ログオンを許可する
    • トラバース チェックのバイパス
    • セキュリティ監査の詳細を生成する
    • 認証後にクライアントを偽装する- (多くの場合、ロックダウンされた環境ではデフォルトで使用できません)
    • バッチ ジョブとしてログオン- (多くの場合、ロックダウンされた環境ではデフォルトで使用できません)
    • サービスとしてログオン - (これが必要かどうかはわかりません)
    • プロセス レベル トークンを置き換える
  • Windows 認証と Kerberos (provider= Negotiate) を使用している場合、URL によっては、カーネルモード認証がオンになっている場合は、SPN を設定する必要がある場合があります。可能であれば、NTLM に切り替えることをお勧めします。それ以外の場合は、SPN に関する以下の記事を参照し、友好的なドメイン管理者を見つけて、SPN を追加してください。

楽しい読書:

于 2016-01-06T00:01:30.863 に答える
4

管理者権限を削除した後にアプリケーションが機能した理由は、アプリケーションが管理者権限を使用してフレームワーク一時フォルダーにコンパイルされたためです。アプリケーションがコンパイルされたため、管理者権限を削除した後にアプリケーションが機能しました。アプリケーションを更新し、再コンパイルが必要な場合は、アプリ プール アカウントに再度信頼が必要になります。

最初にエラーが発生し (残念ながらどれがどれだったか思い出せません)、ローカル管理者グループに fooAppPoolUser を追加しました (管理者はテストのみを目的としていました)。ここで、ユーザーを再度削除し、IIS を再起動しましたが、引き続き機能します。

于 2013-02-17T07:20:44.637 に答える
1

アリエン、

IIS での構成手順については、TechNetのアプリケーション プールの ID の指定 (IIS 7)を参照してください。

于 2012-02-15T23:54:49.510 に答える
-1

次のリンクが私が持っていた同様の質問に答えていることがわかりました: http://www.iis.net/learn/manage/configuring-security/application-pool-identities

基本的に、ApplicationPoolIdentityは仮想ユーザー アカウントであり、依然として NETWORK SERVICE のように動作しますが、いくつかの欠点はありません。各アプリ プールには、独自の ApplicationPoolIdenity アカウントが作成されています。

IIS 7.5 アプリケーション プール IDに固有の詳細情報も参照できます。

于 2013-01-04T00:15:24.997 に答える