2010-02-24 13 views
7

Recientemente implementé el inicio de sesión en mi cuenta de Facebook. Entonces, ahora los usuarios tienen 2 formas de iniciar sesión en el sitio. La forma antigua de registrar una cuenta y la nueva forma (Facebook Connect).Vinculación de nuevos usuarios iniciados a través de Facebook conectarse a cuentas existentes

Una cosa que me gustaría hacer es vincular una nueva cuenta de usuario de Facebook Connect a las cuentas existentes si se registraron a la antigua.

¿Alguien ha tenido éxito al hacer esto?

Respuesta

4

Muy buena pregunta, creo que mucha gente se beneficiará de una respuesta.

Lo que debe recordar es que las cuentas solo están vinculadas siempre que estén autorizadas a vincularse a través de Facebook. Lo que debe hacer es mantener una segunda tabla de cuentas vinculadas en su base de datos para que sepa quién es quién y si están vinculados con Facebook.

Debe leer este comentario de integración, proporciona mucha información útil.

http://crazyviraj.blogspot.com/2010/01/test-cases-for-basic-facebook-connect.html

En realidad no dicen cómo hacer las cosas, pero se asegura que llenar todos los requisitos de lo que debería estar haciendo .

es decir:

Suscríbete debe fallar si el usuario niega permiso a la aplicación (categoría: Muestra de arriba)

Puesto que necesitamos acceso a una dirección de correo electrónico , Registrarse debe fallar si el usuario proporciona publicar permiso, pero niega el permiso de correo electrónico (categoría: inscribirse)

Si el usuario proporciona un emai l dirección que ya existe en su sistema, error Registrarse. Asegúrese de que no se modifiquen las tablas de fondo de YouFace (categoría: registro, mapeo 1: 1) PD: cuando ocurre esto , no encontré la manera de que usted desautorice YouFace en el nombre de usuario de Facebook . El usuario debe hacer esto manualmente si desea que use la misma cuenta, pero proporcione una dirección de correo electrónico diferente.

Cuentas creado usando Facebook Connect no debería ser capaz de iniciar sesión usando la contraseña sistema de correo electrónico YouFace default/login (categoría: iniciar sesión, seguridad de la cuenta).PD: Desde YouFace cuentas requieren una contraseña y los creado usando Facebook Connect no, Asegúrese de insertar una contraseña aleatoria de hash en su mesa para evitar errores tontos

cuentas creadas usando YouFace debería ser capaz para acceder sin necesidad de que se firmará en Facebook, incluso si cuando un enlace a una cuentas de Facebook existe (categoría: sesión)

Cualquier muchos más

1

Debe solicitar acceso permanente a través de la autenticación fb connect. Una vez que hayas hecho eso, obtendrás un token que otorga tu permiso para acceder a la información de Facebook de alguien, y ese token no caducará a menos que el usuario te quite explícitamente de la lista de permisos o cambie su contraseña.

Una vez que tenga el token, asocie ese token con el usuario/cree un nuevo campo en su tabla de usuario para almacenarlo.

Para asociar al usuario con una cuenta de Facebook sin que el usuario inicie sesión, puede intentar hacer coincidir por correo electrónico. No es 100% exacto, pero es bastante bueno. Facebook no le da direcciones de correo electrónico en forma de texto, pero puede obtener hashes de correo electrónico de FQL. Como ya conoce las direcciones de correo electrónico de los usuarios, puede calcular el hash para todos sus correos electrónicos de usuario y buscar en su base de usuarios las coincidencias cada vez que se suscriba un nuevo usuario de Facebook Connect.

Cuestiones relacionadas