Car*_*lan 5 google-app-engine android google-authentication
对于非托管域帐户的Google帐户,https://developers.google.com/identity/sign-in/android/backend-authsub返回的用户标识符始终与预期的响应匹配.UserService.getCurrentUser().getUserId()
但是,对于托管域帐户,sub标识符与来自的响应不匹配UserService.getCurrentUser().getUserId().无论用户是使用Google登录Android用户登录还是通过服务器端UserService浏览器登录,我们如何拥有托管域帐户的通用用户标识?
至于原因:我非常确定这种差异是 Google App Engine 直接使用 Google 自己的身份验证/用户帐户系统这一事实造成的,而 Identity Kit 是一个与多个 OAuth 提供商集成的单独项目。换句话说,它们是独立的项目,在某些时候只是松散地集成。
为了解决这个问题,我的建议是不要在 App Engine 上使用Google 的本机身份验证 API,而只使用Identity Toolkit Web,它当然会使用与 Android/iOS Identity 对象相同的数据和架构。就像使用任何其他 Web 应用程序一样使用 Identity Toolkit 非常简单,并且它可以在 GAE 之外移植。
如果 App Engine 创建时 Identity Toolkit 就已经存在,也许它们会自动集成,一切都会正常工作。但我发现你不能真正混合和匹配它们;你选择一个并坚持下去。
| 归档时间: |
|
| 查看次数: |
137 次 |
| 最近记录: |