jueves, 11 de marzo de 2010

Autenticación basada en notificaciones (I)

Cuando se habla de las novedades de un producto normalmente uno tiende a resaltar los elementos más vistosos y dejar de lado aquellos conceptos más oscuros o complejos. En el caso concreto de SharePoint 2010, uno de estos conceptos a menudo olvidados está relacionado con el nuevo modelo de autenticación. SharePoint 2010 se ha construido sobre WIF (Windows Identity Foundation). Algunas de las ventajas que nos aporta esta tecnología son:

  • Externalizar toda la lógica relacionada con las identidades
  • Mejorar la productividad compartiendo herramientas a la hora de desarrollar software on premises o en la nube.
  • Ampliar la seguridad de las aplicaciones al reducir desarrollos y utilizar un modelo único simplificado de identidades basada en notificaciones.
  • Mejorar la interoperabilidad al utilizar protocolos estándar permitiendo a los servicios comunicarse vía notificaciones.

Como véis hay una palabra que se va repitiendo constantemente: notificación. ¿qué es una notificación? una notificación (o claim como se conoce más comunmente) es algo similar a un atributo de una identidad. Un ejemplo, un usuario en Directorio Activo tiene un perfil o identidad que tiene una serie de propiedades o atributos: el nombre de usuario, la dirección de correo electrónico o la fecha de nacimiento son notificaciones. La única diferencia entre las palabras atributo y notificación es que en el segundo caso existe una entidad certificadora de que esa propiedad es válida. Entonces, ¿qué significa autenticación basada en notificaciones o claims based authentication? básicamente significa que en lugar de basar nuestro sistema de seguridad en unas credenciales (nombre de usuario y contraseña) podemos hacer uso de cualquier propiedad para permitir o denegar el acceso a un contenido. Un ejemplo muy típico es un portal que permite realizar trámites electrónicos en función de tu perfil, ya seas empresa, particular, jubilado, madre soltera, etc. En lugar de tener que desarrollar toda la lógica necesaria para llevar esto a cabo, si tuvieramos algún proveedor de notificaciones que nos ofreciera esa información y nos garantizase que es correcta, podríamos delegar aprovecharlo para centralizar toda esta lógica.

Cuando hablamos de notificación estamos hablando de un concepto que no pertenece a Microsoft, sino que está basado en 3 estándares abiertos:

  • WS-Federation 1.1
  • WS-Trust 1.4
  • SAML Token 1.1

No es mi intención entrar en detalle sobre ninguno de estos estándares, ya que encontraréis información a raudales en la red de fuentes mucho más expertas y confiables que yo. Con este artículo únicamente os quiero introducir el concepto de notificación para utilizarlo en una serie de entradas que tengo previsto publicar próximamente.

1 comentarios:

Anónimo dijo...

Exclente Resume, necesitaba algo asi, pero debistes dar unos tip de los 3 conceptos abajo.
Gracias.