Google api 如何删除未使用/孤立的Google OAuth2令牌?

Google api 如何删除未使用/孤立的Google OAuth2令牌?,google-api,google-oauth,Google Api,Google Oauth,我们有一个应用程序,随着时间的推移,它获得并使用谷歌OAuth2代币。现在它获得了“未验证的应用程序”状态,允许

我们有一个应用程序,随着时间的推移,它获得并使用谷歌OAuth2代币。现在它获得了
“未验证的应用程序”
状态,允许<100次安装。我们知道有<100个用户拥有活动访问令牌,但Google OAuth团队告诉我们有>100个未完成的访问令牌

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


谢谢

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

这样的访问令牌的生命周期约为一个小时-您可能指的是应用程序授权,即“第三方站点和可访问您帐户的应用程序”,它将持续到用户撤销为止。所以一般来说,除了建议用户手动撤销访问权限外,没有什么可以做的。更改软件包的名称可能是您摆脱它们的唯一选择。

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

curl -H "Content-type:application/x-www-form-urlencoded" \
      https://accounts.google.com/o/oauth2/revoke?token={token}
应用验证 您面临的问题是您的申请未经验证。在开发过程中,谷歌对未经验证的应用程序的安装限制为100次,这样你就可以在应用程序上线之前对其进行测试。您应该做的是转到Google开发者控制台,请求验证您的应用程序

未验证的应用程序是一个或多个应用程序脚本,它请求敏感或受限的OAuth范围,但尚未通过Google验证过程。未经验证的应用程序或测试版本的用户可能会收到基于您正在使用的OAuth作用域的警告。这是为了保护用户及其数据不受欺骗性应用程序的影响

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

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

curl -H "Content-type:application/x-www-form-urlencoded" \
      https://accounts.google.com/o/oauth2/revoke?token={token}
应用验证 您面临的问题是您的申请未经验证。在开发过程中,谷歌对未经验证的应用程序的安装限制为100次,这样你就可以在应用程序上线之前对其进行测试。您应该做的是转到Google开发者控制台,请求验证您的应用程序

未验证的应用程序是一个或多个应用程序脚本,它请求敏感或受限的OAuth范围,但尚未通过Google验证过程。未经验证的应用程序或测试版本的用户可能会收到基于您正在使用的OAuth作用域的警告。这是为了保护用户及其数据不受欺骗性应用程序的影响


一旦您的应用程序得到验证,您将不再受100次安装限制。您需要查看。

这些令牌是未知的,因此您将如何撤销它们?除此之外,实际的问题可能是,为什么该应用程序未经验证,这将是一个领先的方法。马丁,没错。我们不知道要撤销的代币:(至于未经验证的应用程序模式,我们选择保持这种模式,因为谷歌要求我们每年向他们的安全评估公司支付16000美元,让他们验证我们的应用程序。如果谷歌的100次安装计算中考虑了长期未使用且未更新的代币,而我们或他们没有使用代币,那么听起来谷歌的100次安装计算就被打破了。)DalTo我对应用程序验证过程非常熟悉,我们已经做了6个多月了。但归根结底,这都要花很多钱(每年1.5万到7.5万美元)谷歌选择了两家安全公司中的一家进行安全审查。我们目前负担不起。如果你没有刷新令牌,我们的应用程序就有刷新令牌,你不能撤销它们。它们没有被使用,用户可以随时选择使用。109次安装只用于测试。如果你有应用程序,你应该将其用于您的客户的安全。将验证的成本传递给您的客户,并将其视为与谷歌API进行业务的一部分。我们在此分叉为“未经验证的应用程序”。但问题仍然存在,是否有一种方法让应用程序所有者撤销所有未完成的授权/代币,并从零开始计算?感谢这些代币是未知的,那么你将如何撤销它们?除此之外,实际的问题可能是,为什么应用程序未经验证,这更像是一种领先的方法。马丁,没错。我们不知道这些我们想要撤销的代币:(对于未经验证的应用程序模式,我们选择保持该模式,因为谷歌