基于自然人信息的统一账户模型及统一认证体系研究

2023-03-22 07:34李峰王柯童贞理
计算机应用文摘·触控 2023年5期

李峰 王柯 童贞理

关键词:自然人;统一账户模型;认证体系

1引言

三户模型是电信业务系统普遍使用的模型,是其运营模式、业务需求、产品设计的基础。三户模型包括客户、用户、账户,其中客户是社会领域的实体,一般是一个自然人或企业等。用户是业务领域的实体,是产品的使用者,一个用户通过唯一的用户标识来确定,一个客户可以对应多个用户。账户是资金领域的实体,一个客户可以拥有多个账户。三户之间通过错综复杂的规则约束建立一对一、一对多或多对一的映射关系。其中,用户信息描述一个用户使用电信业务的业务信息,只有使用某运营商的业务,该运营商才存有此用户信息,因此天然具有封闭性。电信运营商基于现有号码的业务运营模式,在开放的互联网环境下,弊端愈发明显,尤其是其天生具有的封闭性。如何整合产业链优势,聚合各方的资源禀赋形成优势互补,在传统电信业务需求的基础上推动电信运营模式向平台化、生态化运营模式转变,满足人们日益增长的多模态、多维度的信息生活需求,成为電信运营商业务模式发展方向的研究热点。

2自然人统一账户模型

在基于自然人的统一账户模型设计中,可以将自然人信息分为基本信息、扩展信息、预留信息。基本信息涵盖自然人下的基本客户资料信息,包含客户名、地址、邮政编码、性别、年龄、职业、证件号码等信息,是自然存在的信息。扩展信息包括除基本信息外扩展的信息,预留信息为自然人在不同生态企业中的业务使用信息。其中,证件号码是唯一标识信息,是自然人唯一身份代表。建立自然人统一账户,该账户与自然人身份标识一一对应,是自然人在系统账户体系中的唯一标识。在自然人统一账户下,根据不同的账户用途,采用聚类的方法,划分子账户,如会员账户、积分账户、权益账户、通信账户、金融账户,为扩展方便,可保留多个扩展账户。在每一类子账户下面,可以根据使用的不同生态合作企业的业务或服务,建立多个该类子账户下的孙账户,如图1所示。

自然人统一账户模型中.在同一层内各个账户相互独立,在孙账户层内,通过规则约定不同孙账户的互访关系。针对所有账户,按照逐层归属,统一于自然人统一账户下。通过自然人统一账户,可以下钻到该自然人的通信账户;同理,通过该自然人的通信账户,可回溯到其自然人统一账户,通过统一账户,可横向联系到其某一权益账户。在子账户层,不同的账户代表不同的资源类型,分别管理各种资源类型,在孙账户层,通过构建账户账本,分管同类账户不同账本基本信息,构建对应的账户子类组合,方便归集与快速锁定。运营商传统三户模型中的客户可对应身份标识层,用户和账户可合并归于孙账户层中的某一通信账户。

3统一认证体系

通过对自然人统一账户模型的研究,可以看出一个自然人在其社会活动中所使用的业务或服务的提供者位于自然人统一账户模型中其孙账户层的某一点。比如,一个自然人使用某会员并享受其积分时,在其自然人统一账户模型中的会员账户和积分账户分类下,均会建立其会员账户和积分账户。自然人使用的服务和产品与提供此类产品和服务的企业密切相关,自然人使用的服务和产品越多,在其自然人统一账户模型中人驻的生态企业越多,应用生态环境就越丰富。随之带来另外一个重要问题,即不同企业的应用,其鉴权认证方式不一致,这就导致自然人在登录不同企业应用时,需要使用不同的鉴权认证方式,效率极为低下。因此,为妥善解决此类问题,在自然人统一账户模型的基础上,有必要建立统一认证体系以解决在自然人统一账户应用生态圈内,多认证体系并存的前提下,采用统一的认证服务规则,从而实现各应用之间相互信任并依托其进行访问控制的用户认证服务体系。

3.1统一认证体系模块设计

统一认证体系包括统一注册管理、统一认证管理、统一鉴权管理和统一授权管理四大模块,生成数字票据,实现多应用系统间单点登录、认证鉴权。其中,统一注册管理包括实名认证注册、手机注册、邮箱注册、第三方授权注册等多种注册方式;统一认证管理包括实名认证、手机号认证、邮箱认证等多种认证管理方式;统一鉴权管理包括身份鉴权和访问鉴权。基于token校验、权限控制规则等方式确认访问方身份,限制访问方可访问和操作的资源:统一授权管理包括第三方授权和内部平台应用的授权。具体如图2所示。

3.2统一认证体系应用场景设计

统一认证体系根据业务运营场景建立如下4种不同的交互场景。

(1)以信任登录及认证服务为目的的统一登录认证场景,适用于统一账户生态接人应用(包括支撑不具备认证体系的第三方)使用统一账户提供的接口或登录页面完成用户认证。

(2)以统一账户鉴权规则为准的应用跳转认证场景,适用于统一账户生态接入应用间单点登录跳转的认证。

(3)基于第三方应用鉴权规则的跳转场景,适用于第三方具备自己独立的认证体系,统一账户在不影响其独立的认证体系情况下进行系统接人完成交互认证。

(4)以活体认证规则为准的实名认证场景,适用于统一账户的异网用户或不具备用户实名认证的第三方系统通过统一账户完成自然人的实名制认证[1]。

3.3统一认证体系中的登录流程

统一认证体系中登录流程主要包括:(1)自然人(用户)请求登录接人应用系统,接人应用重定向到统一账户登录页面,用户进入统一账户登录页面;(2)用户输入登录凭证(“手机号码+短信验证码”或者微信授权登录),统一账户校验登录结果通过并携带token重定向到应用登录判断页面;(3)接人应用根据携带的token,向统一账户获取本次登录用户信息,统一账户进行鉴权和授权管理将认证结果与获取的用户相关信息返回;(4)接人应用根据统一账户返回的登录用户相关信息,进行逻辑判断并返回,如图3所示。

3.4统一认证体系中的鉴权管理

统一鉴权必要的两部分包含身份鉴权和访问鉴权,通过三方身份校验和反查询规则,反向获取第三方用户数据,统一认证规则,进行token的二次加密封装,突破跨平台间的指定调用,在不影响第三方认证鉴权体系独立性的基础上实现免登录鉴权,并降低和简化了接入难度与流程。

(1)身份鉴权,即确认访问方身份,是鉴权的第一步拦截点,基于token校验、用户黑名单过滤等方式。

单点登录时,对触点应用认证的一种登录鉴权,请求根据注册的应用或平台ID,加上用户唯一标识和用户身份信息。系统根据请求返回对应的token,之后根据token进行校验回归业务,实现跨应用免登录的场景。

token数字签名的生成步骤:①将所有的系统参数按key进行字典升序排列:②将所有的参数按照步骤①的排序结果以“key+value”的形式拼接,再首尾拼接上应用密钥(appKey),得到形如“appKey+keyl+valuel+…keyn+valuen+appKey”的待签名串;③对签名串进行HmacSHA256加密,密钥为应用密钥appKey,HmacSHA256算法的签名生成。

(2)访问鉴权,对通过身份认证的访问方进行鉴权,限制访问方可访问和操作的资源。基于应用对用户设置的不限制调用限制服务,限制调用同时限制服务。采用拦截器技术构建基于应用服务的开放权限、用户账号权限、限制规则等配置拦截链,用户通过请求依次执行,实现访问鉴权控制。账户资源的使用和绑定关系的建立等,都将进行短信和公众号消息推送确认后才能进行使用[2]。

3.5统一认证体系中的授权管理

统一授权管理主要负责主账户的绑定与解绑.包括第三方授权和内部平台应用的授权。

第三方授权绑定:如微信(前置条件需要进行微信的开放平台注册和认证),用户登录采用第三方微信登录,调用微信授权页面进行授权登录,根据返回的openid进行统一账户的关联和绑定。还有一种方式是在微信中初始化页面进行静默登录,适用于微信快捷登录。QQ和微博以及其他类似的第三方授权同理。

第三方授权解绑:解绑一般由用户主动发起,授权流程同绑定授权,只是根据返回的openid和unionid进行统一账户的取消关联操作[3]。

跨平台授权:对于内部平台应用的授权,目前只在会员中心考虑,会员中心被其他应用接入请求免登时,进行应用的唯一标识与统一账户的关联和捆绑。

登出服务授权:用户在某接人方系统发起登出请求,统一账户平台接受登出申请,同日寸销毁自身管理的登录会话,并且查询所有共享该会话的其他业务系统(即已单点登录的所有业务系统),调用它们的登出接口,进行各自业务系统的会话销毁。若登出成功,则返回到用户登录页面。

3.6统一认证体系中的认证管理

统一的身份认证管理,即面向用户的实名认证、手機号认证、邮箱认证等以及面向商户的商户实体认证、银行卡认证等,作为统一账户捆绑关联的主要依据。接人统一账户体系后,用户在其他应用跳转时,由统一账户标准规范鉴权认证,通过平台ID和unionID、手机号请求接口,确定是否支持免登,若验证为同一用户,则可实现用户免登。设计思想上,同身份证,同手机,同手机号,同会员账户,同第三方openid,符合以上任一条件,均视作同一用户[4]。

(1)自动认证:即注册账号时,若发现身份信息相同的账号,则自动进行认证,自动产生通行证账号。可以代表用户身份的元素有手机号、邮箱、身份证号等。应用通过统一账户登录页面完成自然人登录认证(包含短信认证和联通网络流量手机号码识别认证),并获取自然人相关统一账户相关信息。

(2)实名认证:通过人脸识别三要素进行实名认证,通过技术手段自动执行实名认证的审核过程,可以减少甚至取消人工干预,作用于实名注册、密码重置、账户解绑等操作前置。应用通过统一账户实名制页面完成自然人的实名制认证,并获取自然人实名制相关信息。

(3)应用跳转认证:自然人(用户)在应用A登录成功后(手机号验证码),点击进入应用B,请求统一账户的认证授权;统一账户平台根据请求,进行应用A的认证,通过登记本地登录信息,返回token;应用A进行页面跳转,应用B同时传人登录的凭证token;应用B根据token进行统一账户免登录认证(获取自然人基础信息)请求;先进行应用B的认证,通过后根据token时登记的自然人登录信息生成免登码。如果直接返回到应用B对应的用户唯一标识(unionid),后续可根据需求通过免登码再次请求获取自然人(用户)的详细信息[5]。

4结束语

本文设计了一种基于自然人信息的统一账户模型,并以此为基础构建基于该模型的统一认证体系,以实现生态圈应用企业的能力聚合,在保持生态企业独立认证能力的基础上,提供一种可选的统一认证能力,满足愿意参与生态圈的各类企业快速人驻、认证,以实现用户在以其统一账户为核心的生态圈的应用和服务中直接登录使用,免去了用户重复注册、重复登录的烦琐步骤。基于自然人信息的统一账户模型继承了传统电信业务的三户模型并进行生态化扩展,帮助电信运营商实现从通信内向通信外、从通信化向数字化、从单号码运营到生态合作运营模式的转型。