付费安卓应用的服务器端用户身份验证

Posted

技术标签:

【中文标题】付费安卓应用的服务器端用户身份验证【英文标题】:Server-side user auth for paid android app 【发布时间】:2018-02-06 03:24:01 【问题描述】:

我正在开发一款适用于 Daydream 的 android 应用,该应用已付费且没有登录屏幕。

我想模拟我在为 Oculus 开发时使用的用户身份验证流程,概述了 here,您首先进行本地许可证检查,然后使用返回的数据和 userId 从我的后端进行服务器端检查通过 http/REST 访问 Google Play。

我似乎无法找到一种方法来获取 Android 应用程序的用户 ID(或令牌),以便在不登录的情况下进行此检查。我要走的当前路径是使用here 概述的非常过时的许可证验证库(用于本地检查),然后使用Google Play Developer API 执行服务器检查。

这是解决这个问题的正确方法,还是有更好/更现代的方法来做到这一点?一个可能模仿 Oculus 流的更多?此外,我想限制我需要向用户请求的权限,因为在 Daydream VR 中,用户现在必须取下头显才能接受权限。

谢谢

【问题讨论】:

【参考方案1】:

检查Using OAuth 2.0 for Web Server Applications,因为它是关于在服务器端处理 OAuth。您展示的流程也有点类似于Web server applications 图。

【讨论】:

以上是关于付费安卓应用的服务器端用户身份验证的主要内容,如果未能解决你的问题,请参考以下文章

服务器端应用程序的 Google+ 登录身份验证不起作用

Twitter Fabric 服务器端身份验证

在 Chrome 扩展程序中使用 Google 帐户进行服务器端身份验证

使用 Cookie 进行 Blazor 服务器端身份验证

将服务器端和客户端身份验证与 WebAPI 相结合

在 NextJS 中刷新用户身份验证服务器端?