domingo, 9 de octubre de 2011

Seguridad en MVC 3 (Membership)

Este Utilizaremos membership para la seguridad de nuestro sitio.

1.) Cree un proyecto MVC  


1.1)File- New project


1.2) Seleccione Internet Aplicación -Razor - Html5




2.) Ejecutamos el asistente membership.


Navegue en la siguiente ruta:

C:\Windows\Microsoft.NET\Framework\v4.0.30319

Ejecute
 aspnet_regsql.exe

El siguiente wizard se mostrara

1.) Elija configure sql server for application service, seleccione la base datos que utilizara, finalice el wizard.




3.) Configuramos el web config de nuestro sitio para que utilice membership.

3.1) Abra el web config y configure  el ApplicationServices con la información de su servidor de sql server en el connectionStrings.

  <connectionStrings> 
    <add name="ApplicationServices"
    connectionString="data source=xp;user id=sa;password=123;initial catalog=northwind"         providerName="System.Data.SqlClient" /> 
  </connectionStrings>

4.) Configurar la seguridad con  Web Site Administration Tool

4.1) En el Soluction explorer  presioné clic en el web site administrattion tool


4.1) Ingrese en el menu Security.

4.2) Ventana de Security, desde esta pantalla crearemos los Usuarios y roles.


4.3) Crearemos 2 Usuarios, User1 y User2, para realizar las pruebas.

4.4) Habilitaremos los roles, presionando clic en el boton habilitar role.

4.5) Crearemos un role de administrador



4.6) Agregaremos al user1 al role de administrador, en la ventana de security clic en manage Users y agregar a administrador a user1.



5.) Aplicar la seguridad en el sitio. para realizar pruebas, aplicaremos la seguridad al controlador Home.

5.1) Aplicando seguridad al Accion About.

5.1.1) Abra el Controlador: HomeController

Para agregar seguridad tenemos 3 opciones:

  [Authorize] 
        public ActionResult About() 
        { 
            return View(); 
        } 

[Authorize(Roles = "administrador")] 
        public ActionResult About() 
        { 
            return View(); 
        } 

[Authorize(Users="user1")] 
        public ActionResult About() 
        { 
            return View(); 
        }

Authorize: Permitira entrar solo Usuarios ya autenticados.
Authorize Roles: Solo los roles que ingrese ejemplo: Administrador
Authorize Users: Solo los usuarios que ingrese ejemplo: User1


6.) Ahora realizar nuestro test, Probado con cada una de las opciones de seguridad.

No hay comentarios.: