2011-06-22 20 views
0

サーバーでフォーム認証を有効にしてIIS7で基本的なASP.NET Webサイトを設定しました。 IIS7フォーム認証で画像アクセスが拒否されない

<?xml version="1.0"?> 
<configuration> 
    <system.web> 

    <authentication mode="Forms"> 
     <forms name=".ASPXAUTH" loginUrl="Login.aspx" defaultUrl="Test.aspx" protection="All" timeout="30" path="/" requireSSL="false" slidingExpiration="true"/> 
    </authentication> 

    <authorization> 
     <deny users="*"/> 
    </authorization> 

    <compilation debug="true"/> 
    </system.web> 
</configuration> 

私はDefault.aspxページをご覧ください。

が、私は忠実にLogin.aspxのページにリダイレクトされます:ちょうどにやにや笑いのために、私は誰も否定しています。しかし、私は同じサイトのルート上の.txtファイルまたは.pngファイルを参照することができ、挑戦なしでそれを表示します。

これは奇妙です。なぜなら、Cassini開発サーバーでは、これらのファイルへのアクセスがブロックされているからです。これは、IIS7サーバーに公開した後にのみ発生します。

私はIIS7で何か不足している必要がありますが、私の人生のためにそれを理解することはできません。

  • 私は、統合モードを有効にした独自の.NET 4.0アプリケーションプールを持っています。
  • サーバーでフォーム認証が有効になっています
  • FormsAuthenticationモジュールの[管理されたモジュールの編集]ポップアップで、「要求のみを呼び出す...」のチェックを外しましたが、そうしたときに奇妙なエラーが発生します(何らかの欠けのアセンブリ?これは、フリルのない新鮮なサーバーインストールです、私はそれについて何かを想像することはできません)。

誰でも正しい方向に私を指摘できますか?

ありがとうございます! Droidilate

答えて

1

あなたが統合されたパイプラインを使用して、あなたのweb.configファイルでこれを追加する必要があり、すべての最初:

<system.webServer> 
    <modules runAllManagedModulesForAllRequests="false"> 
    <remove name="FormsAuthenticationModule" /> 
    <add name="FormsAuthenticationModule" type="System.Web.Security.FormsAuthenticationModule" /> 

    <remove name="UrlAuthorization" /> 
    <add name="UrlAuthorization" type="System.Web.Security.UrlAuthorizationModule" /> 
    </modules> 
</system.webServer>