para - ¿Es posible verificar si un correo electrónico está confirmado en Facebook?
no me llega el codigo de facebook a mi celular (2)
Nunca lo he usado, pero es posible que pueda consultar con una consulta FQL del usuario.email_hashes: http://developers.facebook.com/docs/reference/fql/user
Actualizar
Esto se informó a Facebook a través de https://www.facebook.com/whitehat/report/ el 16 de diciembre de 2013 y Facebook respondió el 17 de diciembre que el error se ha solucionado hace mucho tiempo .
He vuelto a probar esto con mi cuenta de Facebook (que todavía no he verificado la dirección de correo electrónico) y al usar la herramienta Grap API Explorer no es posible obtener la dirección de correo electrónico de esta cuenta usando Graph API o usando una consulta FQL .
Conclusión: la dirección de correo electrónico que obtienes de Facebook usando Graph API o una consulta FQL es un correo electrónico verificado. Si una cuenta aún no ha verificado su correo electrónico, no es posible obtenerlo.
Publicación original
Estoy creando una aplicación web con SSO que ofrece al usuario iniciar sesión con Google o Facebook. Me gustaría que los usuarios que tienen ambos tipos de cuentas aparezcan como el mismo usuario en mi sistema, independientemente de la identidad con la que inicien sesión. Para lograr esto, estoy pensando en utilizar la dirección de correo electrónico como el identificador para saber si debo crear una nueva cuenta o si el usuario ya existe.
Para no introducir ningún problema de seguridad, debo saber que la dirección de correo electrónico está verificada y que en realidad pertenece al usuario. Para Google, la API de userinfo me puede decir si un correo electrónico está verificado o no, así que no hay problema aquí. Pero no puedo encontrar nada como esto en la API Graph de Facebook .
¿Es posible saber si una dirección de correo electrónico está confirmada en Facebook?
Sé que hay un campo verified
, pero eso solo dice si la cuenta está verificada y no la dirección de correo electrónico.
Al principio, parecía que solo puedes usar Graph API para las cuentas donde se ha confirmado la dirección de correo electrónico. Si la dirección no se confirmó, recibí un mensaje de error que me indicaba que tenía que confirmar la dirección de correo electrónico antes de poder iniciar sesión en un sitio de terceros.
Sin embargo, esto no parece ser cierto para todas las cuentas. En algunos casos, es posible obtener acceso a todas las partes de Facebook, incluso si no tiene una dirección de correo electrónico confirmada. Un ejemplo de esto es cuando se registra con una dirección de correo @myopera.com .
Cuando se registra en Facebook con una dirección de correo electrónico @ myopera.com, recibe un mensaje de que su cuenta se ha bloqueado temporalmente tan pronto como envía el formulario de registro. Para continuar necesita proporcionar su número de teléfono para verificar su cuenta y "mantener Facebook seguro y libre de spam" (lo siento por el sueco en la captura de pantalla, esto fue antes de que pudiera ingresar a Facebook y cambiar el idioma al inglés):
Cuando proporciona su número de teléfono, está conectado y Facebook no le molesta más sobre eso, tiene que verificar su dirección de correo electrónico.
El único lugar donde puede ver que su dirección de correo electrónico aún no está verificada se encuentra en la página de configuración:
La Configuración móvil que generalmente no se puede acceder antes de verificar su dirección de correo electrónico está disponible y enumera el número de teléfono ingresado durante el registro:
Además de esto, también es posible iniciar sesión en sitios de terceros con una dirección de correo electrónico no confirmada:
Cuando me conecto a la API con este usuario, puedo obtener la dirección de correo electrónico no confirmada y el campo verified
devuelve verdadero como se esperaba, ya que he verificado la cuenta agregando un número de teléfono. Entonces, obviamente, no puedo confiar en que la dirección de correo electrónico que recibo de Facebook pertenezca realmente al usuario que tiene la cuenta de Facebook.
¿Hay alguna otra forma de saber si la dirección de correo electrónico está verificada o no o debo verificarla yo mismo si deseo usarla para identificar al usuario?
Si bien no es la forma más óptima de hacerlo, puede intentar una solución con solo enviar una búsqueda y analizar los resultados:
http://www.facebook.com/search/results.php?q=<email address here>
También está sujeto a cualquier configuración de privacidad particular que los usuarios hayan establecido para ellos mismos en cuanto a que se pueda buscar, pero en lugar de otra forma ...