4.21.2006

Aventuras en un Framework de Seguridad en .NET (1)

He estado trabajando recientemente en crear un framework simple pero universal para poder manejar la autorización y los perfiles en nuestros proyectos de Windows Forms. Lo que quiero lograr es:

1. Que los programadores puedan implementar la seguridad sin programar.
2. Que podamos hacer visibles/invisibles o habilitados/deshabilitados elementos de la IU de una manera totalmente declarativa, ya sea en una BD o en XML.
3. Que esto funcione también en el .NET Compact Framework (v 2.0)
4. Que me pueda integrar a distintos proveedores de autentificación y membresía como los de ASP.NET 2.0 o el ActiveDirectory.
5. Que podamos validar si un método o proceso está autorizado para ejecutarse.
6. Que tengamos reglas simples con excpresiones de autorización.

Ya tengo bastante avance sobre este tema. Antes de empezar, evalué el Enterprise Library de Microsoft. Me pareció demasiado complejo, por lo que tomé algunas ideas de allí para hacer algo más simple. En particular, me gustó mucho el evaluador de expresiones booleanas que tiene para definir autorización. Sin embargo, no me gusta que todo el profiling se tiene que seguir haciendo en código. Quiero algo declarativo.

Lo que tengo listo hasta ahora es:

1. Un control gráfico que con hacer drag and drop en una forma se encarga de habilitar/deshabilitar cualquier control mediante reflection con base en las reglas declaradas para el usuario firmado.
2. La posibilidad de autorizar un método con una sóla función (AuthorizeMethod).
3. Flexibilidad para operar con el Membershipprovider de ASP.NET 2.0 o con Active Directory.
4. Ya funciona en Compact Framework.

4.04.2006

Primera Reunión de la Comunidad de Usuarios de .NET de México D.F. en el 2006

Tuvimos nuestra primera reunión de la comunidad de usuarios de .NET en el World Trade Center de la Ciudad de México este pasado Viernes 31.

Estoy muy satisfechos con los resultados de la reunión. Además de las pláticas técnicas creo que sentamos las bases de una buena participación de los miembros de la comunidad.

Nos vamos a reunir el último Viernes de cada mes en el mismo lugar.

Me interesa mucho tu retroalimentación.

¿Que opinas de la reunión?
¿Qué te gustaría ver en reuniones futuras?
¿Te gustaría hablar de algún tema?