2010-06-14 14 views

Respuesta

7

Así que finalmente activé la instalación de OpenID y está funcionando bastante bien. Me imagino que detallaré algunas de las trampas con las que me encontré.

  • Hay más de tres estados/pasos para el proceso de inicio de sesión de OpenID. Esto es confuso, porque la documentación y el código de muestra lo llevarían a creer que hay tres. Hay, en algunos casos, hasta siete. Mire los registros de su servidor y vea cuántas veces un SERVIDOR y un USUARIO (los que solicitan la autenticación) presionan al PROVEEDOR (lo que presumiblemente está configurando). Es difícil depurar algo cuando solo está viendo la mitad de las interacciones
  • Muchos proveedores utilizan la especificación OpenID 2.0 no finalizada. (Es un poco mejor). La especificación 2.0 tiene un rendimiento diferente de la especificación 1.0; el SERVIDOR (ellos) establece confianza con el PROVEEDOR (usted). Net :: OpenID :: Server maneja esto correctamente, pero no le dice qué especificaciones está usando. La especificación 2.0 agrega un paso al proceso de toma de contacto.
  • Configure su propio SERVIDOR OpenID para realizar pruebas fácilmente. Utilicé un servidor Rails simple con una gema llamada ruby-openid. Le tomó unos 10 minutos configurarlo para imitar el comportamiento de un servidor real en el medio silvestre.
  • No hace falta decirlo, pero asegúrese de que su proceso de inicio de sesión sea sin estado. Teníamos una variable global que manejaba cómo se verificaba al usuario. Debido a que el uso de esa variable hizo ciertas suposiciones que eran incompatibles con el proceso de inicio de sesión de OpenID, los usuarios podrían haber ingresado a cuentas que no sean las suyas. Esto es obviamente malo. Algunos cierres y tenemos un código más seguro y sin estado.

En general, OpenID es bastante genial una vez que lo hace funcionar.

+0

+1 para el nitty-gritty – daxim

0

Fyi, se está iniciando el desarrollo de los módulos Net-OpenID Perl, por lo que puede esperar una gran cantidad de correcciones de errores y mejores documentos para poder funcionar muy pronto. Consulte CPAN y el grupo openid-perl para obtener más información.

Cuestiones relacionadas