Autorização Básica do IIS ala .htaccess / .htpasswd no apache

6

Como faço para implementar a proteção das páginas (asp.net mvc app), então quando eu bato na home page ou em qualquer outra página dentro do aplicativo eu recebo uma caixa de diálogo de login no navegador

Estou procurando algo semelhante ao que o Apache .htaccess e .htpasswd está fazendo.

Eu tenho a edição da Web do IIS 7.5 / Windows Server 2008 R2.

    
por Dmitry 20.05.2011 / 16:34

2 respostas

3

Antes de mais nada, você precisa ativar a autenticação básica. Você pode encontrar essa configuração no recurso Autenticação do site no Gerenciador do IIS:

CliqueduasvezesnoíconeecliquecomobotãodireitodomouseemAutenticaçãobásicaeselecioneAtivar:

Você também pode configurar isso diretamente no seu arquivo web.config (seu aplicativo não precisa nem ser um aplicativo ASP.NET):

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <security>
            <authentication>
                <basicAuthentication enabled="true" />
            </authentication>
        </security>
    </system.webServer>
<configuration>

Isso funcionará somente no web.config , desde que este recurso tenha sido delegado como Read / Write .

Fora da caixa, você precisaria criar uma conta separada do Windows 2008 para cada login.

Se você quisesse usar um armazenamento personalizado (SQL Server, Serviço de Associação), precisaria escrever seu próprio módulo de Autenticação Básica:

Developing a Module Using .NET

    
por 21.05.2011 / 16:40
2

No Gerenciador do IIS em Sites- > Yoursite- > Authentication, você pode desativar a "Autenticação anônima" e ativar a "Autenticação básica" ou qualquer desafio HTTP 401 apropriado para o seu site.

    
por 20.05.2011 / 16:53