Protegendo ELMAH enquanto ainda tornando possível acessá-lo via RSS Reader
-
20-08-2019 - |
Pergunta
Nós usamos ELMAH erro de registro de exceção em nossa aplicação. Eu gostaria de manter ELMAH seguro de usuários regulares enquanto ainda tornando-o disponível para administradores / desenvolvedores do aplicativo.
Quando você conjunto de segurança com autenticação de formulários no web.config então você perde a capacidade de acessar o feed RSS. Eu gostaria de ser capaz de garantir ELMAH mas ainda assim passar através de autenticação para o AXD para ser capaz de acessar o feed RSS (ou seja /elmah.axd/rss) a partir de um leitor de RSS.
Thinking que http autenticação seria adequada como então eu provavelmente pode obter o feed rss com a seguinte URL sintaxe http: // username: password@somedomain.com/elmah.axd/rss Presumo que seria necessário para o modo de autenticação set = "Windows" no que caminho específico no web.config. Um problema surge, porém, é como você definir credenciais em um arquivo virtual?
Olhando para o Google traz de volta este artigo em CodeProject sobre como configurar passagem autenticação com cookies. Será esta uma boa solução para o meu problema?
Existe uma outra maneira que é melhor para ser capaz de acessar o feed RSS, enquanto continuam sendo seguro?
Graças.
Solução
Apoio HTTP autenticação e autenticação de formulários em um único site ASP.NET
Basicamente você adicionar um dll chamado SENHORA ao seu projeto de ajustar o seu web.config e configure qual arquivo (s) que deseja autenticar como básico em vez de formulários:
<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>
Esta foi fácil de configurar e resolveu o meu problema de ser capaz de autenticar elmah.axd e ainda ser capaz de assinar o feed RSS com credenciais de autenticação básica.
SENHORA Nota lateral é escrito pelo mesmo cara que escreveu ELMAH, coincidência?
Outras dicas
Depende do cliente eu acho - eu sei alguns leitores de desktop (certeza que outros fazem , bem) alimentações de apoio que exigem autenticação, e fornecer uma caixa de login quando pela primeira vez solicitando que - não sei o que estão fazendo nos bastidores para fazê-lo funcionar embora
.