【问题标题】:Create one or multiple credentials for different projects using OAuth 2.0 client IDs?使用 OAuth 2.0 客户端 ID 为不同项目创建一个或多个凭据?
【发布时间】:2018-08-31 11:41:55
【问题描述】:

我首先在 Google developer console 上创建了一个 Google API 项目,并将 OAuth 2.0 客户端 ID 配置为凭据,以便让我的 C# 项目访问 Google Drive。

但是,我是使用 Google API 进行开发的新手,我无法理解何时应该创建新的凭据或项目。

我应该创建多个凭据(可能为一个项目创建一个凭据?)还是实际上可以为多个项目使用相同的凭据?创建多个凭证的目的是什么?

【问题讨论】:

    标签: oauth google-api google-drive-api google-oauth google-developers-console


    【解决方案1】:

    如果您要创建不同的应用程序,那么您应该在谷歌开发者控制台上创建不同的项目,每个项目都有自己的一组凭据。

    这样做的原因是为了确保您不会遇到任何配额问题。它还允许 Google 跟踪谁在使用他们的数据以及使用了多少。

    您还应该考虑在定义项目和创建凭据时为其命名。当用户对您的应用程序进行身份验证时,他们将授予对 Super app one 的访问权限以使用他们的数据,如果您将此客户端与 Super app two 一起使用,那么他们将不知道谁可以访问他们的数据。

    我的个人规则

    1. 每个应用程序都是 Google 开发者控制台上的一个项目。
    2. 在该项目中,我为本地、测试和生产环境创建了一个客户端 ID。

    关于项目创建配额的评论更新

    我目前的项目配额

    您的配额中还有 37 个项目。了解更多。

    您总是可以要求其他项目尽早完成,因为我记得花了一周左右的时间才拿到它们。 Project quota requests

    更新使用情况,然后为同一项目创建多个凭据

    就像我之前提到的,如果您在不同的项目中使用相同的项目作为凭证,那么您将错过领导用户的机会。我用箭头标记的字段表示APPLICATION,它们特定于请求访问的应用程序。它们是项目本身的一部分。在该项目下创建的所有客户都将使用相同的同意屏幕。如果您将它用于两个不同的应用程序,那么您就是 IMO 错过了引导用户使用他们授予访问其数据的应用程序的权限。

    您也可能会错过领导 Google,因为我相信 TOS 需要每个应用程序一个项目提出请求,因此同意屏幕具有应用程序名称和指向应用程序联系人的链接。但是我认为我需要再次阅读 TOS 文档以确保这是一项要求。

    您也更有可能达到配额限制。很多限制是基于项目的而不是基于凭据的,因此如果您有两个应用程序从同一个 api 读取,并且在同一个项目下创建了两个不同的凭据。与为每个应用程序创建自己的项目相比,您将更快地达到配额。

    示例:Google Analytics 示例每天最大项目请求 50000 个。

    同一个项目

    • 应用一请求20000
    • 应用两次请求30000

    应用程序一和应用程序二现在都被阻止在当天剩余时间发出请求,因为它们的请求总数达到了 50000 个。

    两个独立的项目

    • 应用程序一发出 30000 个请求
    • 应用程序 2 发出 50000 个请求。

    应用程序 2 现在在一天的剩余时间内被阻止,因为它发出了 50000 个请求。应用程序一继续工作,直到它也达到 50000 个请求。

    【讨论】:

    • 谢谢,但是在谷歌开发者项目中有一个项目创建限制(最多 8 个项目)......这对我的项目来说还不够。那么为同一个项目创建多个凭据有什么用呢?谢谢
    • 八个你确定?我现在有 18 个,还有更多空间。当我达到配额时,我只是要求再延长 50 个。检查编辑。您可以随时要求更多。
    • @tak 你的问题催生了一篇博文,希望你不要介意。 daimto.com/is-your-project-misleading-users
    • 只是为了确保我能正确理解你@DaImTo,你认为适合使用同一个项目但为开发、生产和测试环境制作多个凭据?
    • 你可以个人我不会。尤其是你不希望你在测试和开发中所做的任何事情影响它。但是,随着需要进行应用程序验证的更改,如果您没有将它们放在同一个项目中,您可能需要多次完成该过程
    猜你喜欢
    • 2014-03-20
    • 1970-01-01
    • 1970-01-01
    • 2012-10-10
    • 2019-12-04
    • 2016-11-28
    • 1970-01-01
    • 1970-01-01
    • 2017-10-18
    相关资源
    最近更新 更多