2010-07-20 37 views
6

En mi trabajo, estamos tratando de consolidar la autenticación de la granja de aplicaciones con Windows Identity Fundation (WIF) o algún componente personalizado basado en Membership Provider.Control de acceso basado en roles (RBAC) - .Net Componente

Con esto, tenemos que proporcionar a los desarrolladores (y usuarios finales) algunos componentes que pueden ayudarnos con la lógica de las vistas de administración por Role (RBAC - Control de acceso basado en roles). No pude encontrar nada.

Esa es la idea: un usuario 'administrador' puede ver las páginas 'Inicio' y 'Administración'. Bueno, como un desarrollador, no quiero escribir código para hacer este perfil. Para hacer esto, espero trabajar con un componente que encapsula esta complejidad. La misma idea para administrar eventos o acciones en la aplicación

¿Sabes algo así? Algo así como Role Provider, pero como un componente genérico, que me puede ayudar (como el perfil en Moodle o Joomla).

Solo para el registro, el inglés no es mi idioma de navegación, y todavía lo estoy aprendiendo.

Respuesta

0

Escribí mi propio componente exactamente para este problema. Puede hacer interfaz con directorios de Windows y demás, pero en el pasado no quería administrar los usuarios de una aplicación a través de Windows AD, así que escribo mi propio subsistema basado en privilegios y funciones para mis aplicaciones.

No es mucho trabajo que hacer, y para mí valió la pena porque puse exactamente lo que necesitaba y nada más.

1

Escribí el mío usando Postsharp, simplemente agregando atributos a los methos que necesita control de acceso.

+1

¿Puede mostrarme un ejemplo, por favor? Gracias por su asesoramiento –

1

Para responder a su pregunta, sí, hay pocos componentes .net disponibles que permitan que cualquier aplicación .net aplique RBAC.

RBAC - El sistema de control de acceso basado en roles es un método para restringir el acceso a 'algunas fuentes o aplicaciones o algunas características de aplicaciones' en función de los roles de los usuarios de la organización. Aquí, las restricciones pueden ser por medio de permisos múltiples, los crea el administrador para restringir el acceso, y estos permisos colectivamente representan un rol, que se asignará al usuario.

Y si vamos un poco más profundo en RBAC, básicamente contiene 3 funciones. 1) Autenticación: confirma la identidad del usuario. Por lo general, se realiza a través de cuentas de usuario y contraseñas o credenciales. 2) Autorización: define lo que el usuario puede hacer y lo que no puede hacer en una aplicación. Ex. Se permite "modificar el orden", pero no se permite "crear un nuevo pedido". 3) Auditoría de las acciones del usuario en las aplicaciones. - Realiza un seguimiento de las acciones del usuario en las aplicaciones, así como quién ha otorgado qué acceso a qué usuarios?

Esta era una imagen de vista superior muy básica del sistema RBAC.

El componente de membresía ASP.Net es una de las formas de implementar RBAC. También puede escribir su propio sistema con funcionalidades básicas.

Hay algunos artículos agradables y útiles que muestran información breve y la implementación de RBAC.

http://www.visual-guard.com/EN/net-powerbuilder-application-security-authentication-permission-access-control-rbac-articles/dotnet-security-article-ressources/role-based-access-control.html

http://www.codeproject.com/Articles/875547/Custom-Roles-Based-Access-Control-RBAC-in-ASP-NET

también recomiendo pocas listo para usar componentes VisualGuard (@which que trabajo) y también MemberProtect.

Cuestiones relacionadas