Pop

39.Aplicaciones web.Autenticacion.Carrito de compra(2). Curso de C# con Visual Studio 2017.

39-. Aplicaciones web. Autenticación.Carrito de compra(2)

  - En este capítulo del curso de programación en c# con visual studio 2017,vamos a  crear un mecanismo de autenticación. Ya teniamos hecho en entradas anteriores del blog la validación contra nuestra base de datos.Esta nueva validación añadida a la que ya teniamos hecha previamente, nos servirá para controlar que páginas mostamos a los usuarios que esten logados y que páginas son de aceso público.

- Además como muestro en el video , aprovecharemos para generar las cookies y datos necesarios para poder generar un pedido con el usuario que inicio sesión en nuestro sitio de pruebas.


* En el siguiente enlace os dejo información más detallada sobre el como implementar la autenticación de formularios simple:https://msdn.microsoft.com/es-es/library/xdt4thhy(v=vs.100).aspx

* Para ver más claro el ejemplo os pongo por escrito los pasos vistos en el video para poder utilizar este tipo de autenticación:

  1.  Añadimos en fichero de configuración web.config el tipo de autenticación y las de las páginas a las que afecta:
   <system.web>
    <authentication mode="Forms">
       <forms loginUrl="Default.aspx" name=".ASPXFORMSAUTH" path="/" defaultUrl="~/Premium/Default.aspx" slidingExpiration="false" enableCrossAppRedirects="false" timeout="3600"/>
    </authentication>
  </system.web>

   <location path="Premium">
    <system.web>
      <authorization>
        <deny users="?"/>
      </authorization>
    </system.web>
  </location>

  2. Una vez que tenemos el usuario validado contra nuestra base de datos generamos una cookie:

    private void crearCookie(String email, int idUsuario)
        {
      
                FormsAuthenticationTicket ticket = new FormsAuthenticationTicket(email, false, 60);
                string ticketEncriptado = FormsAuthentication.Encrypt(ticket);
                HttpCookie SesionUsuario = new HttpCookie("Cookie", ticketEncriptado);
                SesionUsuario.Expires = DateTime.Now.AddDays(366);
                HttpContext.Current.Response.Cookies.Add(SesionUsuario);
                FormsAuthentication.RedirectFromLoginPage(idUsuario.ToString(), false);
            
   }

3. Ya tenemos diponible el idusuario que vamos a utilizar para generar el pedido:

 Convert.ToInt32(HttpContext.Current.User.Identity.Name);

No hay comentarios:

Publicar un comentario

Curso .NET Core en C# - 34.Creamos nuestro propio log

34.Creamos nuestro propio log Hola a todos. En este curso, analizaremos todos los conceptos básicos, intermedios y avanzados de  ASP.NET...