Certo, então eu sei que perguntas semelhantes já foram feitas no passado e houve algumas discussões. Analisei todas elas e ainda não consigo encontrar uma resposta definitiva, principalmente porque a maioria dessas postagens é antiga, a documentação do Facebook compartilhada nessas respostas está obsoleta e essas páginas de documentação do Facebook não existem mais.
Tenho 2 perguntas -
Pergunta 1: Ao integrar com o Facebook para SSO, podemos confiar cegamente que o e-mail retornado pelo Facebook é verificado? Ou temos que confirmar isso enviando ao usuário um e-mail com um link? Sei que hoje, se você criar uma conta no Facebook usando seu e-mail, o Facebook fará com que você a verifique enviando um código de 6 dígitos. Mas devo me preocupar com contas criadas décadas atrás, quando eles podem ou não ter verificado? Além disso, acredito que o Facebook também permite que você adicione endereços de e-mail adicionais à sua conta. Você sabe se eles podem fazer login usando esses endereços de e-mail e se eles enviam algum deles no retorno de chamada do SSO?
Pergunta 2: Sei que o Facebook também permite cadastro/login por número de telefone. Meu aplicativo usa o ID de e-mail como ID único, então, se eu não receber um e-mail de volta, não permitirei que os usuários façam login. Portanto, esse fluxo não é muito complexo. Mas você sabe o que acontece se um usuário criar uma conta com seu número de telefone e adicionar um e-mail a ela? O que o Facebook envia no retorno de chamada? O e-mail, o telefone ou ambos?
Qualquer contribuição é bem-vinda. Além disso, o que a maioria das pessoas faz? É uma boa prática confirmar o usuário enviando um e-mail com um link de verificação? Ou a maioria dos aplicativos confia no Facebook e permite que o usuário acesse sem muita dificuldade?