2017-07-11 68 views
0

LDAPを使用してActive Directory更新を実行するWebアプリケーションを開発しています。 IIS 7でアプリケーションをホストすると、という文でAccess is deniedエラーが発生します。使用するIISアプリケーションプールIDログオンユーザーWindows ID

次に、アプリケーションプールがID「IIS APPPOOL \ ASP.NET v4.0」を使用して更新を実行していることがわかりました。

Webアプリケーションを使用しているユーザーのウィンドウのアカウントがアプリケーションプールのIDである必要があります。

  1. >認証モードを追加= IIS
  2. 上のweb.config
  3. 無効匿名認証の「Windows」はアプリケーションとしてアカウントに建てられた「ApplicationPoolIdentity」を選択します。私は次のことを行っている

    プールの身元確認

しかし、まだ動作させていない。

答えて

3

あなたが探しているコンセプトは、documentationから偽装
と呼ばれている:

  1. 開き、IISマネージャし、管理するレベルに移動。 IISマネージャーを開く方法については、「IISマネージャーを開く(IIS 7)」を参照してください。 UI内の場所への移動については、「IISマネージャでのナビゲーション(IIS 7)」を参照してください。
  2. 機能ビューで、[認証]をダブルクリックします。
  3. [認証]ページで、ASP.NET偽を選択します。
  4. [操作]ウィンドウで[有効]をクリックして、ASP.NET偽装認証を既定の設定で使用します。
  5. オプションで、[操作]ウィンドウで[編集]をクリックしてセキュリティプリンシパルを設定します。
  6. [ASP.NET偽装の設定]ダイアログボックスで、[特定のユーザー]または[認証されたユーザー]のいずれかを選択します。どちらを選択するかによって、IISはASP.NETアプリケーションのセキュリティコンテキストにこのIDを使用します。既定では、IIS 7は認証されたユーザーを偽装するように設定されています。
  7. [OK]をクリックして終了するか、次のオプションの手順に進み、偽装に変更します。
  8. オプションで、[設定]をクリックして特定のユーザーIDを変更します。
  9. [資格情報の設定]ダイアログボックスで、既存のユーザーアカウントの名前を[ユーザー名]に入力し、そのユーザーアカウントに関連付けられているパスワードを[パスワード]に入力し、IISが匿名アクセス。
  10. [OK]をクリックして[資格情報の設定]ダイアログボックスを閉じます。
  11. [OK]をクリックして、[ASP.NET偽装設定の編集]ダイアログボックスを閉じます。
+0

こんにちは、ご提案いただきありがとうございます。
私はそれを試して、 "System.Security.Principal.WindowsIdentity.GetCurrent()。Name"の値をチェックすると、 "IIS APPPOOL \ ASP.NET v4が表示されます。0 "と表示されます。これは、アプリケーションがまだIIS APPPOOL IDを使用してWebアプリケーションを実行していることを意味します。
これはIIS認証となりすまし設定のスクリーンショットです。 :https://image.ibb.co/bVaNXv/IIS_Authentication.png –

+0

また、 "identity impersonate = true"をweb.configで試してみましたが、うまくいきません –

関連する問題