OpenID

25
Febrero
2007

Últimamente se oye mucho sobre OpenID, un sistema de “nombre de usuario” único distribuido (distributed single sign-on, en inglés). En cierto modo es parecido a Windows Live ID (anteriormente conocido como Microsoft Passport) o Google Accounts (aunque Google no lo promociona como un sistema de single sign-on).

La diferencia esencial entre los servicios de Microsoft o Google, y OpenID es la palabra “distribuido”. Mientras que los otros dos ejemplos tienes que confiar en una de las dos compañias tus datos, en OpenID puedes confiar tus datos al proveedor (provider) en el que confies, y si no confías en nadie y tienes ciertos conocimientos incluso puedes ser tu propio proveedor y controlar todo (aunque desde luego esta no es una solución para todo el mundo).

No quiero meterme ahora a explicar OpenID, otros han hecho mucho mejor trabajo (en inglés), pero básicamente consiste que el sitio en el que te quieres identificar pide a tu proveedor que te autentifique, y para ello proporcionas una URI que funciona como tu nombre de usuario, y únicamente proporcionas tu contraseña al proveedor de OpenID (para ser sinceros, el proveedor puede elegir el modo en el que te autentificas, ya sea contraseña, algún tipo de certificado u otra forma).

Normalmente esa URI será proporcionada por el proveedor (algo del estilo de http://usuario.example.com o http://example.com/usuario) pero si tienes una página web es muy sencillo hacer tu URI para OpenID sea, en mi caso, http://ruido-blanco.net/, mediante un sencillo sistema denominado delegación. Este sistema tiene la ventaja de que si tu proveedor desaparece o no confias en él puedes modificar tu página para dirigir las autenticaciones a otro proveedor de OpenID (sin que los servicios web que utilices tengan que preocuparse por ello).

Estaba casi a punto de hacerme una cuenta de OpenID y preparar Ruido Blanco para ser mi “nombre de usuario”, pero me he dado cuenta de un posible peligro en el sistema de delegación y me lo ha confirmado esta respuesta en el FAQ de OpenID. Si pierdes el control de tu dominio, o alguién consigue modificar los datos de delegación (son unas simples etiquetas en una página web) podría entrar en cualquiera de tus servicios donde te hayas registrado con tu URI de OpenID.

No se como cada servicio que permita registrarse con OpenID tratará a la URI. Por ejemplo en el screencast que enlazo más arriba parece que en Wikitravel la URI es el nombre de usuario, mientras que usando el apodo que puede proporcionar OpenID Simple Registration Extension o el propio usuario manualmente todo debería ser un poco más privado.

Desde luego el éxito del sistema dependerá de como el usuario de “a pie” lo entienda, porque admitamoslo, dar tu contraseña a un sitio diferente al que intentas registrarte no es del todo intuitivo. Y desde luego presenta el problema de siempre, los usuarios no eligen buenas contraseñas, eligen contraseñas que puedan recordar, y single sign-on significa que una vez que conozcas la contraseña tienes acceso a la lista de todos los servicios que el usuario utiliza (actualmente, sin single sign-on, conocer la contraseña de un servicio puede provocar que conozcas las contraseñas de los demás servicios, pero desconoces cuales otros servicios utiliza el usuario).

Otro problema es la fase de “transición”, en la cual los servicios web deberán dar la opción de registrarse con OpenID y con un sistema normal, además de permitir a los usuarios con cuentas no-OpenID migrar sus perfiles a cuentas OpenID, hasta que OpenID adquiera el peso suficiente para establecerlo como requisito y las cuentas no-OpenID sean algo del pasado. Ya es difícil realizar un sistema de cuentas no-OpenID y dentro de unos meses va a ser casi obligatorio que las cuentas OpenID y las no-OpenID convivan sin problemas y de forma transparente para el usuario.

OpenID es una gran idea, pero es joven y se mueve rápido, supongo que un par de meses tendremos muchas aplicaciones web anunciando que admiten registros OpenID, y cuanta más gente sepa del sistema mejor se volverá. Eso es lo bueno de los sistemas abiertos.

  • No se han encontrado entradas relacionadas

Deja un comentario

Puedes enterarte de las respuestas a tus comentarios de esta entrada mediante myComments.

XHTML: Puedes utilizar las siguientes etiquetas: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Tu servidor sin límites: 20GB de espacio, 1TB de transferencia, 1 dominio gratuito. Por 1.5€ al mes utilizando el código "RUIDOBLANCO" en DreamHost. Más información.