(以下使用的“ Superpoints”和“ Megashop”是虚假的公司名称)
我正在使用Firebase Auth对我的(Android)应用(“超级积分”)中的用户进行身份验证。我的用户可以通过使用我的应用程序赚取积分,以后可以在购买商品时花费。
我想通过以下方式与合作伙伴(“ Megashop”)集成:
- 爱丽丝在其Android手机上打开“超级积分”应用。
- 她在应用中点击“ Megashop广告系列”。
- superpoints.megashop.com的Web浏览器或Web视图(对我而言都合适)打开。打开的页面上有一个按钮,例如“使用Superpoints帐户登录”。
- Alice单击“使用Superpoints帐户登录”并提供她的凭据(可以是电子邮件+密码,使用电话号码登录,使用Google帐户登录)。
- 系统检查我的用户数据库中是否存在Alice的帐户,并将响应与Alice的Superpoints会员ID和她的余额一起发送回Megashop(例如:“ {memberId:100500,积分:42}”)。
- 爱丽丝(Alice)在Megashop购买商品之后,他们的结帐挂钩向HTTPS端点发送了一个云功能请求,该功能会将一定数量的点(例如250点)添加到爱丽丝的余额中(例如https://app.superpoints.com/accrual?partner=megashop&memberId=100500&points=250)。 / li>
在我的应用程序的网站上,我使用FirebaseUI Auth进行身份验证,在我也使用FirebaseUI(Android的库)的应用程序中。
现在终于有了问题:如何在第三方站点上对我的用户进行身份验证?最佳做法是什么?我应该为第三方构建某种网关,还是有一种更简单的方法?