2009-05-03 22 views
16

¿Qué pruebas de conformidad de normas automatizadas existen para proveedores de OpenID?Prueba de conformidad para proveedores de OpenID

Estoy realizando cambios en la implementación de un proveedor OpenID, para llevarlo de la versión 1.1 del estándar a la versión 2.0.

Antes de liberar el código, quiero asegurarme de que cumpla con las especificaciones de la norma. Para probar el cumplimiento de los estándares web, el W3C tiene herramientas de validación. ¿Qué herramientas existen para poder llamar al un probador automático en mi proveedor OpenID y obtener un informe de conformidad con el estándar?

+0

la parte más difícil de automatizar serían las comprobaciones de vencimiento y el hecho de que necesita una entrada de navegador para probar, por lo que debe escribir un script de selenio para realizar el proceso de inicio de sesión. Hice una especie de Heroku pero fue para probar mi cliente OpenID. Probablemente pueda retroadaptarlo para hacer sus propias pruebas. –

Respuesta

6

No hay pruebas de conformidad (al menos oficialmente aprobadas) que yo sepa, incluso para 1.1. Ciertamente es algo que sería de muy alto valor. Lo mismo ocurre con oAuth: ambos son protocolos complejos y, a veces, el evento no cubre todo.

Probablemente, lo único que puede hacer en este momento es una exhaustiva cobertura de pruebas de unidades localmente.

+1

Esto no es exacto [más]. http://test-id.org tiene algunas pruebas patrocinadas por OSIS y la placa OpenID. –

+0

@Andrew y ahora test-id.org devuelve "servicio no disponible" – Armand

+0

Parece que está de vuelta otra vez. –

0

A partir de ahora, y según mi leal saber y entender, no hay herramientas que puedan informar el cumplimiento del estándar. Si realmente desea asegurarse de que su código cumple 2.0, debe contratar a algunos consultores independientes para que revisen sus pruebas unitarias para cada función de openID 2.0. También deberían hacer sus propias pruebas, por supuesto. Los consultores deben tener experiencia en auditoría en general, como PCI DSS, etc. Tienen experiencia para revisar las especificaciones y probar las bibliotecas y bases de datos de sus aplicaciones.

+3

Su consejo parece más adecuado si mi pregunta fue sobre el cumplimiento de ISO 9001, pero no es así. Una especificación estándar abierta, bastante breve, de un protocolo de máquina a máquina, como OpenID, es un objetivo para las pruebas automatizadas, como las herramientas W3C Validator. – bignose

4

OSIS tiene interoperability tests, feature tests for IPs y feature tests for RPs

Sin embargo, estos no están automatizados, todo el mundo se reúne en una de las conferencias y cheques RSA todos ellos trabajan entre sí.

+0

Gracias. Es solo un informe de pruebas existentes, y no da ninguna indicación de cómo alguien que desarrolla un proveedor de OpenID podría aplicar las mismas pruebas. – bignose

6

Hay una cosa para 1,1-only: http://openidenabled.com/resources/openid-test/diagnose-server/

Nunca Nos pasaron por 2,0. Una o dos veces al año, alguien viene y dice "bueno, deberíamos tener mejores herramientas de prueba", pero en lo que yo (y otros, a juzgar por las respuestas aquí) sabemos, ninguno de esos esfuerzos ha dado frutos todavía.

Editado para añadir: otro proyecto relacionado es a http://code.google.com/p/openid-test/

+0

Se ve bien. ¿Es software libre? Si es así, ¿dónde está el código fuente? – bignose

+0

Creo que lanzamos el código en algún momento, pero no estoy seguro de dónde está ahora.Y, francamente, aunque suelo disuadir a la gente de comenzar desde cero, podría ser una buena idea en este caso. Parte de la razón por la que el servidor nunca se actualizó fue porque dependía en gran medida de los detalles de implementación interna de la biblioteca v1 python OpenID, por lo que no se pudo mantener a medida que la biblioteca evolucionó y se actualizó. – keturn

8

Usted podría mirar http://test-id.net/ que tiene un conjunto de pruebas escritas en .NET.

+1

Este es un conjunto de interoperabilidad, seguridad y pruebas de implementación de especificaciones patrocinadas por OSIS que funcionan en contra de cualquier RP u OP, independientemente de si está basado en .NET u otra plataforma. –

Cuestiones relacionadas