2008-09-17 24 views
16

Así que me gusta la idea de OpenID. Lo apoyo en mi sitio y lo uso donde sea posible (¡como aquí!). Pero no tengo claro una cosa.Proveedores de OpenID: ¿qué detiene a los proveedores maliciosos?

Un sitio que admite OpenID acepta básicamente cualquier proveedor de OpenID, ¿no? ¿Cómo funciona eso con los sitios que quieren reducir el registro de bots? ¿Qué impide que un proveedor malicioso de OpenID configure ID de bot ilimitados automáticamente?

Tengo algunas ideas, y las publicaré como posible respuesta, pero me preguntaba si alguien puede ver algo obvio que me he perdido.

Respuesta

13

Ha confundido dos cosas diferentes: identificación y autorización. El hecho de saber quién es alguien no significa que deba darles automáticamente permiso para hacer algo. Simon Willison lo cubre muy bien en An OpenID is not an account!. Hay más discusiones sobre listas blancas disponibles en Social whitelisting with OpenID.

+11

La identificación y la autenticación son la misma cosa. Creo que te refieres a la diferencia entre autenticación y autorización. – skaffman

+0

Ambos enlaces han desaparecido. –

+0

@tepples: corregido, gracias. – Jim

2

Posible solución: aún puede solicitar nuevas ID para aprobar una prueba CAPTCHA. Al igual que los bots pueden registrarse con direcciones de correo electrónico falsas/múltiples en cualquier sitio, pero también fallan los pasos de "verificación" allí.

¿O vamos a tener que comenzar a mantener listas negras de proveedores? Esos no funcionarán realmente bien, dado lo trivialmente fácil que es establecer un nuevo proveedor.

3

OpenId no es mucho más que el nombre de usuario y la contraseña que un usuario selecciona al registrarse en su sitio. No confías en el framework OpenId para eliminar bots; su sistema de registro todavía debería estar haciendo eso.

2

Por lo que puedo decir, OpenID aborda solo la identificación, no la autorización. Detener bots es una cuestión de autorización.

9

La respuesta breve a su pregunta es "No es así". OpenID proporciona deliberadamente solo un mecanismo para tener un sitio de autenticación centralizado; Depende de usted decidir qué proveedores de OpenID considera personalmente aceptables. Por ejemplo, Microsoft recently decided to allow OpenID on its Healthvault site only from a select few providers. Una empresa puede decidir solo permitir los inicios de sesión de OpenID desde su punto de acceso respaldado por LDAP, una agencia gubernamental solo puede aceptar OpenID de sitios respaldados por biometría, y un blog solo puede aceptar TypePad debido a su intenso filtrado de spam.

Parece haber mucha confusión sobre OpenID. Su objetivo original era simplemente proporcionar un mecanismo de inicio de sesión estándar para que, cuando necesite un mecanismo de inicio de sesión seguro, pueda seleccionar uno o todos los proveedores de OpenID para manejarlo por mí. Permitir que cualquiera en cualquier lugar establezca su propio proveedor de confianza OpenID nunca fue el objetivo. Hacer el segundo de manera efectiva es imposible — después de todo, incluso con el cifrado, no hay ninguna razón por la que no pueda configurar su propio proveedor para mentir de forma segura y decir que está autenticando a quien desee. Tener un único mecanismo de inicio de sesión estandarizado ya es un gran paso adelante.

2

Observe que, a diferencia de los inicios de sesión "por sitio" convencionales, OpenID le ofrece una identidad que potencialmente trasciende los sitios individuales. Mejor aún, esta identidad es incluso una URI, por lo que es perfecta para usar con RDF para intercambiar o consultar metadatos arbitrarios sobre la identidad.

Puede hacer algunas cosas con un OpenID que no puede hacer con un nombre de usuario convencional de un nuevo usuario.

En primer lugar, puede realizar algunas operaciones simples de la lista blanca. Si * .bigcorp.example son OpenID de empleados de Big Corp y usted sabe que Big Corp no son spammers, entonces puede incluir en la lista blanca esos OpenID. Esto debería funcionar bien para los sitios que están semicerrados, tal vez es un sitio social para empleados actuales y pasados.

Mejor aún, puede hacer inferencias de los otros lugares que se ha utilizado OpenID específico. Supongamos que tiene un mapa de OpenID a los valores de reputación de Stackoverflow.com. Cuando alguien aparece en su foro web con un OpenID, puede ver si tienen una reputación decente en Stackoverflow y omitir el CAPTCHA o periodo de prueba para esos usuarios.

Cuestiones relacionadas