Esta página foi útil?
Seus comentários sobre este conteúdo são importantes. Queremos saber sua opinião.
Comentários adicionais?
1500 caracteres restantes
Exportar (0) Imprimir
Expandir Tudo

Limitando acesso a sites da Web ASP.NET

Limitar o acesso a um aplicativo geralmente é dividida em dois tópicos: autenticação, que é como um aplicativo identifica quem você é, e autorização, que é como um aplicativo identifica o que você é permitido fazer.Este tópico fornece uma visão geral sobre autenticação e autorização em ASP.NET Web aplicativos.Para obter mais informações, consulte: Segurança de aplicativos da Web ASP.NET.

Aplicações ASP.NET oferecem várias opções diferentes para autenticação de usuários. Para aplicativos somente leitura que podem ser vistos por qualquer pessoa, utilizar a autenticação anônima. Para um acesso mais restrito a um aplicativo, você precisa usar alguma forma de autenticação para identificar os usuários. Há duas identidades que você deve para considerar ao autenticar usuários para seu aplicativo ASP.NET: a identidade do aplicativo usado para acessar recursos do Windows e a identidade do usuário ASP.NET que é usada para identificar um usuário para o ASP.NET.

O aplicativo pode ser executado sem uma identidade de usuário ASP.NET, mas você sempre terá uma identidade de aplicativo do Windows. Para ajudar a proteger seu aplicativo, você deve restringir a identidade do Windows para a aplicação dos recursos necessários, como arquivos e acesso a banco de dados.

Identidade do aplicativo ASP.NET

Quando uma página ASP.NET é executada, o servidor deve ter um contexto de segurança, ou identidade, para o processo que está executando o código ASP.NET. Essa identidade é usada na captação de recursos usando segurança integrada do Windows, como arquivos protegidos usando o sistema de arquivos NTFS ou recursos de rede.

Por exemplo, os arquivos que contêm o código do aplicativo armazenado no subdiretório App_Code de um aplicativo só precisa ser lido pela identidade do aplicativo ASP.NET. Portanto, as configurações de segurança para os arquivos no diretório App_Code podem ser restringidas para que a identidade do aplicativo ASP.NET tenha acesso somente leitura.Outro uso comum da identidade Windows do aplicativo ASP.NET é como a identidade de uma conexão a um Servidor SQL usando Segurança Integrada.Para obter mais informações, consulte ASP.NET Required Access Control Lists (ACLs) e Como: Acesso o SQL servidor usando segurança integrada do Windows.

A identidade de uma aplicação ASP.NET é determinada por vários fatores. Por padrão, páginas ASP.NET são executadas com a identidade do Windows que processa páginas ASP.NET no servidor Web. Em um computador executando Windows Server   2003, que a identidade é a identidade do pool de aplicativos do qual o aplicativo ASP.NET é uma parte (por padrão, a conta Serviço Network). Em computadores com o Windows 2000 e Windows XP Professional, a identidade é a conta ASPNET local que é criada quando o . NET Framework está instalado. Esta identidade pode ser configurado para uma identidade diferente, se desejado. Para obter mais informações, consulte Configurando Identidade de Processo do ASP.NET.

Você pode modificar a identidade do Windows que executa a página ASP.NET usando o elemento identidade da seção de configuração system.web.The identity elemento pode ser usado para instruir ASP.NET a representar um ID de usuário do Windows. Representar uma identidade de Windows significa que sistema autônomo páginas ASP.NET para o aplicativo serão executado sistema autônomo a identidade do Windows. Você pode especificar um nome de usuário e senha para representar. Como alternativa, você pode ativar representação e ASP.NET será executado em uma das seguintes maneiras: uma identidade anônima especificada pelo IIS, ou a identidade do navegador autenticado conforme determinado pelo IIS (por exemplo, autenticação anônima, autenticação Windows integrada (NTLM) e assim por diante).Para obter mais informações, consulte ASP.NET Impersonation.

Se você está representando uma identidade do Windows, você pode executar o código que reverte para a identidade original do processo, em vez do ID do usuário representado. Por esse motivo, em ambientes onde você precisa manter um aplicativo separado do outro, você deve isolar os aplicativos em pools de aplicativos separados em computadores que executam Windows Server   2003. Cada pool de aplicativos deve ser configurado com uma identidade única do Windows.

Você pode facilmente determinar a identidade Windows do segmento que está executando a página ASP.NET do sistema operacional do Windows usando a propriedade Name do retorno WindowsIdentity do método GetCurrent conforme o exemplo de código a seguir.

<%=System.Security.Principal.WindowsIdentity.GetCurrent().Name%>

Usuário ASP.NET

A identidade do usuário ASP.NET é usada para acessar recursos específicos do ASP.NET. Por exemplo, você pode identificar uma parte do seu aplicativo só que está disponível para determinados usuários, enquanto outras partes do seu aplicativo estiver disponível para todos os usuários.

O usuário do ASP.NET é determinado pelo elemento authentication sa seção system.web do arquivo Web.config para seu aplicativo. Você tem várias opções para autenticar uma identidade do ASP.NET na sua aplicação. Você pode usar o nome de usuário do Windows que é determinado pelo IIS, autenticação ASP.NET Forms, autenticação Passport, ou um esquema de autenticação personalizado. A identidade do ASP.NET pode ser acessada usando a propriedade User do atual HttpContext.Para obter detalhes, consulte:Autenticação do ASP.NET.

Você, se estiver usando autenticação formulários ASP.NET, ou uma solução autenticação personalizada, para fornecer a identidade ASP.NET, utilize a associação ASP.NET para fornecer um armazenamento de dados de usuário e a funcionalidade de gerenciamento de usuário.Para obter mais informações, consulte Gerenciando usuários usando Associação.

Autorização envolve restringir o acesso de usuário a apenas os recursos que são necessários.Isso inclui restringir o acesso a somente os arquivos necessários, bancos de dados, e partes do seu aplicativo.Além disso, isso inclui usar segurança de acesso a código para restringir o acesso a código.

Você pode restringir o acesso a arquivos usando listas de controle de acesso NTFS e o FileAuthorizationModule.Para obter mais informações, consulte Autorização ASP.NET e ASP.NET Required Access Control Lists (ACLs).

Você pode restringir o acesso a partes do seu aplicativo usando o UrlAuthorizationModule e Gerenciamento da Função do ASP.NET.Para obter mais informações, consulte Autorização ASP.NET e Gerenciando Autorização Usando Funções.

Contribuições da comunidade

ADICIONAR
Mostrar:
© 2015 Microsoft