220 likes | 448 Views
Seguridad en aplicaciones Web con Microsoft ASP.NET. Descripción. Descripción de la seguridad para aplicaciones Web Trabajar con autenticación basada en Windows Trabajar con autenticación basada en formularios Descripción de la autenticación de Microsoft Passport.
E N D
Descripción • Descripción de la seguridad para aplicaciones Web • Trabajar con autenticación basada en Windows • Trabajar con autenticación basada en formularios • Descripción de la autenticación de Microsoft Passport
Lección: descripción de la seguridad para aplicaciones Web • Autenticación frente a autorización • ¿Cuáles son los métodos de autenticación de ASP.NET? • Multimedia: métodos de autenticación de ASP.NET • Comparación de los métodos de autenticación de ASP.NET • ¿Cuáles son los mecanismos de autenticación de IIS? • Demostración: uso de los mecanismos de autenticación de IIS • ¿Qué es Secure Sockets Layer?
Autenticación frente a Autorización • Autenticación • Acepta credenciales de un usuario • Valida las credenciales • Autorización • En función de las credenciales de autenticación suministradas, determina el derecho de acceso a un recurso • Puede asignarse por nombre de usuario o por rol
¿Cuáles son los métodos de autenticación de ASP.NET? • Autenticación basada en Windows • Depende del sistema operativo Windows y de IIS • El usuario solicita una página Web segura y la solicitud pasa por IIS • Una vez IIS verifica las credenciales, se devuelve la página Web segura • Autenticación basada en formularios • Las solicitudes no autenticadas son redirigidas a un formulario HTML • El usuario proporciona credenciales y envía el formulario HTML • Una vez verificadas las credenciales, se suministra una cookie de autenticación • Autenticación mediante Microsoft Passport • Servicio de autenticación centralizado que ofrece una única opción de inicio de sesión • Microsoft Passport es un Servicio Web XML
Demostración: uso de los mecanismos de autenticación de IIS • Hacer clic con el botón derecho en Mod16 y hacer clic en Propiedades • Hacer clic en la pestaña Seguridad de directorios • Hacer clic en Modificar • Mostrar los métodos de autenticación
¿Qué es Secure Sockets Layer? • SSL es un protocolo que se utiliza para transmitir datos de forma segura a través de una red. SSL securiza los datos mediante: • Encriptación de datos • - Asegura que los datos enviados son leídos únicamente por un servidor destinatario seguro • Autenticación de servidor • - Asegura que los datos se envían al servidor correcto • - Utiliza los certificados de servidor y de cliente • Integridad de los datos • - Protege la integridad de los datos • - Incluye un código de autenticación de mensajes que detecta si un mensaje ha sido o no modificado • Utiliza HTTPS (Hypertext Transfer Protocol Secure) para recuperar una página Web ASP.NET
Lección: trabajar con autenticación basada en Windows • Cómo habilitar la autenticación basada en Windows • Leer información del usuario • Demostración: uso de la autenticación basada en Windows
Cómo habilitar la autenticación basada en Windows 1 • Configurar IIS para utilizar uno o varios de los siguientes mecanismos de autenticación : • Básica • Implícita • Seguridad de Windows integrada • Establecer la autenticación basada en Windows en Web.config 2 <system.web> <Authentication mode="Windows" /> </system.web>
Cómo habilitar la autenticación basada en Windows (continuación) 3 • Establecer la autorización en Web.config • Cuando los usuarios acceden al formulario Web Form, IIS solicita información de inicio de sesión <location path="ShoppingCart.aspx"> <system.web> <Authorization> <deny users="?"/> </Authorization> </system.web> </location> 4
Leer información del usuario • Tras la autenticación, el servidor Web puede leer la identidad del usuario lblAuthUser.Text = User.Identity.Name lblAuthType.Text = User.Identity.AuthenticationType lblIsAuth.Text = User.Identity.IsAuthenticated lblAuthUser.Text = User.Identity.Name; lblAuthType.Text = User.Identity.AuthenticationType; lblIsAuth.Text = User.Identity.IsAuthenticated;
Demostración: uso de la autenticación basada en Windows • Abrir IIS y configurarlo únicamente con autenticación anónima • Crear un nuevo usuario en el equipo local • Abrir Web.config y configurarlo para soportar autenticación y autorización • Ejecutar la aplicación Web ASP.NET segura • Los estudiantes pueden acceder a la aplicación Web ASP.NET segura en el equipo del instructor
Lección: trabajar con autenticación basada en formularios • Descripción de la autenticación basada en formularios • Multimedia: autenticación basada en formularios • Cómo habilitar la autenticación basada en formularios • Crear una página de inicio de sesión • Demostración: uso de la autenticación basada en formularios
Descripción de autenticación basada en formularios IIS 1 2 Autenticación ASP.NET Forms Autenticado No autenticado El cliente solicita página Nombre usuario 6 4 Alguien Autorizado Acceso denegado Contraseña Página de inicio(los usuarios introducen sus credenciales) *********** Enviar No autenticado 3 Autenticado Cookie de autenticación Autorizado 7 Página segurasolicitada 5
Cómo habilitar la autenticación basada en formularios 1 • Configurar IIS para utilizar autenticación anónima • Establecer la autenticación basada en formularios en Web.config • Establecer la autorización • Generar un formulario Web Form de inicio de sesión 2 <Authentication mode="Forms" > <forms name=".namesuffix" loginUrl="login.aspx" /> </Authentication> 3 4
Crear una página de inicio de sesión • Añadir una referencia a System.Web.Security • La página de inicio de sesión verifica y examina las credenciales de un usuario • Leer las credenciales del usuario desde una cookie • User.Identity.Name devuelve el valor guardado por FormsAuthentication.RedirectFromLoginPage private void cmdLogin_Click(object sender, EventArgs e) { if (login(txtEmail.Text, txtPassword.Text)) FormsAuthentication.RedirectFromLoginPage(txtEmail.Text, false); } Sub cmdLogin_Click(s As Object, e As eventArgs) If (login(txtEmail.Text, txtPassword.Text)) FormsAuthentication.RedirectFromLoginPage(txtEmail.Text, False) End If End Sub
Demostración: uso de la autenticación basada en formularios • Abrir IIS y configurar para autenticación anónima • Abrir Web.config y configurarlo para autenticación y autorización • Abrir la página de inicio de sesión y mostrar el código • Ejecutar la aplicación Web ASP.NET • Los estudiantes pueden acceder a la aplicación Web ASP.NET segura en el equipo del instructor
Lección: Descripción de la autenticación mediante Microsoft Passport • Cómo funciona Microsoft Passport • Otros recursos de Microsoft Passport
Cómo funciona Microsoft Passport 1 El cliente solicita una página al host sitioweb.msft 2 El sitio redirige al cliente a Passport.com 3 El cliente es redirigido e inicia sesión en Passport.com 4 Passport devuelve una cookie con la información del ticket 5 El cliente accede al host, esta vez con la información del ticket Cliente 6 El host devuelve un formulario Web Form y posiblemente una nueva cookie que puede leer y escribir Passport.com
Otros recursos sobre Microsoft Passport • Sitios Web • http://www.passport.com • http://msdn.microsoft.com