我的应用从Facebook请求身份验证。我们发现了一个问题,如果用户已经登录到Facebook并且用户已经登录Facebook已经授权了应用程序。 Facebook将使用您登录的用户对应用程序进行身份验证,而无需告知用户他们正在进行身份验证。我们有多个Facebook帐户的用户,这导致了一个问题,因为人们在没有意识到的情况下验证了错误的帐户。我通过将auth_type = reauthenticate添加到查询字符串来修复该问题。
根据Facebook的说法,auth_type = reauthenticate参数将始终要求用户再次输入密码:https://developers.facebook.com/docs/reauthentication/
不幸的是,auth_type = reauthenticate参数对某些帐户不起作用。大多数用户将被提示输入密码,但如果他们已经授权应用程序,则会通过一些用户。似乎没有理由说auth_type = reauthenticate参数适用于某些用户,但是其他用户会忽略该参数。忽略该值的用户会一直这样做。
我使用的授权网址是:
https://www.facebook.com/dialog/oauth?client_id= [my_client_id]&安培; REDIRECT_URI = [my_redirect_uri]&安培;显示弹出=&安培; AUTH_TYPE =重新认证&安培; RESPONSE_TYPE =代码%20token&安培;范围= publish_stream,manage_pages ,offline_access
(将[my_client_id]和[my_redirect_uri]替换为我的值)
有没有办法让所有用户再次输入密码,还是有其他办法让Facebook向用户显示他们正在验证的帐户?