【问题标题】:How can unused/orphaned Google OAuth2 token be removed?如何删除未使用/孤立的 Google OAuth2 令牌?
【发布时间】:2019-09-27 14:53:27
【问题描述】:

我们有一个应用程序随着时间的推移获得并使用 Google OAuth2 令牌。现在它获得了'Unverified app' 状态,允许

我们如何撤销那些我们的应用不再跟踪的未使用/孤立令牌?我们无法发出“撤销”请求,因为我们不知道这些令牌。有没有办法让应用列出所有未完成的 oauth2 令牌或撤销其所有令牌?

谢谢

【问题讨论】:

    标签: google-api google-oauth


    【解决方案1】:

    此类访问令牌的生命周期约为一小时 - 您可能指的是应用授权,即“有权访问您帐户的第三方网站和应用”,直到被用户撤销。所以一般来说没什么可做的,除非建议用户手动撤销访问。更改包的名称可能是您摆脱它们的唯一选择。

    【讨论】:

    • Martin,你改包名是什么意思?在 Google API 控制台中,您有项目,并且同意屏幕中有一个应用名称。有没有办法更改项目中的某些内容以使所有未完成的刷新令牌无效?
    【解决方案2】:

    授权用户

    首先你没有unused/orphaned tokens 不是真的。您所拥有的是已授予您的应用程序访问其数据的权限的用户。 您无法准确了解这些用户是谁。除非您在系统中的某个位置保存了每个刷新令牌,否则无法删除他们授予的同意。 如果这样做,您可以在所有这些刷新令牌上调用 revoke,它应该/可能释放 100 次安装中的一些。这只是我从未尝试过的猜测。

    curl -H "Content-type:application/x-www-form-urlencoded" \
          https://accounts.google.com/o/oauth2/revoke?token={token}
    

    应用验证

    您遇到的问题是您的应用程序未经验证。 Google 在开发过程中对未经验证的应用程序设置了 100 次安装限制,这样您就可以在应用程序上线之前对其进行测试。您应该做的是转到 Google 开发者控制台并请求验证您的应用程序。

    未经验证的应用是指请求敏感或受限 OAuth 范围但尚未通过 Google 验证流程的应用或 Apps 脚本。未经验证的应用程序或您的测试版本的用户可能会收到基于您正在使用的 OAuth 范围的警告。这是为了保护用户及其数据免受欺骗性应用的侵害。

    一旦您的应用程序通过验证,您将不再受到 100 次安装的限制。你需要通过verification process

    【讨论】:

    • 那些令牌是unknown,那么你打算如何撤销它们呢?除了实际的问题可能是,为什么应用程序变得未经验证,这宁愿是一种领先的方法。
    • 马丁,没错。我们不知道我们想要撤销的那些令牌 :( 至于未验证的应用程序模式,我们选择保持这种模式,因为谷歌要求我们每年向他们的安全评估公司支付 16,000 美元来验证我们的应用程序。听起来像谷歌的 100如果安装计算考虑到未使用且长时间未更新的令牌,并且我们或他们没有任何方法来清除过时的不必要的令牌,则会破坏安装计算。
    • DalTo 我对应用验证过程非常熟悉,我们已经使用了 6 个多月。但这一切都归结为向谷歌选择的两家安全公司之一支付大量费用(每年 15,000 到 75,000 美元)进行安全审查。我们目前负担不起,我们的应用有
    • 如果您没有刷新令牌,则无法撤销它们。它们未被使用,用户可以随时选择使用它。 109 次安装仅用于测试。如果您有一个应用程序,您应该验证它以确保您的客户的安全。将验证费用转嫁给您的客户,并将其视为与 Google api 开展业务的一部分。
    • 我们在这里分歧为“未经验证的应用程序”,但问题仍然存在,应用程序所有者是否有办法撤销所有未完成的授权/令牌并从零开始?谢谢
    猜你喜欢
    • 1970-01-01
    • 2016-07-08
    • 1970-01-01
    • 1970-01-01
    • 2013-02-23
    • 1970-01-01
    • 1970-01-01
    • 2018-10-13
    • 1970-01-01
    相关资源
    最近更新 更多