Estoy haciendo un proyecto en WPF. Obtuve el requisito de autenticar a un usuario y proporcionar accesibilidad para los módulos en función del rol. ¿Tengo una mejor manera de lograr esto en WPF?Autenticación y roles en WPF
Respuesta
Dependerá, en parte, de la seguridad que necesita que tenga el código.
Para todos sus casos de uso, utilice un patrón Model-View-ViewModel. En cada ViewModel, quizás mejor ubicado en una clase base para todas sus clases de ViewModel, incluya una variable de estado que devuelve una cadena y aumenta el evento PropertyChanged siempre que cambie el estado de seguridad.
Base su presentación para cada clase Ver en el valor de esa cadena, siguiendo un patrón similar a la respuesta aceptada a esta cuestión de forma:
https://stackoverflow.com/questions/3868164/
La respuesta describe cómo hacer esto con valores booleanos , pero puede usar cualquier valor de cadena que no sea "Verdadero" o "Falso" si su variable de estado ViewModel necesita más de dos estados.
Todos los códigos .NET, incluido WPF, se pueden modificar mediante ingeniería inversa. Si su código necesita ser más seguro que eso, es decir, si su caso de uso supone que sus usuarios piratearán su programa WPF, entonces querrá ofuscar y/o cifrar gran parte del código de ViewModel, utilizando productos disponibles comercialmente como InishTech's SLPS o Dotfuscator o lo que sea.
Como alternativa, podría usar el mismo patrón de MVVM y escribir una aplicación de Silverlight, pero no estoy seguro de si un usuario de Silverlight tiene acceso a los archivos binarios de la misma forma que lo haría un usuario de WPF de escritorio.
- 1. (Ruby, Rails) Autenticación basada en roles y administración de usuarios ...?
- 2. Autenticación ASP.NET MVC y Windows con roles personalizados
- 3. Roles disponibles con Autenticación de Windows
- 4. Autenticación de formularios para diferentes roles?
- 5. Autenticación de formularios MVC de ASP.NET + Autorizar atributo + Roles simples
- 6. SimpleMembership, MVC4, AuthorizeAttribute y Roles
- 7. ¿Cómo puedo verificar Spring Security para la autenticación del usuario y obtener roles de Flex?
- 8. cómo agregar y administrar ROLES en FOSUserBundle?
- 9. C# Seguridad basada en roles
- 10. Autenticación federada y autenticación delegada en Salesforce
- 11. ASP.NET MVC4 Seguridad, Autenticación y Autorización
- 12. Java EE 6 grupos, usuarios y roles -vs- de Shiro roles, usuarios y permisos
- 13. ASP.NET MVC ¿Cómo aplicar la representación de Vista basada en roles o en autenticación?
- 14. Asp.Net Autenticación basada en roles usando grupos de seguridad en Active Directory
- 15. Roles personalizados simples para la autenticación de Windows en asp. ¿red?
- 16. Asp.net MVC administrador de roles
- 17. ¿Cómo usar la Autenticación de Windows en WPF?
- 18. Roles/Permisos marco para C#?
- 19. Autenticación y Autenticación API Web ASP.NET
- 20. edificio Aplicación basada en roles
- 21. Gestión de roles en MVC3
- 22. Almacenar/asignar roles de usuarios autenticados
- 23. Seguridad no basada en roles?
- 24. Roles de Singleton en Moose
- 25. enrutamiento MVC basado en roles
- 26. Vistas basadas en roles Django?
- 27. Spring Security (Acegi) y grupos de usuarios (frente a Roles)
- 28. Autenticación de formularios ASP.NET MVC: ¿cómo funciona y persiste la autenticación?
- 29. Seguridad basada en roles con Google App Engine y Python
- 30. Roles de autorización y usuario en Oracle Apex?
Solo quiero cambiar la visibilidad de ciertas opciones en la interfaz de usuario. – Novice
Entonces debería estar bien con un enfoque casi idéntico al de la pregunta vinculada: definirá un estilo para cada estado de visualización y aplicará el estilo con un DataTrigger vinculado al booleano de ViewModel, quizás denominado "Authenticated". Puede poner el código de verificación real en el getter de ViewModel para esa propiedad "Autenticada". –