¿Es posible verificar si un correo electrónico está confirmado en Facebook?

Actualizar

Esto fue reportado a Facebook a través dehttps://www.facebook.com/whitehat/report/ el 16 de diciembre de 2013 y Facebook respondió el 17 de diciembre queel error ha sido corregido desde hace mucho tiempo.

He vuelto a probar esto con mi cuenta de Facebook (en la que todavía no he verificado la dirección de correo electrónico) y cuando uso laHerramienta Grap API Explorer no es posible obtener la dirección de correo electrónico de esta cuenta mediante la API Graph o mediante una consulta FQL.

Conclusión: La dirección de correo electrónico que obtiene de Facebook mediante Graph API o una consulta FQL es un correo electrónico verificado. Si una cuenta no ha verificado su correo electrónico aún no es posible obtenerlo.

Mensaje 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 se muestren como el mismo usuario en mi sistema, independientemente de la identidad con la que inician sesión. Para lograr esto, estoy pensando en usar 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 presentar 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 elAPI de información de usuario Puede decirme si un correo electrónico está verificado o no, por lo que no hay problema aquí. Pero no puedo encontrar nada como esto en elAPI de Facebook Graph.

¿Es posible saber si una dirección de correo electrónico está confirmada en Facebook?

Sé que hay unverified campo, pero eso solo indica si la cuenta está verificada y no la dirección de correo electrónico.

Al principio, parecía que solo podía usar Graph API para las cuentas donde la dirección de correo electrónico había sido confirmada. Si no se confirmó la dirección, acabo de recibir un error que me indica que primero tuve 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 te registras con un@ myopera.com Correo Electronico.

Cuando te registras en Facebook con una dirección de correo electrónico @ myopera.com, recibes un mensaje de que tu cuenta se ha bloqueado temporalmente tan pronto como envíes el formulario de registro. Para continuar, debe proporcionar su número de teléfono para verificar su cuenta y para "mantener a Facebook seguro y libre de spam" (perdón 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 proporcionas tu número de teléfono, inicias sesión y Facebook no te molesta más sobre eso, debes verificar tu dirección de correo electrónico.

El único lugar donde puede ver que su dirección de correo electrónico aún no se ha verificado es en la página de configuración:

La configuración móvil a la que normalmente no se puede acceder antes de que haya verificado 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 del gráfico con este usuario puedo obtener la dirección de correo electrónico no confirmada y laverified campo devuelve verdadero como se esperaba ya que tengoverificado la cuenta añadiendo un número de teléfono. Así que obviamente no puedo confiar en que la dirección de correo electrónico que recibo de Facebook realmente pertenezca 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 tengo que verificarla si quiero usarla para identificar al usuario?

Respuestas a la pregunta(2)

Su respuesta a la pregunta