如何有选择地添加Google Apps帐户的范围

时间:2016-12-19 14:16:28

标签: oauth-2.0 google-api google-oauth google-oauth2

我希望能够在OAuth期间使用Directory API所需的特定范围来添加到我的服务中的所有Google帐户。但是,其中一些范围与免费Gmail帐户无关。

现在,一种选择是在我们的服务中单独设置一个流程,以便我们向用户表明Google Apps和Gmail是不同的。但是从以前的经验来看,我已经看到很多用户都不够精明,无法区分这两者并且只是继续使用Gmail流程,这些用户最终会错过我们可以提供的功能。她去了Google Apps流程。

我宁愿避免这种情况,也要让用户尽可能简单。为此,在第一篇文章中,我是否有任何方法可以指定“添加范围(如果这是Google Apps帐户”)?

1 个答案:

答案 0 :(得分:1)

假设您要使用https://www.googleapis.com/auth/admin.directory.orgunit范围。

即使您确实包含此范围以供用户授权,您也不会在流程中遇到任何错误,无论他们是免费的Gmail帐户还是非G Suite管理员。只有当您将需要admin.directory.orgunit范围作为非G Suite管理员的API调用时才会收到错误。

如果您担心如果您要求的范围太多,可能会阻止您的用户使用您的应用,您可以在需要时request additional scopes

If you want to detect if a user is a free gmail or a G Suite account check out this answer。之后,如果是G Suite帐户,您可以要求其他范围。