APP第三方登录入口接入:Sign in with Apple(苹果登录)

4 评论 24467 浏览 21 收藏 5 分钟

近期,APP苹果版本第三方登录app都必须接入Sign in with Apple。本文仅针对此功能来做一个说明,一起来看看~

用户保护用户隐私的【Sign in with apple】登陆项,也被IOS审核纳入了新的条例中。要求所有使用 第三方登录 的 App,都 必须接入Sign in with Apple。

符合以下条件的 App,可以不接入:

  1. 使用自建账户和登录系统;
  2. 要求用户使用现有的教育或企业账户登录的教育、企业或商业类应用;
  3. 使用政府或行业支持的公民身份识别系统或电子 ID 来验证用户;
  4. 应用特定于第三方服务,用户需要使用邮箱、社交媒体或其它第三方账户才能访问其内容的应用。

已经上架的 App 需在 2020 年 4 月 前完成接入工作,新上架 App(如果支持三方登录)必须接入,负责将被拒。

针对此要求,近期我们的APP 苹果版本的第三方注册登录入口增加了此选项,下面我仅针对APP上集成该功能做说明。

首先要在APP上集成此功能,需四步完成,如下图:

首先你的APP上要有入口button,用户点击后,发起授权请求;

发起授权请求,这一步设置所要获取的用户数据,然后设置回调代理,发起授权请求;

授权验证,服务端处理返回验证结果,分为授权成功和授权失败;

特殊处理:

  1. 设备上的APP ID退出登录/切换新的账号登录;
  2. 用户在设置页面禁止APP使用苹果账号登录;

这种特殊情况的处理方式可以是唤醒APP时的判断处理,或者是APP使用过程中的时间监听。

有了上边的大致流程说明,我们来看下在APP中集成,前后端的具体交互流程:

授权过程中对应操作分两步:

  1. 苹果登录授权;
  2. 双重验证。

授权成功的回调数据分为:

  1. User ID苹果用户唯一标识符;
  2. Verification data: Identity token, code验证数据;
  3. Account information苹果用户信息;
  4. Real user indicator用于判断当前登录的苹果账号是否是一个真实用户,取值有:unsupported、unknown、likelyReal。

前端获取到回到数据后将数据传给后端,后端拿着这些数据去验证登录结果返回给前端。

前端根据后端返回结果做相应的登录结果展示。

苹果授权对应前端页面样式:

首次授权

非首次授权,点击button直接展示页面

那额外的就是就是根据各家的APP用户定义来做判断了,比如现在绝大多数APP第三方授权登录后还是需要绑定手机号,那有些不需要绑定手机号的,就直接根据第三方登录来给用户生成唯一的识别码。缺陷就是一个用户在同一个APP中可有多个账户,更换设备对用户不友好。

以上仅是个人对该集成功能的理解思路,欢迎批评指正,我们共同学习进步。

 

本文由 @酸辣土豆丝 原创发布于人人都是产品经理。未经许可,禁止转载

题图来自Unsplash,基于CC0协议

更多精彩内容,请关注人人都是产品经理微信公众号或下载App
评论
评论请登录
  1. 同是港美股证券交易的产品耶

    来自广东 回复
    1. 嘻嘻,一起加油呀

      来自上海 回复
  2. 竟然没人点赞…感谢分享,我get到知识点了。

    来自广东 回复
    1. 谢谢,一起加油呀

      来自上海 回复