La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Jorge Oblitas Consultor en tecnología asociada a la gestión del Conocimiento Ha sido miembro de los programas Microsoft Regional Director (desde el 2000)

Presentaciones similares


Presentación del tema: "Jorge Oblitas Consultor en tecnología asociada a la gestión del Conocimiento Ha sido miembro de los programas Microsoft Regional Director (desde el 2000)"— Transcripción de la presentación:

1 Jorge Oblitas Consultor en tecnología asociada a la gestión del Conocimiento Ha sido miembro de los programas Microsoft Regional Director (desde el 2000) Microsoft Partner Advisory Council (2002) Consultor para los programas Panorama Box y DCE Soluciones Intranet premiadas en Perú y EE.UU. Creador del curso para la segunda estrella DCE Bajista desde 1984 Aficionado a los Golden Retrievers y Beagles

2 Webcast Series Introducción a las ASP.NET para desarrolladores ASP/PHP Introducción a las ASP.NET 2.0 para desarrolladores ASP.NET Creación de aplicaciones Web con acceso a datos usando ASP.NET2.0 Creando aplicaciones seguras a través del uso de membresía y manejo de roles con Visual Studio 2005 y ASP.NET 2.0 Usando "Profiles" en ASP.NET 2.0 y localizando aplicaciones. Extendiendo ASP.NET 2.0 a través del modelo basado en proveedores (provider model)

3 Introducción a las ASP.NET para desarrolladores ASP/PHP Jorge Oblitas Inteligencia e Innovación Microsoft Regional Director

4 Jorge Oblitas Inteligencia e Innovación Microsoft Regional Director Peru – Andean Region Creando aplicaciones seguras a través del servicio de membresía y manejo de roles con Visual Web Developer Express beta 2 y ASP.NET 2.0

5 Agenda Servicio de Membresía (Membership service) Membership API Membership providers Controles Login Servicio de Manejo de roles La clase Roles Role caching Role providers

6 Membership Service Servicio para administrar usuarios y credenciales Acceso declarativo via el Web Site Admin Tool Acceso programático usando las clases Membership y MembershipUser La clase Membership provee servicios base La clase MembershipUser representa los usuarios y provee servicios adicionales Basado en providers para un almacenamiento de datos flexible

7 Esquema del servicio Membership API Membership Data Access Otros Controles Login LoginStatus LoginView AccessMembershipProvider Otros Membership Providers Otros Membership Providers Membership Providers Membership MembershipUser SqlMembershipProvider SQL Server Otros controles Login

8 La clase Membership Provee m[etodos est[aticos para llevar a cabo tareas claves de al trabajar con membresía Crear y eliminar usuarios Recolectar información sobre los usuarios Generar contraseñas aleatorias Validar logins También incluye propiedades estáticas de tipo read-only static para recibir información acerca de la configuración del provider de membresía

9 Métodos principales de la clase Membership NombreDescripción CreateUserAgrega al usuario al membership data store DeleteUserRemueve el usuario del membership data store GeneratePasswordGenera una contraseña aleatoria de un largo específico GetAllUsersRecoge una colección de objetos MembershipUser Representando a todos los usuarios registrados GetUserRecoge un objeto MembershipUser representando a un usuario UpdateUserActualiza la información del usuario especificador ValidateUserValida los logins basado enel nombre de usuario y la contraseña MaxInvalidPasswordAttemptsNúmero máximo de intentos de loguearse fallidos

10 Creando nuevos usuarios try { Membership.CreateUser (Jorge", MiPassword", } catch (MembershipCreateUserException e) { // por que fallo? switch (e.StatusCode) { case MembershipCreateStatus.DuplicateUsername:... case MembershipCreateStatus.Duplicate ... case MembershipCreateStatus.InvalidPassword:... default:... }

11 Validando Logins if (Membership.ValidateUser (UserName.Text, Password.Text)) FormsAuthentication.RedirectFromLoginPage (UserName.Text, RememberMe.Checked);

12 La clase MembershipUser Representa a usuarios individuales registrados en el membership data store Incluye varias propiedades para obtener y configurar información del usuario Incluye métodos para obtener, cambiar y resetear contraseñas

13 Propiedades principales de la clase MembershipUser NombreDescripción CommentAlmacenamiento para datos específicos del usuario CreationDateDía en que el usuario fue añadido al membership data store del usuario LastLoginDateDía del último login exitoso del usuario LastPasswordChangedDateDía dle último cambio de contraseña UserIdIdentificador del usuario generado por el membership provider UserNameNombre registrado del usuario

14 Métodos principales de la clase MembershipUser NombreDescripción ChangePasswordCambia la contraseña del usuario ChangePassword- QuestionAndAnswer Cambia la pregunta y la respuesta utilizada para recuperar la contraseña GetPassword*Obtiene la contraseña ResetPasswordResetea la contraseña y crea una nueva aleatoriamente * Works if Membership.EnablePasswordRetrieval is true

15 Membership Providers La membresía está basada en providers El Provider provee la interface entre el servicio de membresía y el lugar físico donde se encuentran los datos * Will be removed from beta 2

16 Configuración del Provider Soporte a varios aspectos de la configuración Cómo deben ser almacenadas las contraseñas ¿cleartext, hashed, encrypted)? ¿Debemos habilitar recuperación de contraseña? ¿El debe ser único para cada usuario? Se inicializa desde los archivos. config

17 Cambiando la configuración del provider

18 MembershipMembership

19 Controles Login ControlDescripción LoginUI para ingresar y validad nombres de usuario y contraseñas LoginNameMuestra el nombre de usuario del usuario autenticado LoginStatusUI para hacer log in o log out LoginView Muestra diferentes vistas dependiendo de si el usuario está logueado o no y de acuerdo a los roles PasswordRecoveryUI para recuperar contraseñas CreateUserWizardUI para crear nuevas cuentas de usuario ChangePasswordUI para cambiar contraseñas

20 El control Login UI para el logueo de usuarios Se integra al servicio de membership Llama automáticamente a ValidateUser Validación y login ´sin código También trabaja con sin el membership service Incorpora RequiredFieldValidators

21 Usando el control Login

22 Eventos del control Login NombreDescripción AuthenticateSe dispara cuando el usuario hace click en el botón Log In. Su propósito es autenticar al usuario validando sus credenciales. LoggedInSe dispara luego de un login exitoso LoggingInSe dispara cuando el usuario hace click en el botón log in. Su propósito es pre validar las credenciales (por ejemplo: formato) LoginErrorSe dispara cuando falla el intento de loguearse

23 Controles Login

24 Servicio de administración de roles (Role Management Service) Seguridad basada en roles incluida en el producto. Acceso declarativo via el Web Site Admin Tool Acceso programático via la clase roles La clase roles contiene métodos estáticos para la creación de roles, agregar usuarios a esos roles, etc. Mapea a los usuarios con los roles en cada request Reemplza a Application_AuthenticateRequest Basado en providers para tener flexibilidad

25 Esquema Roles API Roles Data AccessOtros Controles Login LoginStatus LoginView AccessRoleProvider Otros Providers Role Providers Roles SqlRoleProvider SQL Server Otros controles login

26 La clase Roles Puerta de acceso a la API: Role Management Brinda métodos estáticos para levar a cabo tareas de administración de roles como Crear y eliminar roles Agregar usuarios a los roles Remover usuarios de los roles.. … y más También incluyepropiedades estáticas read- only para adquirir datos acerca del provider

27 Métodos clave NombreDescripción AddUserToRoleAgrega al usuario al rol CreateRoleCrea un nuevo rol DeleteRoleElimina un rol existente GetRolesForUserObtiene una colección de roles a los que pertenece el usuario GetUsersInRoleObtiene una colección de usuarios pertenecientes a ese rol IsUserInRoleIndica si el suario pertenece a ese rol RemoveUserFromRoleRemueve al usuario del rol especificado

28 Creando un nuevo rol if (!Roles.RoleExists ("Desarrolladoress")) { Roles.CreateRole ("Desarrolladores"); }

29 Agregando un usuario al rol string name = Membership.GetUser ().Username; Roles.AddUserToRole (name, Desarrolladores");

30 Habilitando el Role Manager Role management esta deshabilitado por defecto Se habilita via el Web.config:

31 Role Caching El Role manager caches los datos en cookies Menos acceso al data store Mejor Performance Controlado via los atributos y expuesto programáticamente via la clase Roles ¿Los roles deberían usar cookies? ¿Las cokies deberían estar encriptadas? ¿Cuánto tiempo deberían valer las cookies?

32 Habilitando Role Caching

34 Preguntas

35


Descargar ppt "Jorge Oblitas Consultor en tecnología asociada a la gestión del Conocimiento Ha sido miembro de los programas Microsoft Regional Director (desde el 2000)"

Presentaciones similares


Anuncios Google