iOS - 使用 auth0 删除同意对话框 3rd 方身份验证

Posted

技术标签:

【中文标题】iOS - 使用 auth0 删除同意对话框 3rd 方身份验证【英文标题】:iOS - Remove consent dialog 3rd party authentication with auth0 【发布时间】:2018-05-30 17:05:59 【问题描述】:

我正在尝试在我的应用中使用带有 Auth0 的 facebook 第三方登录。 每次我尝试从应用程序启动登录时,当我希望它打开 facebook 应用程序进行登录时,它首先会显示一个对话框,要求用户同意:

" [App] 想要使用 "auth0.com" 登录 这允许应用程序和网站共享有关您的信息 "

我想完全删除此对话框,因为在征求同意时,用户同意页面也会显示在 facebook 应用程序中。我在 auth0 中为仪表板中的 API 设置了“允许跳过用户同意”。

关于如何解决这个问题的任何想法?

提前致谢

【问题讨论】:

如果我们不能将其作为community.auth0.com/questions/12941/… 中的状态删除。我们可以修改它吗? 【参考方案1】:

目前无法删除警报消息,我们的应用也遇到了同样的问题。

我和其他许多人已经向 Apple 提交了一个关于此的错误,要求他们只显示一次或根本不显示。此 GitHub 线程的结尾讨论了警报。

https://github.com/openid/AppAuth-ios/issues/120

【讨论】:

【参考方案2】:

您可以使用旧版解决方案。

Auth0.webAuth().useLegacyAuthentication()

它有效,但我不建议继续使用它。

【讨论】:

【参考方案3】:

如果您使用 AppAuth:

转到 OIDExternalUserAgentIOS > @available(iOS 13.0, *) 之后的第 117 行 写下这一行: authenticationVC.prefersEphemeralWebBrowserSession = true

【讨论】:

以上是关于iOS - 使用 auth0 删除同意对话框 3rd 方身份验证的主要内容,如果未能解决你的问题,请参考以下文章

使用 Auth0.swift WebAuth0 设置初始屏幕

ASWebAuthenticatioSession SSO对话框同意问题

auth0 总是在浏览器刷新时显示登录对话框

重置 GDPR/同意对话框(撤销同意后选择重新加入)

Auth0:条件多因素规则从 JWT 中删除权限

Auth0 Swift SDK .authentication().login 返回无效令牌