我们使用Java Script和Android前端运行一个web应用程序。我们使用Google id和OAuth进行身份验证。一切正常,直到今天身份验证突然停止工作。没有部署新的软件版本或任何操作更改。现在,当用户尝试通过浏览器应用程序登录时,Google会发出
401. That’s an error.
Error: disabled_client
The OAuth client was disabled.
Request Details
scope=openid profile email
response_type=code
redirect_uri=https://***.net/signin-google
state=***
client_id=******.apps.googleusercontent.com
That’s all we know.
通过Android App登录时,认证也失败,GoogleAuthUtil。getToken引发一个非特定异常。
当我搜索这个错误信息时,我找不到太多信息。有人说,应该尝试在同意屏幕中更改应用程序名称。这对我的情况没有帮助。
在开发者控制台,我注意到,我不能为这个项目创建一个新的客户端ID。我总是遇到一个技术错误("服务器错误!我们的坏"),并附上一个追踪号码。似乎有关系。
我总共为这个项目注册了7个客户端id和3个公共API访问密钥。
有没有可能,谷歌明确地禁用了我们的项目?这才是真正的感觉。为什么?我没有收到任何通知。我们的产品是一个访问控制应用程序,没有什么特别或非法的。
任何想法?这是一个生产环境,所以对我们来说这个问题绝对是严重的。
谢谢你的帮助!
在此期间,我们发现,我们的Android应用程序从Play商店下架,我们得到以下通知:
这是一个通知,您的应用程序,<…>,附有包裹编号<…>,已从Google Play Store下架。删除原因:违反内容政策的个人信息和保密信息规定。有关更多信息,请参阅策略帮助文章。
- 我们不允许未经授权发布或披露人们的私人和机密信息,如信用卡号、政府身份证号、驾驶执照和其他执照号码、非公开联系人或任何其他不能公开访问的信息。
我们对应用程序中的数据非常小心,我们非常重视隐私和安全,因为hole应用程序是关于安全的,我们客户的信任是绝对必要的。但是,我们最近引入了一个特性,它可以出于调试原因定期将LogCat输出发送到服务器。我们的应用程序处于早期预览状态,我们在应用描述中明确说明了这一点。使用它的人非常有限,因为它只能与我们提供的特殊硬件一起使用。LogCat输出只包含来自应用程序本身的数据,不包含任何类型的可靠数据。我们发布了几个相关的应用程序,并不是所有的应用程序都包含这个功能,但所有的应用程序都被暂停了。然而,我们猜测这个特性是删除的原因。
编辑与此同时,我们通过Google Play提供的表格写了一份申诉。该禁令很快从Google Play和相关的Google OAuth客户端中删除。
我们被告知,我们的应用程序收集运行任务的名称并将它们发送到我们的服务器,这不是情况。但是,我们使用了criteria库和criteria文档建议要求"GET_TASKS"权限,我们就是这样做的。我不认为,标准主义被认为是危险的,因为它被许多应用程序所使用。但是,也许一方面是日志服务,另一方面是GET_TASKS权限的组合,虽然在我们的情况下并不危险,但在Google触发了一些自动规则。
为了解决这个问题,我们只是删除了critterism和所有相关的权限要求,因为它对我们来说不是很有用。