【问题标题】:OAuth2 Requesting Additional ScopesOAuth2 请求其他范围
【发布时间】:2017-06-26 19:02:09
【问题描述】:

使用 Google 登录 SDK,用户可以通过 OAuth2 登录并请求一些默认范围。最好不要预先请求应用程序可能需要的每个范围,而是在以后请求其他范围,以免用户在注册时不知所措。

Google 概述了执行此操作的过程here

问题在于,在用户使用 Google 登录后,在请求其他范围时,用户可以切换 Google 帐户并使用其他帐户授权这些范围,然后再返回我的应用程序。

有没有一种类似于调用 -[GIDSignIn 登录] 的方法来明确指定我要登录的用户并且不允许更改帐户的选项?

【问题讨论】:

    标签: ios google-api google-signin google-oauth


    【解决方案1】:

    我不熟悉 Google 登录 SDK。我所做的大部分工作都是我自己编写的,所以我不知道那个 SDK 是如何工作的。但是,话虽如此,身份验证服务器确实支持称为 Login_hint 的东西,它应该允许您强制他们使用特定用户。

    login_hint电子邮件地址或子标识符当你的应用程序 知道它正在尝试验证哪个用户,它可以提供这个 参数作为对身份验证服务器的提示。传递这个提示 将预先填写登录表单上的电子邮件框或选择 适当的多登录会话,从而简化登录流程。

    更多信息

    login_hint 可以是用户的电子邮件地址或子字符串, 相当于用户的 Google ID。如果您不提供 login_hint 并且用户当前已登录,同意屏幕 包括请求批准将用户的电子邮件地址发布到 你的应用程序。 (阅读更多login_hint。)

    如果内存服务 Google Sign in SDK 确实可以与 openId connect 一起使用,那么它应该是可能的。

    【讨论】:

    • 感谢您的建议。我尝试将 loginHint 参数设置为用户的电子邮件,虽然在要求选择帐户时它似乎不再显示任何其他谷歌帐户,但它仍然显示“使用另一个帐户”按钮。这当然是一项改进,但它仍然使用户能够登录另一个帐户。
    猜你喜欢
    • 1970-01-01
    • 2012-07-14
    • 2020-12-12
    • 2021-05-01
    • 2015-05-05
    • 2016-11-08
    • 1970-01-01
    • 1970-01-01
    • 2015-10-11
    相关资源
    最近更新 更多