1.本发明涉及临床研究行业帐号信息管理技术领域,尤其涉及一种帐号信息处理方法、装置、计算机设备和计算机可读存储介质。
背景技术:2.临床研究行业是一个大的生态圈,主要成员有药厂、医院、医生、从业人员以及运营人员等,在实际研究过程中他们相互之间有着密切的联系,而且研究数据的打通是十分有必要的,那么就需要有行之有效的方案去解决这个问题。
3.拿网上预约来说,使用者只需提供一个手机号作为个人唯一标识,随后进行认证、预约、查询报告单等。功能比较简单,其流程可以描述为:用户发起访问请求,通过校验用户手机号查询该用户是否存在,若该用户存在,则确定信息认证成功,执行后续的登录或访问系统等操作,若该用户不存在,则需要进行注册或授权后再执行后续的登录或访问系统等操作。该预约流程涉及的东西虽然不多,但是在预约的领域做到了闭环,维护了该领域帐号相关的数据,不依赖其它系统,灵活性较好,可满足类似业务性不强的系统。
4.虽然现有技术也能满足绝大数的需求,但是在设计之初都是设计成一个个独立的系统,属于本领域的不同应用就要进行重复的认证及注册。临床研究行业就是这样,随着业务的扩展,帐号越来越多,越来越不能满足一些特殊的场景,如若干个应用实现应用间的帐号授权、单点登录、增加若干种登录方式、药厂和医院的数据访问等,并且对于这样的情况一般的做法是做数据同步、通过接口授权访问数据或者纵向扩展表结构,虽然技术实现是比较简单,但是会造成数据的实时性、可靠性较低,成本较高,因此亟需一个帐号统一的管理方案,在源头将数据访问问题解决掉,从而进行安全灵活地扩展业务。
5.目前,针对相关技术中临床研究行业通过数据同步、通过接口授权访问数据或者纵向扩展表结构等方式实现多个应用系统间的帐号统一,会造成数据实时性、可靠性较低的问题,尚未提出有效的解决方案。
技术实现要素:6.本技术的目的是针对现有技术中的不足,提供一种帐号信息处理方法、装置、计算机设备和计算机可读存储介质,以至少解决相关技术中临床研究行业通过数据同步、通过接口授权访问数据或者纵向扩展表结构等方式实现多个应用系统间的帐号统一,会造成数据实时性、可靠性较低的问题。
7.为实现上述目的,本技术采取的技术方案是:
8.第一方面,本技术实施例提供了一种帐号信息处理方法,包括:
9.用户在第一客户端进行帐号注册时,所述第一客户端调用帐号中心的帐号注册接口将用户的帐号信息存储在所述帐号中心;
10.用户在第二客户端进行帐号登录时,所述第二客户端调用所述帐号中心的帐号鉴权接口对所述用户的帐号信息进行验证;
11.若所述用户的帐号信息验证通过,则所述帐号中心判断所述用户的帐号信息与所述第二客户端之间是否具有绑定关系;
12.若所述用户的帐号信息与所述第二客户端之间具有绑定关系,则所述帐号中心向所述第二客户端返回用于指示允许用户进行帐号登录的指示信息;
13.若所述用户的帐号信息验证未通过或者所述用户的帐号信息与所述第二客户端之间没有绑定关系,则所述帐号中心向所述第二客户端返回用于指示禁止用户进行帐号登录的指示信息。
14.在其中一些实施例中,在将用户的帐号信息存储在所述帐号中心之后,所述方法还包括:
15.目标客户端调用所述帐号中心的验证码接口进行验证码验证,并在验证码验证通过后调用所述帐号中心的绑定或解绑接口,建立或者解除所述目标客户端与所述用户的帐号信息之间的绑定关系。
16.在其中一些实施例中,所述第一客户端调用帐号中心的帐号注册接口将用户的帐号信息存储在所述帐号中心包括:
17.所述第一客户端调用所述帐号中心的验证码接口进行验证码验证,并在验证码验证通过后调用所述帐号中心的帐号注册接口进行帐号注册,将所述用户的帐号信息存储在所述帐号中心;或者
18.所述第一客户端直接调用所述帐号中心的帐号注册接口进行帐号注册,将所述用户的帐号信息存储在所述帐号中心。
19.在其中一些实施例中,所述第二客户端调用所述帐号中心的帐号鉴权接口对所述用户的帐号信息进行验证包括:
20.所述第二客户端调用所述帐号中心的验证码接口进行验证码验证,并在验证码验证通过后调用所述帐号中心的帐号鉴权接口对所述用户的帐号信息进行验证;或者
21.所述第二客户端直接调用所述帐号中心的帐号鉴权接口对所述用户的帐号信息进行验证。
22.在其中一些实施例中,所述帐号中心包括:
23.应用访问层,用于客户端访问所述帐号中心;
24.接口层,用于所述帐号中心提供多种接口供客户端调用;
25.业务逻辑层,用于所述帐号中心对所述用户的帐号信息进行处理;
26.数据层,用于所述帐号中心进行数据存储。
27.在其中一些实施例中,所述帐号中心对所述用户的帐号信息进行处理包括:
28.在对所述用户的帐号信息进行验证且验证通过后,生成第一令牌,并将所述第一令牌及所述第一令牌的数据信息进行存储;
29.在所述第一令牌的有效期内,若用户进行重复登录,则重新生成第二令牌,并将重新生成的所述第二令牌替换已经存储的所述第一令牌。
30.第二方面,本技术实施例提供了一种帐号信息处理装置,包括:
31.注册单元,用于用户在第一客户端进行帐号注册时,所述第一客户端调用帐号中心的帐号注册接口将用户的帐号信息存储在所述帐号中心;
32.登录单元,用于用户在第二客户端进行帐号登录时,所述第二客户端调用所述帐
号中心的帐号鉴权接口对所述用户的帐号信息进行验证;
33.判断单元,用于若所述用户的帐号信息验证通过,则所述帐号中心判断所述用户的帐号信息与所述第二客户端之间是否具有绑定关系;
34.允许登录单元,用于若所述用户的帐号信息与所述第二客户端之间具有绑定关系,则所述帐号中心向所述第二客户端返回用于指示允许用户进行帐号登录的指示信息;
35.禁止登录单元,用于若所述用户的帐号信息验证未通过或者所述用户的帐号信息与所述第二客户端之间没有绑定关系,则所述帐号中心向所述第二客户端返回用于指示禁止用户进行帐号登录的指示信息。
36.在其中一些实施例中,所述装置还包括:
37.绑定解绑单元,用于在将用户的帐号信息存储在所述帐号中心之后,目标客户端调用所述帐号中心的验证码接口进行验证码验证,并在验证码验证通过后调用所述帐号中心的绑定或解绑接口,建立或者解除所述目标客户端与所述用户的帐号信息之间的绑定关系。
38.第三方面,本技术实施例提供了一种计算机设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述第一方面所述的帐号信息处理方法。
39.第四方面,本技术实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述第一方面所述的帐号信息处理方法。
40.本技术采用以上技术方案,与现有技术相比,本技术实施例提供的帐号信息处理方法,通过用户在第一客户端进行帐号注册时,所述第一客户端调用帐号中心的帐号注册接口将用户的帐号信息存储在所述帐号中心;用户在第二客户端进行帐号登录时,所述第二客户端调用所述帐号中心的帐号鉴权接口对所述用户的帐号信息进行验证;若所述用户的帐号信息验证通过,则所述帐号中心判断所述用户的帐号信息与所述第二客户端之间是否具有绑定关系;若所述用户的帐号信息与所述第二客户端之间具有绑定关系,则所述帐号中心向所述第二客户端返回用于指示允许用户进行帐号登录的指示信息;若所述用户的帐号信息验证未通过或者所述用户的帐号信息与所述第二客户端之间没有绑定关系,则所述帐号中心向所述第二客户端返回用于指示禁止用户进行帐号登录的指示信息,解决了相关技术中临床研究行业通过数据同步、通过接口授权访问数据或者纵向扩展表结构等方式实现多个应用系统间的帐号统一,会造成数据实时性、可靠性较低的问题,实现了通过帐号中心对用户的帐号信息进行统一管理,用户可以使用同一个帐号信息在多个应用进行登录,有利于保障用户的帐号信息可靠性,提高用户登录应用的实时性。
41.本技术的一个或多个实施例的细节在以下附图和描述中提出,以使本技术的其他特征、目的和优点更加简明易懂。
附图说明
42.此处所说明的附图用来提供对本技术的进一步理解,构成本技术的一部分,本技术的示意性实施例及其说明用于解释本技术,并不构成对本技术的不当限定。在附图中:
43.图1是根据本技术实施例的移动终端的结构框图;
44.图2是根据本技术实施例的帐号信息处理方法的流程图;
45.图3是根据本技术实施例的帐号中心的结构示意图;
46.图4是根据本技术实施例的帐号注册流程的示意图;
47.图5是根据本技术实施例的帐号登录流程的示意图;
48.图6是根据本技术实施例的帐号与客户端进行绑定或解绑流程的示意图;
49.图7是根据本技术实施例的帐号信息处理装置的结构框图;
50.图8为根据本技术实施例的计算机设备的硬件结构示意图。
具体实施方式
51.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行描述和说明。应当理解,此处所描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。基于本技术提供的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本技术保护的范围。
52.显而易见地,下面描述中的附图仅仅是本技术的一些示例或实施例,对于本领域的普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图将本技术应用于其他类似情景。此外,还可以理解的是,虽然这种开发过程中所作出的努力可能是复杂并且冗长的,然而对于与本技术公开的内容相关的本领域的普通技术人员而言,在本技术揭露的技术内容的基础上进行的一些设计,制造或者生产等变更只是常规的技术手段,不应当理解为本技术公开的内容不充分。
53.在本技术中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本技术的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域普通技术人员显式地和隐式地理解的是,本技术所描述的实施例在不冲突的情况下,可以与其它实施例相结合。
54.除非另作定义,本技术所涉及的技术术语或者科学术语应当为本技术所属技术领域内具有一般技能的人士所理解的通常意义。本技术所涉及的“一”、“一个”、“一种”、“该”等类似词语并不表示数量限制,可表示单数或复数。本技术所涉及的术语“包括”、“包含”、“具有”以及它们任何变形,意图在于覆盖不排他的包含;例如包含了一系列步骤或模块(单元)的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可以还包括没有列出的步骤或单元,或可以还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。本技术所涉及的“连接”、“相连”、“耦接”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电气的连接,不管是直接的还是间接的。本技术所涉及的“多个”是指两个或两个以上。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,“a和/或b”可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。本技术所涉及的术语“第一”、“第二”、“第三”等仅仅是区别类似的对象,不代表针对对象的特定排序。
55.本实施例提供了一种移动终端。图1是根据本技术实施例的移动终端的结构框图。如图1所示,该移动终端包括:射频(radio frequency,简称为rf)电路110、存储器120、输入单元130、显示单元140、传感器150、音频电路160、无线保真(wireless fidelity,简称为wifi)模块170、处理器180、以及电源190等部件。本领域技术人员可以理解,图1中示出的移
动终端结构并不构成对移动终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
56.下面结合图1对移动终端的各个构成部件进行具体的介绍:
57.rf电路110可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器180处理;另外,将设计上行的数据发送给基站。通常,rf电路包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(low noise amplifier,简称为lna)、双工器等。此外,rf电路110还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(global system of mobile communication,简称为gsm)、通用分组无线服务(general packet radio service,简称为gprs)、码分多址(code division multiple access,简称为cdma)、宽带码分多址(wideband code division multiple access,简称为wcdma)、长期演进(long term evolution,简称为lte)、电子邮件、短消息服务(short messaging service,简称为sms)等。
58.存储器120可用于存储软件程序以及模块,处理器180通过运行存储在存储器120的软件程序以及模块,从而执行移动终端的各种功能应用以及数据处理。存储器120可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据移动终端的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器120可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
59.输入单元130可用于接收输入的数字或字符信息,以及产生与移动终端的用户设置以及功能控制有关的键信号输入。具体地,输入单元130可包括触控面板131以及其他输入设备132。触控面板131,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板131上或在触控面板131附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板131可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器180,并能接收处理器180发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板131。除了触控面板131,输入单元130还可以包括其他输入设备132。具体地,其他输入设备132可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
60.显示单元140可用于显示由用户输入的信息或提供给用户的信息以及移动终端的各种菜单。显示单元140可包括显示面板141,可选的,可以采用液晶显示器(liquid crystal display,简称为lcd)、有机发光二极管(organic light
‑
emitting diode,简称为oled)等形式来配置显示面板141。进一步的,触控面板131可覆盖显示面板141,当触控面板131检测到在其上或附近的触摸操作后,传送给处理器180以确定触摸事件的类型,随后处理器180根据触摸事件的类型在显示面板141上提供相应的视觉输出。虽然在图1中,触控面板131与显示面板141是作为两个独立的部件来实现移动终端的输入和输入功能,但是在某些实施例中,可以将触控面板131与显示面板141集成而实现移动终端的输入和输出功能。
61.移动终端还可包括至少一种传感器150,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板141的亮度,接近传感器可在移动终端移动到耳边时,关闭显示面板141和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别移动终端姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于移动终端还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
62.音频电路160中的扬声器161,传声器162可提供用户与移动终端之间的音频接口。音频电路160可将接收到的音频数据转换后的电信号,传输到扬声器161,由扬声器161转换为声音信号输出;另一方面,传声器162将收集的声音信号转换为电信号,由音频电路160接收后转换为音频数据,再将音频数据输出处理器180处理后,经rf电路110以发送给比如另一移动终端,或者将音频数据输出至存储器120以便进一步处理。
63.wifi属于短距离无线传输技术,移动终端通过wifi模块170可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图1示出了wifi模块170,但是可以理解的是,其并不属于移动终端的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略,或者替换为其他的短距离无线传输模块,例如zigbee模块、或者wapi模块等。
64.处理器180是移动终端的控制中心,利用各种接口和线路连接整个移动终端的各个部分,通过运行或执行存储在存储器120内的软件程序和/或模块,以及调用存储在存储器120内的数据,执行移动终端的各种功能和处理数据,从而对移动终端进行整体监控。可选的,处理器180可包括一个或多个处理单元;优选的,处理器180可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器180中。
65.移动终端还包括给各个部件供电的电源190(比如电池),优选的,电源可以通过电源管理系统与处理器180逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
66.尽管未示出,移动终端还可以包括摄像头、蓝牙模块等,在此不再赘述。
67.在本实施例中,处理器180被配置为:用户在第一客户端进行帐号注册时,所述第一客户端调用帐号中心的帐号注册接口将用户的帐号信息存储在所述帐号中心;用户在第二客户端进行帐号登录时,所述第二客户端调用所述帐号中心的帐号鉴权接口对所述用户的帐号信息进行验证;若所述用户的帐号信息验证通过,则所述帐号中心判断所述用户的帐号信息与所述第二客户端之间是否具有绑定关系;若所述用户的帐号信息与所述第二客户端之间具有绑定关系,则所述帐号中心向所述第二客户端返回用于指示允许用户进行帐号登录的指示信息;若所述用户的帐号信息验证未通过或者所述用户的帐号信息与所述第二客户端之间没有绑定关系,则所述帐号中心向所述第二客户端返回用于指示禁止用户进行帐号登录的指示信息。
68.在其中一些实施例中,处理器180还被配置为:在将用户的帐号信息存储在所述帐号中心之后,目标客户端调用所述帐号中心的验证码接口进行验证码验证,并在验证码验
证通过后调用所述帐号中心的绑定或解绑接口,建立或者解除所述目标客户端与所述用户的帐号信息之间的绑定关系。
69.在其中一些实施例中,处理器180还被配置为:所述第一客户端调用所述帐号中心的验证码接口进行验证码验证,并在验证码验证通过后调用所述帐号中心的帐号注册接口进行帐号注册,将所述用户的帐号信息存储在所述帐号中心;或者所述第一客户端直接调用所述帐号中心的帐号注册接口进行帐号注册,将所述用户的帐号信息存储在所述帐号中心。
70.在其中一些实施例中,处理器180还被配置为:所述第二客户端调用所述帐号中心的验证码接口进行验证码验证,并在验证码验证通过后调用所述帐号中心的帐号鉴权接口对所述用户的帐号信息进行验证;或者所述第二客户端直接调用所述帐号中心的帐号鉴权接口对所述用户的帐号信息进行验证。
71.在其中一些实施例中,处理器180还被配置为:在对所述用户的帐号信息进行验证且验证通过后,生成第一令牌,并将所述第一令牌及所述第一令牌的数据信息进行存储;
72.在所述第一令牌的有效期内,若用户进行重复登录,则重新生成第二令牌,并将重新生成的所述第二令牌替换已经存储的所述第一令牌。
73.本实施例提供了一种帐号信息处理方法。图2是根据本技术实施例的帐号信息处理方法的流程图,如图2所示,该流程包括如下步骤:
74.步骤s201,用户在第一客户端进行帐号注册时,所述第一客户端调用帐号中心的帐号注册接口将用户的帐号信息存储在所述帐号中心;
75.步骤s202,用户在第二客户端进行帐号登录时,所述第二客户端调用所述帐号中心的帐号鉴权接口对所述用户的帐号信息进行验证;
76.步骤s203,若所述用户的帐号信息验证通过,则所述帐号中心判断所述用户的帐号信息与所述第二客户端之间是否具有绑定关系;
77.步骤s204,若所述用户的帐号信息与所述第二客户端之间具有绑定关系,则所述帐号中心向所述第二客户端返回用于指示允许用户进行帐号登录的指示信息;
78.步骤s205,若所述用户的帐号信息验证未通过或者所述用户的帐号信息与所述第二客户端之间没有绑定关系,则所述帐号中心向所述第二客户端返回用于指示禁止用户进行帐号登录的指示信息。
79.通过上述步骤,通过用户在第一客户端进行帐号注册时,所述第一客户端调用帐号中心的帐号注册接口将用户的帐号信息存储在所述帐号中心;用户在第二客户端进行帐号登录时,所述第二客户端调用所述帐号中心的帐号鉴权接口对所述用户的帐号信息进行验证;若所述用户的帐号信息验证通过,则所述帐号中心判断所述用户的帐号信息与所述第二客户端之间是否具有绑定关系;若所述用户的帐号信息与所述第二客户端之间具有绑定关系,则所述帐号中心向所述第二客户端返回用于指示允许用户进行帐号登录的指示信息;若所述用户的帐号信息验证未通过或者所述用户的帐号信息与所述第二客户端之间没有绑定关系,则所述帐号中心向所述第二客户端返回用于指示禁止用户进行帐号登录的指示信息,解决了相关技术中临床研究行业通过数据同步、通过接口授权访问数据或者纵向扩展表结构等方式实现多个应用系统间的帐号统一,会造成数据实时性、可靠性较低的问题,实现了通过帐号中心对用户的帐号信息进行统一管理,用户可以使用同一个帐号信息
在多个应用进行登录,有利于保障用户的帐号信息可靠性,提高用户登录应用的实时性。
80.本技术实施例的帐号信息统一管理是由帐号中心执行的。
81.在其中一些实施例中,如图3所示,帐号中心架构可以包括:
82.应用访问层,用于客户端访问所述帐号中心。应该访问层可以采用横向扩展方式,设置代理负载,其中,代理负载可以采用nginx(高性能http和反向代理web服务器)提供的反向代理和负载均衡能力,保证系统的高可用性。
83.接口层,用于所述帐号中心提供多种接口供客户端调用。接口层所包括的多种接口可以包括但并不限于:验证码接口、帐号注册接口、帐号鉴权接口、绑定解绑接口、帐号信息查询接口、帐号信息维护接口、加解密接口等。在该接口层还可以进行应用密钥、参数加密、帐号token验证的统一认证。
84.业务逻辑层,用于所述帐号中心对所述用户的帐号信息进行处理。可选地,所述帐号中心对所述用户的帐号信息进行处理可以包括但并不限于以下内容:
85.(1)帐号注册:如图4所示,帐号注册可以分为主动注册和代为注册两种模式。这两种注册模式的最终目的都是为了将用户的帐号信息存储到帐号中心,两者不同的是:主动注册需要进行验证码的校验,只有通过了才可以进行注册请求;代为注册是一种特殊的帐号注册方式,符合业务场景的帐号可以直接将帐号(符合帐号规则)的注册信息封装好并调用帐号注册接口即可。
86.(2)帐号登录:如图5所示,登录过程分为密码登录和验证码登录两种,其中密码登录直接调用帐号鉴权接口进行帐号信息验证;验证码登录分两步,先发送验证码,进行验证码验证;验证码验证通过后再调用帐号鉴权接口进行帐号信息验证。
87.(3)帐号与客户端进行绑定或解绑:如图6所示,帐号与客户端的绑定和解绑基本流程是一样的,都是先进行验证码验证,验证码验证通过后再调用绑定解绑接口建立或者解除客户端与用户的帐号信息之间的绑定关系。绑定适用于帐号的授权,是指在帐号中心中对某个用户的帐号信息与某个应用客户端之间建立关联关系,这种建立关联关系的操作称作为绑定,绑定后的帐号就可以登录对应的客户端了;解绑则是相反的操作,适用于帐号的解除授权,是指在帐号中心解除某个用户的帐号与某个客户端的关联关系,解绑之后的帐号再使用帐号登录时就无法获取令牌了。
88.(4)并发控制:对每个接口请求参数按照顺序进行组装并产生一个字符串,然后把该字符串放入分布式锁里进行锁定,业务处理完之后释放锁。
89.(5)验证码验证:包括图形验证码验证、短信验证码验证、邮件验证码验证等。
90.(6)规则验证:包括短信规则和登录规则。短信规则是首先校验手机号是否符合规范,其次是查询手机号短信发送次数及频率是否超限以及短信模板是否可用等,验证通过之后则继续进行后面的业务逻辑,否则就将相应的错误信息返回给接口。登录规则是首先校验登录帐号和登录密码解密加密是否成功,其次是登录的应用客户端是否存在、登录方式是否支持、客户端的登录方式对应的登录密码比对是否一致、帐号与客户端的绑定关系是否存在等,校验通过之后则进行后面的业务逻辑,否则就将相应的错误信息返回给接口。
91.(7)数据字典:发送次数限制的配置、短信发送频率配置、短信有效时长配置、枚举值配置等。
92.(8)加解密机制:对敏感信息进行加解密。
93.(9)令牌颁发:登录信息校验无问题之后,使用工具生成一个唯一的32位的字符串作为令牌,分别存储到redis(缓存数据库)和数据库(此处会有令牌数据的信息维护),最后将令牌和登录信息一起返回给接口。
94.(10)信息维护:一个帐号在令牌效期内进行重新登录时,会在重新颁发令牌时,并将前一个存放在redis(缓存数据库)和数据库数据中的令牌覆盖掉。也即:
95.所述帐号中心对所述用户的帐号信息进行处理包括:
96.在对所述用户的帐号信息进行验证且验证通过后,生成第一令牌,并将所述第一令牌及所述第一令牌的数据信息进行存储;
97.在所述第一令牌的有效期内,若用户进行重复登录,则重新生成第二令牌,并将重新生成的所述第二令牌替换已经存储的所述第一令牌。
98.(11)优化速度:优化算法调整线程池的队列类型和核心参数提高同一时间的处理能力。
99.(12)系统日志:日志记录并存储。
100.数据层,用于所述帐号中心进行数据存储。包括数据缓存、数据持久化存储以及日志存储等。
101.基于具有上述架构的帐号中心,本技术实施例的帐号信息处理方法当用户在第一客户端进行帐号注册时,第一客户端可以调用帐号中心的帐号注册接口将用户的帐号信息存储在所述帐号中心。
102.可选地,所述第一客户端调用帐号中心的帐号注册接口将用户的帐号信息存储在所述帐号中心可以包括:
103.所述第一客户端调用所述帐号中心的验证码接口进行验证码验证,并在验证码验证通过后调用所述帐号中心的帐号注册接口进行帐号注册,将所述用户的帐号信息存储在所述帐号中心;或者
104.所述第一客户端直接调用所述帐号中心的帐号注册接口进行帐号注册,将所述用户的帐号信息存储在所述帐号中心。
105.也即用户可以通过主动注册或代为注册两种方式进行帐号注册。
106.当帐号中心中存储有用户的帐号信息之后,可以根据实际需求或者目标客户端的请求建立或解除用户的帐号信息与目标客户端之间的绑定关系,具体地:
107.在将用户的帐号信息存储在所述帐号中心之后,所述方法还包括:
108.目标客户端调用所述帐号中心的验证码接口进行验证码验证,并在验证码验证通过后调用所述帐号中心的绑定解绑接口,建立或者解除所述目标客户端与所述用户的帐号信息之间的绑定关系。
109.需要说明的是,此处的目标客户端可以为任意一个客户端,包括但并不限于第一客户端或者第二客户端等。
110.帐号中心中存储有目标客户端与用户的帐号中心之间的绑定关系之后,用户在目标客户端进行登录时,可以根据该绑定关系对登录进行验证。
111.可选地,用户在第二客户端进行帐号登录时,所述第二客户端调用所述帐号中心的帐号鉴权接口对所述用户的帐号信息进行验证可以包括:
112.所述第二客户端调用所述帐号中心的验证码接口进行验证码验证,并在验证码验
证通过后调用所述帐号中心的帐号鉴权接口对所述用户的帐号信息进行验证;或者
113.所述第二客户端直接调用所述帐号中心的帐号鉴权接口对所述用户的帐号信息进行验证。
114.也即可以通过帐号验证方式或验证码验证方式对登录过程进行验证。
115.用户在第一客户端注册帐号信息之后,又在第二客户端进行登录,若用户的账户信息验证通过,则需要进一步判断所述用户的帐号信息与所述第二客户端之间是否具有绑定关系;若所述用户的帐号信息与所述第二客户端之间具有绑定关系,则所述帐号中心向所述第二客户端返回用于指示允许用户进行帐号登录的指示信息;若所述用户的帐号信息验证未通过或者所述用户的帐号信息与所述第二客户端之间没有绑定关系,则所述帐号中心向所述第二客户端返回用于指示禁止用户进行帐号登录的指示信息。
116.本技术实施例的帐号信息统一管理是由帐号中心执行的。用户在不同的应用端进行注册或登录时,应用端都会调用帐号中心提供的对应接口(例如帐号注册接口,帐号鉴权接口,短信邮件验证码接口等)进行帐号信息管理。
117.为了实现在多个客户端间对同一个用户的帐号信息进行统一管理,那么用户在第一个客户端注册帐号信息之后,帐号中心中会存储有该用户的帐号信息,如果用户再登录第二个客户端的时候,在第二客户端内使用帐号信息直接登录,然后第二个客户端调用帐号中心的帐号鉴权接口直接进行帐号信息校验吗,这样的话就能实现一个用户使用同一个帐号信息在多个客户端中使用。
118.本技术的技术效果是临床研究行业帐号信息一体化,面对行业内各种各样的应用,统一入口管理帐号,客户端开发者无需关心各种类型帐号的处理逻辑,同时也解耦了客户端中的复杂逻辑,使之更专注于自身的业务。
119.需要说明的是,在上述流程中或者附图的流程图中示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
120.本实施例提供了一种帐号信息处理装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”、“单元”、“子单元”等可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
121.图7是根据本技术实施例的帐号信息处理装置的结构框图,如图7所示,该装置包括:
122.注册单元71,用于用户在第一客户端进行帐号注册时,所述第一客户端调用帐号中心的帐号注册接口将用户的帐号信息存储在所述帐号中心;
123.登录单元72,用于用户在第二客户端进行帐号登录时,所述第二客户端调用所述帐号中心的帐号鉴权接口对所述用户的帐号信息进行验证;
124.判断单元73,用于若所述用户的帐号信息验证通过,则所述帐号中心判断所述用户的帐号信息与所述第二客户端之间是否具有绑定关系;
125.允许登录单元74,用于若所述用户的帐号信息与所述第二客户端之间具有绑定关系,则所述帐号中心向所述第二客户端返回用于指示允许用户进行帐号登录的指示信息;
126.禁止登录单元75,用于若所述用户的帐号信息验证未通过或者所述用户的帐号信
息与所述第二客户端之间没有绑定关系,则所述帐号中心向所述第二客户端返回用于指示禁止用户进行帐号登录的指示信息。
127.在其中一些实施例中,所述装置还包括:
128.绑定解绑单元,用于在将用户的帐号信息存储在所述帐号中心之后,目标客户端调用所述帐号中心的验证码接口进行验证码验证,并在验证码验证通过后调用所述帐号中心的绑定或解绑接口,建立或者解除所述目标客户端与所述用户的帐号信息之间的绑定关系。
129.在其中一些实施例中,所述注册单元71包括:
130.第一注册模块,用于所述第一客户端调用所述帐号中心的验证码接口进行验证码验证,并在验证码验证通过后调用所述帐号中心的帐号注册接口进行帐号注册,将所述用户的帐号信息存储在所述帐号中心;或者
131.第二注册模块,用于所述第一客户端直接调用所述帐号中心的帐号注册接口进行帐号注册,将所述用户的帐号信息存储在所述帐号中心。
132.在其中一些实施例中,所述登录单元72包括:
133.第一登录模块,用于所述第二客户端调用所述帐号中心的验证码接口进行验证码验证,并在验证码验证通过后调用所述帐号中心的帐号鉴权接口对所述用户的帐号信息进行验证;或者
134.第二登录模块,用于所述第二客户端直接调用所述帐号中心的帐号鉴权接口对所述用户的帐号信息进行验证。
135.在其中一些实施例中,所述帐号中心包括:
136.应用访问层,用于客户端访问所述帐号中心;
137.接口层,用于所述帐号中心提供多种接口供客户端调用;
138.业务逻辑层,用于所述帐号中心对所述用户的帐号信息进行处理;
139.数据层,用于所述帐号中心进行数据存储。
140.在其中一些实施例中,所述帐号中心对所述用户的帐号信息进行处理包括:
141.在对所述用户的帐号信息进行验证且验证通过后,生成第一令牌,并将所述第一令牌及所述第一令牌的数据信息进行存储;
142.在所述第一令牌的有效期内,若用户进行重复登录,则重新生成第二令牌,并将重新生成的所述第二令牌替换已经存储的所述第一令牌。
143.需要说明的是,上述各个模块可以是功能模块也可以是程序模块,既可以通过软件来实现,也可以通过硬件来实现。对于通过硬件来实现的模块而言,上述各个模块可以位于同一处理器中;或者上述各个模块还可以按照任意组合的形式分别位于不同的处理器中。
144.实施例提供了一种计算机设备。结合本技术实施例帐号信息处理方法可以由计算机设备来实现。图8为根据本技术实施例的计算机设备的硬件结构示意图。
145.计算机设备可以包括处理器81以及存储有计算机程序指令的存储器82。
146.具体地,上述处理器81可以包括中央处理器(cpu),或者特定集成电路(application specific integrated circuit,简称为asic),或者可以被配置成实施本技术实施例的一个或多个集成电路。
147.其中,存储器82可以包括用于数据或指令的大容量存储器。举例来说而非限制,存储器82可包括硬盘驱动器(hard disk drive,简称为hdd)、软盘驱动器、固态驱动器(solid state drive,简称为ssd)、闪存、光盘、磁光盘、磁带或通用串行总线(universal serial bus,简称为usb)驱动器或者两个或更多个以上这些的组合。在合适的情况下,存储器82可包括可移除或不可移除(或固定)的介质。在合适的情况下,存储器82可在数据处理装置的内部或外部。在特定实施例中,存储器82是非易失性(non
‑
volatile)存储器。在特定实施例中,存储器82包括只读存储器(read
‑
only memory,简称为rom)和随机存取存储器(random access memory,简称为ram)。在合适的情况下,该rom可以是掩模编程的rom、可编程rom(programmable read
‑
only memory,简称为prom)、可擦除prom(erasable programmable read
‑
only memory,简称为eprom)、电可擦除prom(electrically erasable programmable read
‑
only memory,简称为eeprom)、电可改写rom(electrically alterable read
‑
only memory,简称为earom)或闪存(flash)或者两个或更多个以上这些的组合。在合适的情况下,该ram可以是静态随机存取存储器(static random
‑
access memory,简称为sram)或动态随机存取存储器(dynamic random access memory,简称为dram),其中,dram可以是快速页模式动态随机存取存储器(fast page mode dynamic random access memory,简称为fpmdram)、扩展数据输出动态随机存取存储器(extended date out dynamic random access memory,简称为edodram)、同步动态随机存取内存(synchronous dynamic random
‑
access memory,简称sdram)等。
148.存储器82可以用来存储或者缓存需要处理和/或通信使用的各种数据文件,以及处理器81所执行的可能的计算机程序指令。
149.处理器81通过读取并执行存储器82中存储的计算机程序指令,以实现上述实施例中的任意一种帐号信息处理方法。
150.在其中一些实施例中,计算机设备还可包括通信接口83和总线80。其中,如图8所示,处理器81、存储器82、通信接口83通过总线80连接并完成相互间的通信。
151.通信接口83用于实现本技术实施例中各模块、装置、单元和/或设备之间的通信。通信接口83还可以实现与其他部件例如:外接设备、图像/数据采集设备、数据库、外部存储以及图像/数据处理工作站等之间进行数据通信。
152.总线80包括硬件、软件或两者,将计算机设备的部件彼此耦接在一起。总线80包括但不限于以下至少之一:数据总线(data bus)、地址总线(address bus)、控制总线(control bus)、扩展总线(expansion bus)、局部总线(local bus)。举例来说而非限制,总线80可包括图形加速接口(accelerated graphics port,简称为agp)或其他图形总线、增强工业标准架构(extended industry standard architecture,简称为eisa)总线、前端总线(front side bus,简称为fsb)、超传输(hyper transport,简称为ht)互连、工业标准架构(industry standard architecture,简称为isa)总线、无线带宽(infiniband)互连、低引脚数(low pin count,简称为lpc)总线、存储器总线、微信道架构(micro channel architecture,简称为mca)总线、外围组件互连(peripheral component interconnect,简称为pci)总线、pci
‑
express(pci
‑
x)总线、串行高级技术附件(serial advanced technology attachment,简称为sata)总线、视频电子标准协会局部(video electronics standards association local bus,简称为vlb)总线或其他合适的总线或者两个或更多
个以上这些的组合。在合适的情况下,总线80可包括一个或多个总线。尽管本技术实施例描述和示出了特定的总线,但本技术考虑任何合适的总线或互连。
153.另外,结合上述实施例中的帐号信息处理方法,本技术实施例可提供一种计算机可读存储介质来实现。该计算机可读存储介质上存储有计算机程序指令;该计算机程序指令被处理器执行时实现上述实施例中的任意一种帐号信息处理方法。
154.以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
155.以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术专利的保护范围应以所附权利要求为准。