Como implementar a segurança baseada com autenticação baseada em formulários na sua aplicação do ASP.NET utilizando o Visual C# .NET

Traduções de Artigos Traduções de Artigos
Artigo: 311495 - Ver produtos para os quais este artigo se aplica.
Expandir tudo | Reduzir tudo

Nesta página

Sumário

Este artigo descreve como implementar segurança baseada em funções numa aplicação do ASP.NET que implementa a autenticação baseada em formulários utilizando o Visual C#. NET


Requisitos

Este artigo pressupõe que já tenham implementado a autenticação baseada em formulários numa aplicação ASP.NET.
301240Como implementar a autenticação baseada em formulários na sua aplicação do ASP.NET com o C# .NET

Atribuir as funções para a autenticação de utilizador

Uma vez que os utilizadores de formulários, normalmente, não são utilizadores do Microsoft Windows, não têm quaisquer funções associadas por predefinição. Assim, tem de anexar as funções de utilizador que autentica a identidade do utilizador para que o utilizador pode implementá-segurança baseada em funções dentro do código.

Utilize o código de exemplo nesta secção para implementar segurança baseada em funções na aplicação. Este código de exemplo atribui funções pre-specified para o utilizador que autentica. Dependendo de como armazenar os dados de utilizador, pode implementar o suas próprias método para obter as funções para esse utilizador autenticado e anexar essas funções para a autenticação identidade do utilizador, que é ilustrada no código de exemplo a seguir.

Copie o código seguinte no ficheiro global.asax na sua aplicação existente para atribuir as funções ao utilizador autenticação no processador de eventos Application_AuthenticateRequest :
public void Application_AuthenticateRequest( Object src , EventArgs e )
{
   if (!(HttpContext.Current.User == null))
   {
      if (HttpContext.Current.User.Identity.AuthenticationType == "Forms" )
      {
      System.Web.Security.FormsIdentity id;
      id = (System.Web.Security.FormsIdentity)HttpContext.Current.User.Identity;
      String[] myRoles = new String[2];
      myRoles[0] = "Manager";
      myRoles[1] = "Admin";
      HttpContext.Current.User = new System.Security.Principal.GenericPrincipal(id,myRoles);
      }
   }
}
				

Verifique as funções de utilizador e implementar a lógica de programas a páginas .aspx

Os seguintes passos demonstram como implementar e controlar a lógica de programa baseada as funções a que pertence o utilizador que autentica.
  1. Criar uma página nova .aspx denominada Sample.aspx e colar o seguinte código:
    <%@ Page Language="C#" %>
    <%@ Import Namespace="System.Web" %>
    
      <script runat=server>
        public void Page_Load() {
    	if (User.IsInRole("Admin")){
    		Response.Write ("You are an Administrator");}
    	else {
    		Response.Write ("You do not have any role assigned");}
        }
    
      </script>
    					
  2. Guarde Sample.aspx a aplicação existente. Navegue para a página de teste.

Referências

Para obter informações adicionais sobre funcionalidades de segurança do ASP.NET, clique no número de artigo que se segue para visualizar o artigo na Microsoft Knowledge Base:
306590INFO: Descrição geral de segurança do ASP.NET
Para mais informações sobre a segurança baseada em funções, consulte para o seguinte .NET Framework Software Development Kit (SDK) documentação:
Segurança baseada em funções
http://msdn2.microsoft.com/en-us/library/52kd59t0(vs.71).aspx
O documentação do código de origem no seguinte site da Web MSDN também contém informações sobre a segurança baseada em funções:
Soluções para programadores IBuySpy
http://msdn2.microsoft.com/en-us/library/ms978480.aspx
Microsoft fornece informações de contactos outros fabricantes para ajudar a encontrar suporte técnico. Poderá ser alterado estas informações de contacto sem aviso prévio. Microsoft não garante a precisão destas informações de contacto outros fabricantes.

Propriedades

Artigo: 311495 - Última revisão: 19 de abril de 2007 - Revisão: 3.9
A informação contida neste artigo aplica-se a:
  • Microsoft ASP.NET 1.0
  • Microsoft Visual C# .NET 2002 Standard Edition
  • Microsoft ASP.NET 1.1
  • Microsoft Visual C# .NET 2003 Standard Edition
Palavras-chave: 
kbmt kbhowtomaster kbsecurity KB311495 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática? erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 311495

Submeter comentários

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com