Artigo WebMobile 29 - Forms Authentication
Neste artigo veremos o que é como funciona o Forms Authentication no ASP.NET. Veremos como desenvolver aplicações que utilizam Forms Authentication simples, e também com mais de um tipo de usuário.
Neste artigo veremos o que é como funciona o Forms Authentication no ASP.NET. Veremos como desenvolver aplicações que utilizam Forms Authentication simples, e também com mais de um tipo de usuário.
Para que serve
A principal finalidade deste artigo é mostrar ao leitor como funcionam os recursos de autenticação do ASP.NET e também mostrar de forma prática como é fácil aplicá-los em nossas aplicações Web.
Em que situação o tema é útil
Em situações onde devemos proteger o conteúdo exibido em uma área do sistema web para que usuários anônimos não consigam ter acesso antes de passar por uma página de identificação e autenticação.
Resumo do DevMan
Quando desenvolvemos aplicações em um ambiente web e desejamos proteger o conteúdo de uma página ou de uma pasta específica, podemos utilizar recursos de autenticação que irão impedir que o usuário tenha acesso a esta informação antes de ser identificado pela aplicação web.
Felizmente no ASP.NET existe um recurso chamado Forms Authentication, que nos permite de forma fácil implementar uma autenticação do usuário na aplicação, para assim conseguirmos ter maior controle de quem irá acessar aquela informação restrita. Neste artigo, iremos ver como implementar autenticação utilizando o Forms Authentication junto com permissões de usuários, ou seja, restringir um conteúdo a apenas um tipo de usuário específico.
Antes de começar a descrever como se implementa autenticação no ASP.NET, vamos primeiro entender como deve funcionar uma autenticação. Autenticação é o processo que busca verificar se tal usuário é reconhecido e autorizado a ter acesso às informações do sistema na qual estão restringidas por regras de acesso.
Geralmente, a identificação do usuário no sistema é dada por algum campo que é único para o usuário, seguido de uma senha para se ter um controle maior da segurança. Por exemplo: login (conhecido como username ou nome de usuário), CPF, Email, número de identificação, RA (para softwares acadêmicos), entre outros.
Uma vez identificado no sistema, o usuário pode estar liberado a ter acesso às informações restritas de acordo com o seu tipo de permissão (caso o sistema implemente níveis de acesso). Alguns cenários típicos onde podemos encontrar este tipo de solução são os clássicos Webmail e Internet banking, fóruns de discussões, web chats, sites de relacionamentos, entre outros.
Em ASP.NET, temos alguns recursos que nos fornecem autenticação tal como o Forms Authentication e MemberShips Provider. Neste artigo vamos implementar uma solução utilizando o Forms Authentication para um software acadêmico onde teremos uma área restrita para que alunos possam fazer uma consulta de suas notas, e para que professores possam manter um controle das notas de cada aluno. Irei utilizar o Visual Studio 2008 com ASP.NET 3.5 na linguagem C# para exemplificar.
Você pode criar este exemplo utilizando o Visual Studio 2005 e ASP.NET 2.0 também. No exemplo, não vou me preocupar com detalhes da aplicação como arquitetura, manutenção das informações e layout, irei apenas focar na exemplificação de uma autenticação do usuário em uma aplicação ASP.NET, que é a finalidade deste artigo.
Estrutura do exemplo
Antes de iniciar nossa aplicação de exemplo, vamos desenvolver uma estrutura básica de uma escola para tomarmos como base. Inicie um novo Website no Visual Studio, e dê o nome de Escola.
Feito isso, vamos criar um banco de dados simples para nossa aplicação. Clique com o botão direito na pasta App_Data, escolha a opção Add New Item e na lista que irá surgir, selecione SQL Server Database. E como nos mostra a Figura 1, dê um nome para este database de Escola.mdf, e clique em Add. Note que iremos utilizar o SQL Server Express como exemplo, mas isto pode ser aplicado a qualquer fonte de dados.
Figura 1. Criando Database Escola
Nota do DevMan:
A pasta App_Data em aplicações ASP.Net tem o objetivo de armazenar arquivos que nos servem de fonte de dados, tais como Banco de dados (Arquivos do SQL Server ou Access), arquivos XML, arquivos do Excel, entre outros. Esta pasta assim como outras pastas (App_Code, Bin), contém um tratamento especial pelo ASP.NET, impedindo que o usuário possa fazer o download de informações presentes.
Para que seja possível incluir um banco de dados SQL Server diretamente na pasta App_Data, o Visual Studio realiza uma conexão direta ao arquivo do banco de dados (neste caso o Escola.mdf). E para isso o Visual Studio vai precisar da edição Express do SQL Server (2005 ou 2008). Veja na seção de links onde encontrar o SQL Server Express, que é gratuíto, para download." [...] continue lendo...
Artigos relacionados
-
Artigo
-
Artigo
-
Artigo
-
Artigo
-
Artigo