一种基于邮箱地址的人员信息认证方法与系统与流程

未命名 09-02 阅读:122 评论:0


1.本发明涉及用户登录信息验证领域,尤其涉及一种基于邮箱地址的人员信息认证方法与系统。


背景技术:

2.企业之间一般经常需要提供资料给合作方,为了方便自己(系统维护或开发方)和合作方,可能会开发一套资料共享系统,通过账号密码来访问,但这样做会带来一个问题,比如当合作方的员工离职后,系统无法识别其是否离职,因此该离职员工依然可登录该资料共享系统,从而可能导致重要资料泄露。如果这个技术难点无法解决,那么将阻碍企业之间的互联互通。目前,为了解决该技术难点所采取的方法主要包括两种:
3.第一种,通过与合作方沟通来确认是否需要关闭账号,该方法较为耗时,同时存在沟通不及时或忘记沟通的情况;
4.第二种,给合作方设置管理员由他们自己负责管理相关账号,而该种方法由于不是自己的系统,合作方管理员有可能遗忘,也有可能因合作方的人员流动造成无人管理。以上两种方法都是人为操作有很大的不确定性,很可能造成重要资料泄露。
5.通过经验发现一般企业都会有一个离职流程,员工离职之后会把相应的账号和邮箱禁用(该处的账号和邮箱指的是员工在他们企业内其他系统注册的账户与邮箱,一般公司在员工入职后会分配账号(工号)和邮箱,像门禁和业务系统登录一般都是工号,工作中重要事项的沟通会使用邮箱),以保证信息安全。基于此,本发明通过验证合作方员工注册的邮箱是否有效,来登录资料共享系统,解决了现有技术中由于资料共享系统无法识别合作方登录用户是否已经离职,而导致资料容易泄露的问题。


技术实现要素:

6.为了避免资料共享系统中的资料被泄露,本发明提出了一种基于邮箱地址的人员信息认证方法,应用于第一类型企业与第二类型企业共同使用的资料共享系统,所述第一类型企业为维护或开发资料共享系统的公司,所述第二类型企业为使用资料共享系统的公司;所述方法包括步骤:
7.s1:获取前端输入的登录信息,并对其进行加密后,向后台发送包含加密后登录信息的post请求;所述加密后的登录信息包括:用户账号与加密后的登录密码;
8.s2:响应前端发送的post请求,通过解析post请求中的body数据流与header中的数据将用户账号与用户密码绑定至数据传输模型;
9.s3:对数据传输模型中的用户账号与用户密码进行基础校验,并基于通过基础校验的用户账号,向数据库获取其对应的账号详情数据模型,通过账号详情数据模型对数据传输模型中的用户账号与用户密码进行二次校验,并在校验通过后进入下一步骤;所述账号详情数据模型中包含用户注册的账号、密码、邮箱地址与人员类型;所述人员类型为第一类型企业员工或第二类型企业员工;
10.s4:判断账号详情数据模型中的人员类型是否为第二类型企业员工,若是,则根据账号详情数据模型中的邮箱地址利用smtpclient与smtp邮件发送服务器进行邮箱验证,验证通过,则登录资料共享系统。
11.进一步地,所述s2步骤中,将用户账号与用户密码绑定至数据传输模型,具体包括:
12.读取post请求中的body数据流,并将其转换为utf8格式的字符串数据;
13.读取header中content-type的值,并判断content-type的值是否为application/json,若是,则利用newtosoft.json插件将字符串数据反序列化为预先定义的数据传输模型,若否,则判断content-type的值是否为application/x-www-form-urlencoded,若是,则以第一预设符号为分隔符分割字符串数据,得到分割后的数据集合,遍历数据集合,并以第二预设符号为分隔符分割数据集合中的每一个数据项,并将分割后得到的数据赋值至数据传输模型。
14.进一步地,所述s4步骤,具体包括:
15.s41:判断账号详情数据模型中的人员类型是否为第二类型企业员工,若否,则登录资料共享系统,若是,则进入下一步骤;
16.s42:创建邮件发送对象;所述邮件发送对象包括:邮件主题、邮件内容与收件人邮箱;其中,收件人邮箱为登录用户对应账号详情数据模型中的邮箱地址;
17.s43:实例化smtpclient,并通过实例化的smtpclient连接smtp邮件发送服务器;
18.s44:通过实例化的smtpclient验证smtpclient中预设的客户端密码与smtp邮件发送服务器中预存的服务端密码是否一致,若是,则通过实例化的smtpclient向smtp邮件发送服务器投递邮件发送对象,并判断是否投递成功,若是,则登录资料共享系统。
19.进一步地,所述smtp邮件发送服务器中搭建有不可信服务器实例;
20.所述s44步骤中,具体通过实例化的smtpclient向不可信服务器投递邮件发送对象;所述不可信服务器用于向邮件发送对象中的收件人邮箱转发邮件发送对象。
21.进一步地,所述s3步骤中,基础校验具体为:
22.判断数据传输模型中的用户账号与用户密码是否为空,若存在任意一个为空,则向前端返回用户账号或用户密码错误的提示,若均不为空,则开始二次校验。
23.本发明还提出了一种基于邮箱地址的人员信息认证系统,应用于第一类型企业与第二类型企业共同使用的资料共享系统,所述第一类型企业为维护或开发资料共享系统的公司,所述第二类型企业为使用资料共享系统的公司;所述系统包括:
24.前端请求发送模块,用于获取前端输入的登录信息,并对其进行加密后,向后台发送包含加密后登录信息的post请求;所述加密后的登录信息包括:用户账号与加密后的登录密码;
25.后台解析模块,用于响应前端发送的post请求,通过解析post请求中的body数据流与header中的数据将用户账号与用户密码绑定至数据传输模型;
26.后台校验模块,用于对数据传输模型中的用户账号与用户密码进行基础校验,并基于通过基础校验的用户账号,向数据库获取其对应的账号详情数据模型,通过账号详情数据模型对数据传输模型中的用户账号与用户密码进行二次校验;所述账号详情数据模型中包含用户注册的账号、密码、邮箱地址与人员类型;所述人员类型为第一类型企业员工或
第二类型企业员工;
27.邮箱验证模块,用于在二次校验通过且账号详情数据模型中的人员类型为第二类型企业员工时,根据账号详情数据模型中的邮箱地址利用smtpclient与smtp邮件发送服务器进行邮箱验证,验证通过,则登录资料共享系统。
28.进一步地,所述后台解析模块中,将用户账号与用户密码绑定至数据传输模型,具体包括:
29.读取post请求中的body数据流,并将其转换为utf8格式的字符串数据;
30.读取header中content-type的值,并判断content-type的值是否为application/json,若是,则利用newtosoft.json插件将字符串数据反序列化为预先定义的数据传输模型,若否,则判断content-type的值是否为application/x-www-form-urlencoded,若是,则以第一预设符号为分隔符分割字符串数据,得到分割后的数据集合,遍历数据集合,并以第二预设符号为分隔符分割数据集合中的每一个数据项,并将分割后的得到的数据赋值至数据传输模型。
31.进一步地,所述邮箱验证模块具体包括:
32.人员类型判断单元,用于判断账号详情数据模型中的人员类型是否为第二类型企业员工;
33.对象创建单元,用于在账号详情数据模型中的人员类型为第二类型企业员工时,创建邮件发送对象;所述邮件发送对象包括:邮件主题、邮件内容与收件人邮箱;其中,收件人邮箱为登录用户对应账号详情数据模型中的邮箱地址;
34.实例化单元,用于实例化smtpclient,并通过实例化的smtpclient连接smtp邮件发送服务器;
35.邮箱验证单元,用于通过实例化的smtpclient验证smtpclient中预设的客户端密码与smtp邮件发送服务器中预存的服务端密码是否一致,并在验证一致时,通过实例化的smtpclient向smtp邮件发送服务器投递邮件发送对象,并判断是否投递成功,并在投递成功后登录资料共享系统。
36.进一步地,所述smtp邮件发送服务器中搭建有不可信服务器实例;
37.所述邮箱验证单元中,具体通过实例化的smtpclient向不可信服务器投递邮件发送对象;所述不可信服务器用于向邮件发送对象中的收件人邮箱转发邮件发送对象。
38.进一步地,所述后台校验模块中,基础校验具体为:
39.判断数据传输模型中的用户账号与用户密码是否为空,若存在任意一个为空,则向前端返回用户账号或用户密码错误的提示,若均不为空,则开始二次校验。
40.与现有技术相比,本发明至少含有以下有益效果:
41.本发明通过将维护或开发资料共享系统的公司设为第一类型企业,将使用资料共享系统的公司设为第二类型企业(即合作方企业),并在登录过程中,通过解析post请求中的body数据流与header中的数据,将登录用户对应的用户账号与用户密码绑定至数据传输模型,并对数据传输模型中的用户账号与用户密码进行基础校验,并基于通过基础校验的用户账号,向数据库获取其对应的账号详情数据模型,并基于该模型进行二次校验,二次校验通过后,判断账号详情数据模型中的人员类型是否为第二类型企业员工,若是,则根据账号详情数据模型中的邮箱地址利用smtpclient与smtp邮件发送服务器进行邮箱验证,验证
通过,则登录资料共享系统,本发明基于一般企业的员工离职之后会把相应的账号和邮箱禁用的规则,在登录用户为合作方企业的员工时,采用邮箱验证的方式进行登录,解决了现有技术中由于资料共享系统无法识别合作方登录用户是否已经离职,而导致资料容易泄露的问题。
附图说明
42.图1为一种基于邮箱地址的人员信息认证方法流程图;
43.图2为一种基于邮箱地址的人员信息认证系统模块图。
具体实施方式
44.以下是本发明的具体实施例并结合附图,对本发明的技术方案作进一步的描述,但本发明并不限于这些实施例。
45.实施例一
46.为了提升资料共享系统中资料的安全性,解决现有技术中由于资料共享系统无法识别合作方登录用户是否已经离职,而导致资料容易泄露的问题,如图1所示,本发明提出了一种基于邮箱地址的人员信息认证方法,应用于第一类型企业与第二类型企业共同使用的资料共享系统,所述第一类型企业为维护或开发资料共享系统的公司,所述第二类型企业为使用资料共享系统的公司;
47.需要说明的是,维护或开发资料共享系统的公司在员工走完离职流程后,对应资料共享系统中的账号就会被注销,因而不需要邮箱验证,而第二类型企业(合作方企业)所用到的账号都是由维护或开发资料共享系统的公司即第一类型企业提供,因此员工离职后,经常会因为沟通不及时而被延迟注销或者忘记注销等,从而导致离职用户依然可登录系统,为了解决该问题,本发明提出了如下认证步骤:
48.s1:获取前端输入的登录信息,并利用md5对其进行加密后(具体对登录密码进行加密),利用axios插件向后台发送包含加密后登录信息的post请求;所述加密后的登录信息包括:用户账号与加密后的登录密码;
49.s2:响应前端发送的post请求,通过解析post请求中的body数据流与header中的数据将用户账号与用户密码绑定至数据传输模型;
50.所述s2步骤中,将用户账号与用户密码绑定至数据传输模型,具体包括:
51.读取post请求中的body数据流,并按utf-8的格式将其转换为字符串数据;如果数据流为空或者转换失败,则向前台返回http状态码400错误并提示无效的请求。
52.读取header中content-type的值,并判断content-type的值是否为application/json,若是,则利用newtosoft.json插件将字符串数据反序列化为预先定义的数据传输模型,若否,则判断content-type的值是否为application/x-www-form-urlencoded,若是,则以第一预设符号“&”为分隔符分割字符串数据,得到分割后的数据集合,遍历数据集合,并以第二预设符号“=”为分隔符分割数据集合中的每一个数据项,并将分割后得到的数据赋值至数据传输模型。如果content-type的值为空,则按application/json解析字符串数据,如果content-type为上述情况以外的值,则向前台返回http状态码400错误并提示无效的请求,另外,如果字符串数据解析为(绑定至)数据传输模型失败则向前台返回http状态码
500错误并提示服务器发生异常。
53.具体地,本实施例通过以下示例字符串数据进行详细说明,但本发明并不限定于该示例字符串数据:
54.示例字符串数据为:account=02397&password=123456;
55.本实施例首先通过第一预设符号“&”将示例字符串数据分割为包含第一数据项:“account=02397”与第二数据项“password=123456”的数据集合,然后通过遍历数据集合,并以第二预设符号“=”为分隔符将第一数据项分割为属性名称“account”与其对应的属性值“02397”,将第二数据项分割为属性名称“password”与其对应的属性值“123456”,由于属性值中可能包含中文,因此需要使用webutility.urldecode进行解码,最后根据属性名称将属性值赋值给数据传输模型。
56.s3:对数据传输模型中的用户账号与用户密码进行基础校验,并基于通过基础校验的用户账号,向数据库获取其对应的账号详情数据模型(如果该账号详情数据模型不存在则直接返回前端账号或者密码错误的提示),通过账号详情数据模型对数据传输模型中的用户账号与用户密码进行二次校验(具体为将数据传输模型中的用户密码与账号详情数据模型中的密码字段进行比对,对比一致,则表示校验通过,不一致,则直接提示前端账号和密码错误,如果连续错误三次,用户账号将被锁定预设时长,期间无法登陆),并在校验通过后进入下一步骤;所述账号详情数据模型中包含用户注册的账号、密码、邮箱地址与人员类型;所述人员类型为第一类型企业员工或第二类型企业员工;
57.所述s3步骤中,基础校验具体为:
58.判断数据传输模型中的用户账号与用户密码是否为空,若存在任意一个为空,则向前端返回用户账号或用户密码错误的提示,若均不为空,则开始二次校验。
59.s4:判断账号详情数据模型中的人员类型是否为第二类型企业员工,若是,则根据账号详情数据模型中的邮箱地址利用smtpclient与smtp邮件发送服务器进行邮箱验证,验证通过,则登录资料共享系统。
60.所述s4步骤,具体包括:
61.s41:判断账号详情数据模型中的人员类型是否为第二类型企业员工,若否,则登录资料共享系统,若是,则从账号详情数据模型中获取邮箱地址,如果邮箱地址为空,则直接返回前台,提示当前登录用户信息不完整,请补充后重新登录,如果不为空,则进入下一步骤;
62.s42:创建邮件发送对象;所述邮件发送对象包括:邮件主题、邮件内容与收件人邮箱;其中,收件人邮箱为登录用户对应账号详情数据模型中的邮箱地址;
63.s43:实例化smtpclient,并通过实例化的smtpclient连接smtp邮件发送服务器;
64.s44:通过实例化的smtpclient(具体通过smtpclient.authenticate方法进行验证)验证smtpclient中预设的客户端密码与smtp邮件发送服务器中预设的服务端密码是否一致(这一步是邮件服务商进行身份验证,防止有人冒充直接发送邮件),若否,则向前台返回http状态码500错误并提示服务器异常,若是,则通过实例化的smtpclient(具体通过调用smtpclient.send方法投递)向smtp邮件发送服务器投递邮件发送对象,并判断是否投递成功,若是,则登录资料共享系统。
65.所述smtp邮件发送服务器中搭建有不可信服务器实例;需要说明的是,不可信的
服务器发送的邮件默认会被标记为垃圾邮件,用户能够接收但不会收到提示。之所以这么做,是为了减少邮件通知对用户的骚扰。而搭建不可信服务器的关键是不要配置dkim值。
66.所述s44步骤中,具体通过实例化的smtpclient向不可信服务器投递邮件发送对象;所述不可信服务器用于向邮件发送对象中的收件人邮箱转发邮件发送对象。
67.这里需要说明的是,当收件人和发件人用的是同一个邮箱服务商时,那么在smtpclient向smtp邮件发送服务器投递邮件发送对象后,所述smtp邮件发送服务器会进行判断,如果smtp邮件发送服务器中存在与邮件发送对象中收件人邮箱一致的邮箱,则表示投递成功。而如果收件人和发件人不是同一个邮箱服务商,那么发件人对应的smtp邮件发送服务器会向收件人对应的smtp邮件发送服务器验证该收件人邮箱是否存在。比如用qq邮箱发送邮件给163邮箱。另外,需要注意的是,smtp邮件发送服务器中包括用户注册的邮箱信息(包含邮箱地址)。
68.本发明通过将维护或开发资料共享系统的公司设为第一类型企业,将使用资料共享系统的公司设为第二类型企业(即合作方企业),并在登录过程中,通过解析post请求中的body数据流与header中的数据,将登录用户对应的用户账号与用户密码绑定至数据传输模型,并对数据传输模型中的用户账号与用户密码进行基础校验,并基于通过基础校验的用户账号,向数据库获取其对应的账号详情数据模型,并基于该模型进行二次校验,二次校验通过后,判断账号详情数据模型中的人员类型是否为第二类型企业员工,若是,则根据账号详情数据模型中的邮箱地址利用smtpclient与smtp邮件发送服务器进行邮箱验证,验证通过,则登录资料共享系统,本发明基于一般企业的员工离职之后会把相应的账号和邮箱禁用的规则,在登录用户为合作方企业的员工时,采用邮箱验证的方式进行登录,解决了现有技术中由于资料共享系统无法识别合作方登录用户是否已经离职,而导致资料容易泄露的问题。
69.实施例二
70.如图2所示,本发明还提出了一种基于邮箱地址的人员信息认证系统,应用于第一类型企业与第二类型企业共同使用的资料共享系统,所述第一类型企业为维护或开发资料共享系统的公司,所述第二类型企业为使用资料共享系统的公司;所述系统包括:
71.前端请求发送模块,用于获取前端输入的登录信息,并对其进行加密后,向后台发送包含加密后登录信息的post请求;所述加密后的登录信息包括:用户账号与加密后的登录密码;
72.后台解析模块,用于响应前端发送的post请求,通过解析post请求中的body数据流与header中的数据将用户账号与用户密码绑定至数据传输模型;
73.所述后台解析模块中,将用户账号与用户密码绑定至数据传输模型,具体包括:
74.读取post请求中的body数据流,并将其转换为utf8格式的字符串数据;
75.读取header中content-type的值,并判断content-type的值是否为application/json,若是,则利用newtosoft.json插件将字符串数据反序列化为预先定义的数据传输模型,若否,则判断content-type的值是否为application/x-www-form-urlencoded,若是,则以第一预设符号为分隔符分割字符串数据,得到分割后的数据集合,遍历数据集合,并以第二预设符号为分隔符分割数据集合中的每一个数据项,并将分割后的得到的数据赋值至数据传输模型。
76.后台校验模块,用于对数据传输模型中的用户账号与用户密码进行基础校验,并基于通过基础校验的用户账号,向数据库获取其对应的账号详情数据模型,通过账号详情数据模型对数据传输模型中的用户账号与用户密码进行二次校验;所述账号详情数据模型中包含用户注册的账号、密码、邮箱地址与人员类型;所述人员类型为第一类型企业员工或第二类型企业员工;
77.所述后台校验模块中,基础校验具体为:
78.判断数据传输模型中的用户账号与用户密码是否为空,若存在任意一个为空,则向前端返回用户账号或用户密码错误的提示,若均不为空,则开始二次校验。
79.邮箱验证模块,用于在二次校验通过且账号详情数据模型中的人员类型为第二类型企业员工时,根据账号详情数据模型中的邮箱地址利用smtpclient与smtp邮件发送服务器进行邮箱验证,验证通过,则登录资料共享系统。
80.所述邮箱验证模块具体包括:
81.人员类型判断单元,用于判断账号详情数据模型中的人员类型是否为第二类型企业员工;
82.对象创建单元,用于在账号详情数据模型中的人员类型为第二类型企业员工时,创建邮件发送对象;所述邮件发送对象包括:邮件主题、邮件内容与收件人邮箱;其中,收件人邮箱为登录用户对应账号详情数据模型中的邮箱地址;
83.实例化单元,用于实例化smtpclient,并通过实例化的smtpclient连接smtp邮件发送服务器;
84.邮箱验证单元,用于通过实例化的smtpclient验证smtpclient中预设的客户端密码与smtp邮件发送服务器中预存的服务端密码是否一致,并在验证一致时,通过实例化的smtpclient向smtp邮件发送服务器投递邮件发送对象,并判断是否投递成功,并在投递成功后登录资料共享系统。
85.所述smtp邮件发送服务器中搭建有不可信服务器实例;
86.所述邮箱验证单元中,具体通过实例化的smtpclient向不可信服务器投递邮件发送对象;所述不可信服务器用于向邮件发送对象中的收件人邮箱转发邮件发送对象。
87.需要说明,本发明实施例中所有方向性指示(诸如上、下、左、右、前、后
……
)仅用于解释在某一特定姿态(如附图所示)下各部件之间的相对位置关系、运动情况等,如果该特定姿态发生改变时,则该方向性指示也相应地随之改变。
88.另外,在本发明中如涉及“第一”、“第二”、“一”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
89.在本发明中,除非另有明确的规定和限定,术语“连接”、“固定”等应做广义理解,例如,“固定”可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系,除非另有明确的限定。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
90.另外,本发明各个实施例之间的技术方案可以相互结合,但是必须是以本领域普
通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。

技术特征:
1.一种基于邮箱地址的人员信息认证方法,其特征在于,应用于第一类型企业与第二类型企业共同使用的资料共享系统,所述第一类型企业为维护或开发资料共享系统的公司,所述第二类型企业为使用资料共享系统的公司;所述方法包括步骤:s1:获取前端输入的登录信息,并对其进行加密后,向后台发送包含加密后登录信息的post请求;所述加密后的登录信息包括:用户账号与加密后的登录密码;s2:响应前端发送的post请求,通过解析post请求中的body数据流与header中的数据将用户账号与用户密码绑定至数据传输模型;s3:对数据传输模型中的用户账号与用户密码进行基础校验,并基于通过基础校验的用户账号,向数据库获取其对应的账号详情数据模型,通过账号详情数据模型对数据传输模型中的用户账号与用户密码进行二次校验,并在校验通过后进入下一步骤;所述账号详情数据模型中包含用户注册的账号、密码、邮箱地址与人员类型;所述人员类型为第一类型企业员工或第二类型企业员工;s4:判断账号详情数据模型中的人员类型是否为第二类型企业员工,若是,则根据账号详情数据模型中的邮箱地址利用smtpclient与smtp邮件发送服务器进行邮箱验证,验证通过,则登录资料共享系统。2.根据权利要求1所述的一种基于邮箱地址的人员信息认证方法,其特征在于,所述s2步骤中,将用户账号与用户密码绑定至数据传输模型,具体包括:读取post请求中的body数据流,并将其转换为utf8格式的字符串数据;读取header中content-type的值,并判断content-type的值是否为application/json,若是,则利用newtosoft.json插件将字符串数据反序列化为预先定义的数据传输模型,若否,则判断content-type的值是否为application/x-www-form-urlencoded,若是,则以第一预设符号为分隔符分割字符串数据,得到分割后的数据集合,遍历数据集合,并以第二预设符号为分隔符分割数据集合中的每一个数据项,并将分割后得到的数据赋值至数据传输模型。3.根据权利要求2所述的一种基于邮箱地址的人员信息认证方法,其特征在于,所述s4步骤,具体包括:s41:判断账号详情数据模型中的人员类型是否为第二类型企业员工,若否,则登录资料共享系统,若是,则进入下一步骤;s42:创建邮件发送对象;所述邮件发送对象包括:邮件主题、邮件内容与收件人邮箱;其中,收件人邮箱为登录用户对应账号详情数据模型中的邮箱地址;s43:实例化smtpclient,并通过实例化的smtpclient连接smtp邮件发送服务器;s44:通过实例化的smtpclient验证smtpclient中预设的客户端密码与smtp邮件发送服务器中预存的服务端密码是否一致,若是,则通过实例化的smtpclient向smtp邮件发送服务器投递邮件发送对象,并判断是否投递成功,若是,则登录资料共享系统。4.根据权利要求3所述的一种基于邮箱地址的人员信息认证方法,其特征在于,所述smtp邮件发送服务器中搭建有不可信服务器实例;所述s44步骤中,具体通过实例化的smtpclient向不可信服务器投递邮件发送对象;所述不可信服务器用于向邮件发送对象中的收件人邮箱转发邮件发送对象。5.根据权利要求1所述的一种基于邮箱地址的人员信息认证方法,其特征在于,所述s3
步骤中,基础校验具体为:判断数据传输模型中的用户账号与用户密码是否为空,若存在任意一个为空,则向前端返回用户账号或用户密码错误的提示,若均不为空,则开始二次校验。6.一种基于邮箱地址的人员信息认证系统,其特征在于,应用于第一类型企业与第二类型企业共同使用的资料共享系统,所述第一类型企业为维护或开发资料共享系统的公司,所述第二类型企业为使用资料共享系统的公司;所述系统包括:前端请求发送模块,用于获取前端输入的登录信息,并对其进行加密后,向后台发送包含加密后登录信息的post请求;所述加密后的登录信息包括:用户账号与加密后的登录密码;后台解析模块,用于响应前端发送的post请求,通过解析post请求中的body数据流与header中的数据将用户账号与用户密码绑定至数据传输模型;后台校验模块,用于对数据传输模型中的用户账号与用户密码进行基础校验,并基于通过基础校验的用户账号,向数据库获取其对应的账号详情数据模型,通过账号详情数据模型对数据传输模型中的用户账号与用户密码进行二次校验;所述账号详情数据模型中包含用户注册的账号、密码、邮箱地址与人员类型;所述人员类型为第一类型企业员工或第二类型企业员工;邮箱验证模块,用于在二次校验通过且账号详情数据模型中的人员类型为第二类型企业员工时,根据账号详情数据模型中的邮箱地址利用smtpclient与smtp邮件发送服务器进行邮箱验证,验证通过,则登录资料共享系统。7.根据权利要求6所述的一种基于邮箱地址的人员信息认证系统,其特征在于,所述后台解析模块中,将用户账号与用户密码绑定至数据传输模型,具体包括:读取post请求中的body数据流,并将其转换为utf8格式的字符串数据;读取header中content-type的值,并判断content-type的值是否为application/json,若是,则利用newtosoft.json插件将字符串数据反序列化为预先定义的数据传输模型,若否,则判断content-type的值是否为application/x-www-form-urlencoded,若是,则以第一预设符号为分隔符分割字符串数据,得到分割后的数据集合,遍历数据集合,并以第二预设符号为分隔符分割数据集合中的每一个数据项,并将分割后的得到的数据赋值至数据传输模型。8.根据权利要求7所述的一种基于邮箱地址的人员信息认证系统,其特征在于,所述邮箱验证模块具体包括:人员类型判断单元,用于判断账号详情数据模型中的人员类型是否为第二类型企业员工;对象创建单元,用于在账号详情数据模型中的人员类型为第二类型企业员工时,创建邮件发送对象;所述邮件发送对象包括:邮件主题、邮件内容与收件人邮箱;其中,收件人邮箱为登录用户对应账号详情数据模型中的邮箱地址;实例化单元,用于实例化smtpclient,并通过实例化的smtpclient连接smtp邮件发送服务器;邮箱验证单元,用于通过实例化的smtpclient验证smtpclient中预设的客户端密码与smtp邮件发送服务器中预存的服务端密码是否一致,并在验证一致时,通过实例化的
smtpclient向smtp邮件发送服务器投递邮件发送对象,并判断是否投递成功,并在投递成功后登录资料共享系统。9.根据权利要求8所述的一种基于邮箱地址的人员信息认证系统,其特征在于,所述smtp邮件发送服务器中搭建有不可信服务器实例;所述邮箱验证单元中,具体通过实例化的smtpclient向不可信服务器投递邮件发送对象;所述不可信服务器用于向邮件发送对象中的收件人邮箱转发邮件发送对象。10.根据权利要求6所述的一种基于邮箱地址的人员信息认证系统,其特征在于,所述后台校验模块中,基础校验具体为:判断数据传输模型中的用户账号与用户密码是否为空,若存在任意一个为空,则向前端返回用户账号或用户密码错误的提示,若均不为空,则开始二次校验。

技术总结
本发明公开了一种基于邮箱地址的人员信息认证方法与系统,其通过将维护或开发资料共享系统的公司设为第一类型企业,将使用资料共享系统的公司设为第二类型企业,并在登录过程中,通过解析post请求中的body数据流与header中的数据,将登录用户对应的用户账号与用户密码绑定至数据传输模型,并对数据传输模型中的用户账号与用户密码进行基础校验与二次校验,校验通过后,判断账号详情数据模型中的人员类型是否为第二类型企业员工,若是,则根据账号详情数据模型中的邮箱地址利用SmtpClient与Smtp邮件发送服务器进行邮箱验证,验证通过,则登录资料共享系统,解决了现有技术中由于资料共享系统无法识别合作方登录用户是否已经离职,而导致资料容易泄露的问题。而导致资料容易泄露的问题。而导致资料容易泄露的问题。


技术研发人员:任雨涛 邱元海 杨连东
受保护的技术使用者:甬矽电子(宁波)股份有限公司
技术研发日:2023.06.30
技术公布日:2023/8/31
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐