OpenID

Por todos lados se habla de OpenID, de que va acabar con el exceso de nombres de usuario, contraseñas y toda esa bazofia que tengo que recordar para poder ingresar a los servicios web a los que estoy suscrito (last.fm, flickr, del.icio.us, meneame, digg, etc. etc.).

El único pequeño detalle es que no tengo puta idea de como funciona, o porque es que deberia ser taaan importante para nosotros. En que se diferencia de la plataforma Passport de Microsoft? Eso aún no logro respondermelo (fuera de lo obvio).

Para aclarar mis dudas durante un tiempo recolecte enlaces en Ingles y Español para ayudarme a entender que era todo esto. Este texto fue construido gracias a esos enlaces, disponibles en mi del.icio.us con el tag OpenID.


Desglose OpenID en las siguientes secciones:

  • ¿Que es OpenID?
  • La especificación
  • ¿Como Funciona?
  • Recursos, plugins y más
  • Todo el mundo ama OpenID
  • .

    ¿Que es OpenID?

    OpenID es sistema abierto y descentralizado para el manejo de identidades digitales centradas en el usuario. Esto es esencialmente un sistema de SSOglobal.

    Esto significa que OpenID inicia con el concepto de que cada uno puede tener una identidad propia en Internet, de la misma forma que los sitios web tiene una URI. Las URI son el corazón de la arquitectura Web, esta provee bases sólidas para un sistema de identidad centrada en el usuario.

    La primera pieza de OpenID es la autentificación –Como apruebo mi propiedad de una URI. Hoy en dia las webs requieren nombres de usuario y passwords para poder acceder a ellas, lo que significa que mucha gente utiliza en mismo password siempre. Con la autenticación OpenID, su usuario es su URI, y su password (u otras credenciales) se mantienen seguras almacenadas en su proveedor de OpenID (el que puede ser tu mismo, o usar un servicio proveido por terceras partes).

    Para loguearse en una web habilitada para OpenID (una vez que te logueas, no tienes que volver a hacerlo), solo debes tipear tu OpenID URI. El sitio web podra entonces redireccionarte a su Proveedor de OpenID para entrar usando cualquiera de las credenciales que este requiera. una vez autenticado, tu proveedor de OpenID podra enviarte de vuelta al website, con las credenciales necesarias para que puedas loguearte. Por usar Autentificación Fuerte donde sea necesario, OpenID puede ser usado para todo tipo de transacciones, además de extenderse tanto al uso de single-sign-on puro como de compartición de datos sensibles.


    La especificación:

    He tratado de disectar OpenID y así poder entender realmente que es lo que esta pasando. Las especificaciones son el ultimo recurso, ya que obviamente cubren solamente las bases. Lo que yo espero es una imagen, pero no puedo encontrar una. Así que, vergonzosamente, tome una imagen prestada de un artículo en ingles.

    OpenID Scenario

    Parte del problema con entender la especificacion, es que el texto dice lo que tiene que pasar, pero hay algunos detalles de implementación que, aunque variables, son utiles para descifrar las entradas y salidas de los escenarios más comunes.


    ¿Como Funciona?

    Existen dos tipos de software en este contexto: el consumidor openid, y el servidor de identidades. Primero hay que registrarse en un servidor, y luego puedes usar tu URL de usuario en los sitios que lo soporten. El método de autenticación en uno de esos sitios suele pasar las siguientes etapas:

    1. El usuario escribe su identidad URL en un formulario de la aplicación web
    2. La aplicación web comprueba que esa URL es una identidad (o un alias) openid, y si es así negocia un contraseña con el servidor openid.
    3. Si el usuario no está autenticado en el servidor openid, aparece una página https del mismo servidor para que escriba su contraseña.
    4. De nuevo por https y en la página del servidor, si es la primera vez que el usuario intenta usar su identidad en la aplicación web del principio, el servidor le pregunta si realmente quiere permitir el uso de su identidad en ese servidor.
    5. El servidor redirige a la aplicación web intercambiando la contraseña de paso de un sólo uso previamente negociada, y le confirma o deja de confirmar la identidad del usuario. Normalmente en este paso el usuario ve en la aplicación que ya está autenticado con su URL.

    En general, el paso 3 no ocurre si el usuario ya está logeado en el servidor openid, y el 4 sólo tiene lugar si es la primera vez que usa su URL en cada aplicación web.

    Otra característica del protocolo openid es que, como ya he mencionado por encima, permite el uso de aliases. Basta con añadir dos etiquetas HTML meta en la cabecera de una página web para especificar el servidor openid y la identidad URL. De esta manera se puede ir cambiando de servidor openid y continuar usando siempre la misma identidad URL.


    Recursos, plugins y más

    Algunos plugins de OpenID para diferentes CMS:

    – Basado en el código de ejemplo la librería PHP-OpenID 1.0.0, un plugin para WordPress. Para usarlo sólo has de instalar la librería PHP-OpenID mediante Pear (o extraerla en wp-content/plugins) y activarlo.

    OpenID comments for wordpress

    Drupal+OpenID Module

    Como añadir OpenID a tu dominio

    – OpenID en Ruby on Rails Camp

    PHPBB OpenID


    Todo el mundo ama OpenID

    Blogger estudia soportar OpenID
    – Technorati: Blog Claiming with OpenID
    – OpenID te da una recompensa por desarrollar plugins para:
    * Drupal
    * Joomla
    * Mailman
    * MediaWiki
    * phpBB
    * Plone
    * Slashcode
    * WordPress

    A todos nos gusta OpenID, excepto a Slashdot :s

    Update (17/12/06, 02:55):
    1) Google planea competir con MS Passport y OpenID. Parece que a alguien mas no le gusta OpenID…
    2) Todas las arquitecturas web de identificación en este artículo del W3C.
    3) ETech 2006, Who Is the Dick on My Site? una presentación sobre tecnologías emergentes, y las implicancias de la llamada Identidad 2.0

    + info: OpenID en la Wikipedia

    Gracias a que ahora sé que es y como funciona este bicho nuevo, pronto en eyeOS tendremos novedades sobre la implementación de OpenID. Stay Tuned!.

    2 Comments

    1. interesante el resumen.

      sólo una sóla cosa que decir :

      el color de las tipografías es muy claro, despues de un rato estar leyendo (en mi notebook) me cuesta leer. oscurécelas un tanto y creo se arreglará.

    2. Gracias!

      Si, lo de las tipografías, lo sé, en notebooks con pantalla sin antireflex no se lee nada :(.
      Voy a tomar tu sugerencias, muchas gracias Vladimir 😉

    Leave a Reply

    Your email address will not be published. Required fields are marked *