2010-07-14 30 views
7

Estoy planeando un cliente OpenID en un juego de red C++ multijugador. El hoster tendrá la opción de permitir solo inicios de sesión a las personas que pueden autenticarse a través de OpenID. También quiero permitir que solo algunas personas puedan iniciar sesión.Autenticación OpenID en el juego de red multijugador C++

Ya tenemos un visor de HTML simple en nuestro código (y tenemos la intención de migrar a WebKit), por lo que mostrar HTML (para el inicio de sesión de OpenID) no es realmente un problema.

También tenemos código para solicitudes HTTP (ya hemos migrado a libcurl aquí).

No he encontrado ningún código C++ para hacer el resto (el saludo de punto final OpenID real). ¿Hay algún código C++ para esto?

Si no, ¿dónde es un buen punto para comenzar? Realmente no tengo muchas ideas sobre el funcionamiento interno de OpenID. ¿Es complicado codificar yo mismo?

¿Es posible algo como esto? Creo que he visto que debo colocar una URL de sitio de autenticación más o menos para el punto final OpenID al que volverá si el inicio de sesión es exitoso. En este caso, no hay ningún sitio donde inicies sesión a través de OpenID, es un servidor de juegos.

Si eso es realmente un problema para hacerlo de esta manera, también tenemos nuestro propio servidor web (uno para nuestro foro y tenemos el de SourceForge uno), así que también podríamos hacer todas las cosas allí. Sin embargo, esto tiene el gran inconveniente de que el juego depende de algún sitio web para el inicio de sesión de OpenID, lo cual es muy malo: una de las ventajas de OpenID se ha ido.

+0

Creo que OpenID se usa principalmente para la autenticación de sitios web; si recuerdo correctamente el marco, el navegador del usuario debe dirigirse al sitio web del proveedor para confirmar la solicitud de autenticación. – amphetamachine

+0

Por lo que recuerdo, el resultado es una redirección con el resultado de autenticación. Si se utiliza un navegador integrado, la redirección (o evento de navegación) puede ser capturado en el lado del cliente. –

Respuesta

Cuestiones relacionadas