14

アプリケーションで ELMAH エラー例外ログを使用します。アプリケーションの管理者/開発者が利用できるようにしながら、通常のユーザーから ELMAH を保護したいと考えています。

web.config でフォーム認証を使用してセキュリティを設定すると、RSS フィードにアクセスできなくなります。ELMAH を保護できるようにしたいのですが、それでも axd に認証を通過させて、RSS リーダーから RSS フィード (つまり、/elmah.axd/rss) にアクセスできるようにしたいと考えています。

おそらくhttp://username:password@somedomain.com/elmah.axd/rssというURL 構文で RSS フィードにアクセスできるので、http 認証が適切であると考えています。 windows」を web.config の特定のパスに追加します。ただし、仮想ファイルに資格情報を設定するにはどうすればよいですか? という問題が発生します。

Google を見ると、Cookie を使用して認証パススルーを設定する方法に関する CodeProject のこの記事が復活します。これは私の問題に対する良い解決策ですか?

安全性を保ちながら RSS フィードにアクセスできるようにするためのより良い方法はありますか?

ありがとう。

4

2 に答える 2

12

単一の ASP.NET Web サイトで HTTP 認証とフォーム認証をサポートする

基本的に、MADAM という dll をプロジェクトに追加して、web.config を調整し、フォームではなくベーシックとして認証するファイルを構成します。

<configuration>
    <configSections>
        <sectionGroup name="madam">
            <section name="userSecurityAuthority" type="System.Configuration.SingleTagSectionHandler, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
            <section name="formsAuthenticationDisposition" type="Madam.FormsAuthenticationDispositionSectionHandler, Madam" />
        </sectionGroup>
    </configSections>

    ...

    <madam>
        <userSecurityAuthority ... />

        <formsAuthenticationDisposition>
            <discriminators all="[true|false]">
                ...
            </discriminators>
        </formsAuthenticationDisposition>
    </madam>

    ...

    <system.web>
        <httpModules>
            <add name="FormsAuthenticationDisposition" type="Madam.FormsAuthenticationDispositionModule, Madam" />
            <add name="AuthenticationModule" type="MADAM Authentication Module Type" />
    </system.web>
</configuration>

これはセットアップが簡単で、elmah.axd を認証し、基本認証資格情報を使用して RSS フィードを購読できるという私の問題を解決しました。

余談ですが、MADAM は ELMAH を書いたのと同じ人によって書かれています。偶然ですか?

于 2009-06-26T21:21:54.123 に答える
1

私が推測するクライアントに依存します-一部のデスクトップリーダーは(他の人もそうするはずです)認証を必要とするフィードをサポートし、最初にそれを要求するときにログインボックスを提供します-動作させるために舞台裏で何をしているのかわかりませんが.

于 2009-06-25T22:18:10.217 に答える