本发明涉及通信技术领域,尤其涉及一种用于桌面云门户的安全认证方法和装置。
背景技术:
当前某些大型企业员工分散,例如运营商营业厅工作人员、客服人员等均分散在各地,缺乏统一有效的管控手段。员工所用的独立办公终端风险值普遍偏高,并且存在滥用情况,增加了高价值信息泄露的风险。大型企业内各类内部应用(包括桌面云系统)种类繁多,缺乏统一的访问控制平台,随着内部应用增加,用户权限管理愈发复杂。当需要同时对多个内部应用进行操作时,用户需多次输入不同的帐号密码,工作复杂度成倍增加。
相关技术针对上述问题的解决方案,集合了以下三种:首先,针对员工分散,办公终端难于管控的情况,目前采用桌面云技术。其次,针对企业内部应用繁多的情况,目前采用了4A(Authentication、Account、Authorization、Audit)统一安全管理平台技术。再次,针对桌面云帐号与4A帐号不统一的情况,目前大多数桌面云厂商只支持基于微软公司的活动目录(Active Directory,简称AD)域控服务器进行用户管理和认证的方式。然而上述相关技术存在以下缺点:
(1)基于互联网环境的桌面云门户安全认证方式缺乏短信密钥、令牌强认证等安全认证手段,存在一定的安全风险;
(2)基于桌面云帐号与4A统一安全管理平台帐号同步的情况下,用户成功登陆桌面操作系统后,需要二次输入同样的帐号和密码,才能访问4A统一安全管理平台门户,进而单点登录企业内部应用。其步骤繁琐,员工工作复杂度成倍增加,并存在帐号密码多次重复输入造成的密码泄露隐患。
技术实现要素:
本发明实施例提供了一种安全认证方法和装置,不仅提升了企业员工基于桌面云系统的办公安全性,同时也降低了访问企业内部应用的复杂度,提高了员工办公效率。
第一方面,本发明实施例提供了一种安全认证方法,用于桌面云门户,包括:获取用户输入的账号和密码,将所述账号和密码通过桌面云控制器发送至第一服务器,以向所述第一服务器发送认证请求;接收所述第一服务器发送的认证请求结果;在所述认证请求通过的情况下,向第二服务器发送强认证请求以进行强认证;在所述强认证通过的情况下,接收所述第二服务器发送的强认证令牌;以及在所述强认证令牌符合预设条件的情况下,单点登录内部应用。
第二方面,本发明实施例提供了一种安全认证方法,用于第一服务器,包括:接收所述桌面云门户发送的账号和密码,进行主账号认证,并将所述主账号认证结果返回至所述桌面云门户;在所述主账号认证通过后,向所述第二服务器发送强认证密码请求;接收所述桌面云门户发送的所述用户在所述强认证密码输入界面输入的所述强认证密码,将所述强认证密码发送至所述第二服务器以进行强认证,并接收所述第二服务器返回的所述强认证结果;在所述强认证通过后,向所述第二服务器申请强认证令牌,并接收所述第二服务器发送的所述强认证令牌,并将所述强认证令牌发送至所述桌面云门户。
第三方面,本发明实施例提供了一种安全认证方法,用于第二服务器,包括:与所述AD域控进行数据同步;接收所述桌面云门户通过所述第一服务器发送的强认证请求以进行强认证;及在所述强认证通过后,通过所述第一服务器向所述桌面云门户发送强认证令牌。
第四方面,本发明实施例提供了一种安全认证装置,用于桌面云门户,认证发送模块,被配置为获取用户输入的账号和密码,将所述账号和密码通过桌面云控制器发送至第一服务器,以向所述第一服务器发送认证请求;认证接收模块,被配置为接收所述第一服务器发送的认证请求结果;强认证模块,被配置为在所述认证请求通过的情况下,向所述第二服务器发送强认证请求以进行强认证;及令牌模块,被配置为在所述强认证通过的情况下,接收所述第二服务器发送的强认证令牌;以及单点登录模块,被配置为在所述强认证令牌符合预设条件的情况下,单点登录内部应用。
第五方面,本发明实施例提供了一种安全认证装置,用于第一服务器,包括:主账号认证模块,被配置为接收所述桌面云门户发送的账号和密码,进行主账号认证,并将所述主账号认证结果返回至所述桌面云门户;密码请求模块,被配置为在所述主账号认证通过后,向所述第二服务器发送强认证密码请求;强认证模块,被配置为接收所述桌面云门户发送的所述用户在所述强认证密码输入界面输入的所述强认证密码,将所述强认证密码发送至所述第二服务器以进行强认证,并接收所述第二服务器返回的所述强认证结果;令牌模块,被配置为在所述强认证通过后,向所述第二服务器申请强认证令牌,并接收所述第二服务器发送的所述强认证令牌,并将所述强认证令牌发送至所述桌面云门户。
第六方面,本发明实施例提供了一种安全认证方法,用于第二服务器,包括:数据同步模块,被配置为与所述AD域控进行数据同步;认证管理模块,被配置为接收所述桌面云门户通过所述第一服务器发送的强认证请求以进行强认证;及令牌认证模块,被配置在所述强认证通过后,通过所述第一服务器向所述桌面云门户发送强认证令牌。
本发明实施例提供了一种安全认证方法和装置,通过将桌面云帐号与4A统一安全管理帐号同步,实现帐号安全的统一管理;通过加入短信验证环节,加固基于互联网环境的桌面云访问安全;并在短信验证环节中加入强认证环节,提升登录桌面云后访问企业内部应用的安全性。通过校验强认证令牌,并进行令牌超时控制,在令牌不过期的情况下,使用快捷登录功能跳过4A统一安全管理门户直接单点登录内部应用,在保障安全的前提下,极大地提升了员工基于桌面云系统的办公效率。
附图说明
从下面结合附图对本发明的具体实施方式的描述中可以更好地理解本发明其中,相同或相似的附图标记表示相同或相似的特征。
图1为本发明一实施例中的安全认证方法,用于桌面云门户的流程图;
图2为本发明一实施例中的安全认证方法,用于第一服务器的流程图;
图3为本发明一实施例中的安全认证方法,用于第二服务器的流程图;
图4为本发明一实施例中的安全认证装置,用于桌面云门户的结构示意图;
图5为本发明一实施例中的安全认证装置,用于第一服务器的结构示意图;
图6为本发明一实施例中的安全认证装置,用于第二服务器的结构示意图;
图7为本发明再一实施例中基于桌面云系统的内部应用安全认证方法示意图;
图8为本发明再一实施例中基于桌面云环境的强认证方法示意图;
图9为本发明再一实施例中基于桌面云环境的虚拟机令牌注入方法示意图;
图10为本发明再一实施例中基于桌面云环境的统一安全认证代理装置与4A统一安全管理平台交互的示意图。
具体实施方式
下面将详细描述本发明的各个方面的特征和示例性实施例。在下面的详细描述中,提出了许多具体细节,以便提供对本发明的全面理解。但是,对于本领域技术人员来说很明显的是,本发明可以在不需要这些具体细节中的一些细节的情况下实施。下面对实施例的描述仅仅是为了通过示出本发明的示例来提供对本发明的更好的理解。本发明决不限于下面所提出的任何具体配置和算法,而是在不脱离本发明的精神的前提下覆盖了元素、部件和算法的任何修改、替换和改进。在附图和下面的描述中,没有示出公知的结构和技术,以便避免对本发明造成不必要的模糊。
图1为本发明一实施例中的安全认证方法,用于桌面云门户的流程图。如图1所示,该方法包括以下步骤:步骤101,获取用户输入的账号和密码,将所述账号和密码通过桌面云控制器发送至第一服务器,以向所述第一服务器发送认证请求;步骤102,接收所述第一服务器发送的认证请求结果;步骤103,在所述认证请求通过的情况下,向第二服务器发送强认证请求以进行强认证;步骤104,在所述强认证通过的情况下,通过所述第一服务器接收所述第二服务器发送的强认证令牌;步骤105,在所述强认证令牌符合预设条件的情况下,单点登录内部应用。
在步骤101和步骤102中,通过例如AD认证实现用户账户统一管理,用户可随时随地通过互联网访问基于桌面云系统的内部应用,从而提高业务灵活性,解决员工分散的问题。
在步骤103至步骤105中,在例如AD认证通过的情况下,通过强认证进一步提升登录桌面云后访问企业内部应用的安全性,在强认证通过后获得强认证令牌,以进行二次认证,并在二次认证满足预设条件的情况下,单点登录桌面云系统内部各应用。使用户成功登陆桌面云操作系统后,无需二次输入同样的帐号和密码,直接单点登录企业内部应用,降低用户工作复杂度、提高用户办公效率;同时避免用户帐号或密码信息泄漏,提升网络安全性。
本发明实施例提供了一种安全认证方法和装置,本发明中通过将桌面云帐号与4A统一安全管理帐号同步,实现帐号安全的统一管理;通过加入短信验证环节,加固基于互联网环境的桌面云访问安全;并在短信验证环节中加入强认证环节,提升登录桌面云后访问企业内部应用的安全性。通过校验强认证令牌,并进行令牌超时控制,在令牌不过期的情况下,使用快捷登录功能跳过4A统一安全管理门户直接单点登录内部应用,在保障安全的前提下,极大地提升了员工基于桌面云系统的办公效率。
可以理解的是,步骤103可以具体实现为:从用户登录页面获取所述账号和密码,并将所述账号和密码发送至所述第一服务器进行主账号认证,在所述主账号认证通过后,接收所述第一服务器发送的认证结果;当所述用户登录页面跳转至强认证密码输入界面时,获取用户在所述强认证密码输入界面输入的所述强认证密码,并将所述强认证密码通过所述第一服务器发送至所述第二服务器进行所述强认证;将所述强认证令牌注入所述虚拟桌面并推送至终端。
其中,桌面云门户从用户登录页面直接获取用户首次输入的帐号和密码,并将所述账号和密码发送至所述第一服务器进行主账号认证,并在所述主账号认证通过后,从强认证密码输入界面获取用户输入的强认证密码,以进行强认证,在强认证通过后,接收所述第二服务器通过所述第一服务器发送的强认证令牌,并将所述强认证令牌注入所述虚拟桌面并推送至终端。
其中,将所述强认证令牌注入所述虚拟桌面并推送至终端的方式可以包括:将所述强认证令牌通过加密通道发送至所述桌面云控制器,通过所述桌面云控制器发送至所述虚拟桌面。
可以理解的是,步骤105可以具体实现为:读取所述虚拟桌面的身份信息;判断所述强制令牌是否合法;当判断结果为否时,提示认证失败;当判断结果为是时,进一步判断所述强制令牌是否过期;当判断结果为是时,直接单点登录内部应用;当判断结果为否时,获取所述用户输入的与所述内部应用对应的账户和密码及短信密钥,并将所述与所述内部应用对应的账户和密码及短信密钥发送至所述第二服务器,以用于向所述第二服务器请求验证,并在验证通过后,单点登录所述内部应用。
其中,虚拟桌面的身份信息可以包括:虚拟桌面IP、DN,AD域用户信息,所述强认证令牌等;所述AD域用户信息可以包括:公司、部门、账号、姓名、邮箱。
图2是根据本发明一实施例中的安全认证方法,用于第一服务器的流程图。如图2所示,该方法包括以下步骤:
步骤201,接收所述桌面云门户发送的账号和密码,进行主账号认证,并将所述主账号认证结果返回至所述桌面云门户;
步骤202,在所述主账号认证通过后,向所述第二服务器发送强认证密码请求;
步骤203,接收所述桌面云门户发送的所述用户在所述强认证密码输入界面输入的所述强认证密码,将所述强认证密码发送至所述第二服务器以进行强认证,并接收所述第二服务器返回的所述强认证结果;
步骤204,在所述强认证通过后,向所述第二服务器申请强认证令牌,并接收所述第二服务器发送的所述强认证令牌,并将所述强认证令牌发送至所述桌面云门户。
在步骤201中,第一服务器通过接收桌面云门户发送的账号和密码,进行主账号认证,并将认证结果返回至桌面云门户,并将验证结果返回至桌面云门户。
其中,主账号认证中涉及的帐号和密码例如可以为用户在登录页首次输入的帐号和密码。
在步骤202至步骤204中,在主账号认证通过的情况下,第一服务器向第二服务器发送强认证密码请求,以进行强认证;在桌面云获取到用户从密码输入页面输入的强认证密码后,接收桌面云发送的所述强认证密码,并将所述强认证密码发送至第二服务器进行验证,当验证通过后,将第二服务器发送的令牌返回至桌面云门户。
其中,第一服务器可以为例如Radius服务器。
图3是根据本发明一实施例中的安全认证方法,用于第二服务器的流程图。如图3所示,该方法包括以下步骤:步骤301,与所述AD域控进行数据同步;步骤302,接收所述桌面云门户通过所述第一服务器发送的强认证请求以进行强认证;及步骤303,在所述强认证通过后,通过所述第一服务器向所述桌面云门户发送强认证令牌。
在步骤301中,通过第二服务器与AD域控进行数据同步,实现帐号安全的统一管理。在步骤302和步骤303中,对登录用户进行强认证,并在强认证通过的情况下,向桌面云门户发送强认证令牌,以使桌面云门户对用户进行二次验证。可以理解的是,步骤302可以具体实现为:接收所述第一服务器发送的强认证密码请求;向用户发送所述强认证密码;接收所述桌面云门户通过所述第一服务器发送的所述用户在所述强认证密码输入界面输入的所述强认证密码以进行所述强认证。其中,强认证密码例如可以为第二服务器直接发送给用户的短信密码。其中,所述第二服务器为4A统一安全管理平台。
图4为本发明一实施例中的安全认证装置,用于桌面云门户的结构示意图。如图4所示,该装置包括:
AD认证发送模块401,被配置为获取用户输入的账号和密码,将所述账号和密码通过桌面云控制器发送至第一服务器,以向所述第一服务器发送认证请求;AD认证接收模块402,被配置为接收所述第一服务器发送的认证请求结果;强认证模块403,被配置为在所述认证请求通过的情况下,向所述第二服务器发送强认证请求以进行强认证;及令牌模块404,被配置为在所述强认证通过的情况下,接收所述第二服务器发送的强认证令牌;单点登录模块405,被配置为在所述强认证令牌符合预设条件的情况下,单点登录内部应用。
可以理解的是,强认证模块403可以具体实现为:从用户登录页面获取所述账号和密码,并将所述账号和密码发送至所述第一服务器进行主账号认证,在所述主账号认证通过后,接收所述第一服务器发送的认证结果;当所述用户登录页面跳转至强认证密码输入界面时,获取用户在所述强认证密码输入界面输入的所述强认证密码,并将所述强认证密码通过所述第一服务器发送至所述第二服务器进行所述强认证;将所述强认证令牌注入所述虚拟桌面并推送至终端。
其中,将所述强认证令牌注入所述虚拟桌面并推送至终端的方式可以包括:将所述强认证令牌通过加密通道发送至所述桌面云控制器,通过所述桌面云控制器发送至所述虚拟桌面。
可以理解的是,单点登录模块405可以具体实现为:读取所述虚拟桌面的身份信息;判断所述强制令牌是否合法;当判断结果为否时,提示认证失败;当判断结果为是时,进一步判断所述强制令牌是否过期;当判断结果为是时,直接单点登录内部应用;当判断结果为否时,获取所述用户输入的与所述内部应用对应的账户和密码及短信密钥,并将所述与所述内部应用对应的账户和密码及短信密钥发送至所述第二服务器,以用于向所述第二服务器请求验证,并在验证通过后,单点登录所述内部应用。
其中,虚拟桌面的身份信息可以包括:虚拟桌面IP、DN,AD域用户信息,所述强认证令牌等;所述AD域用户信息可以包括:公司、部门、账号、姓名、邮箱。
图5是根据本发明一实施例中的安全认证装置,用于第一服务器的结构示意图。如图5所示,该装置包括:
主账号认证模块501,被配置为接收所述桌面云门户发送的账号和密码,进行主账号认证,并将所述主账号认证结果返回至所述桌面云门户;
密码请求模块502,被配置为在所述主账号认证通过后,向所述第二服务器发送强认证密码请求;
强认证模块503,被配置为接收所述桌面云门户发送的所述用户在所述强认证密码输入界面输入的所述强认证密码,将所述强认证密码发送至所述第二服务器以进行强认证,并接收所述第二服务器返回的所述强认证结果;
令牌模块504,被配置为在所述强认证通过后,向所述第二服务器申请强认证令牌,并接收所述第二服务器发送的所述强认证令牌,并将所述强认证令牌发送至所述桌面云门户。其中,第一服务器例如可以为Radius服务器。
图6是根据本发明一实施例中的安全认证装置,用于第二服务器的结构示意图。如图6所示,该装置包括:数据同步模块601,与所述AD域控进行数据同步;认证管理模块602,接收所述桌面云门户通过所述第一服务器发送的强认证请求以进行强认证;及令牌认证模块603,在所述强认证通过后,通过所述第一服务器向所述桌面云门户发送强认证令牌。
可以理解的是,认证管理模块602可以具体实现为:接收所述第一服务器发送的强认证密码请求;向用户发送所述强认证密码;接收所述桌面云门户通过所述第一服务器发送的所述用户在所述强认证密码输入界面输入的所述强认证密码以进行所述强认证。其中,所述第二服务器为4A统一安全管理平台。
图7是根据本发明一实施例中的基于桌面云系统的内部应用安全认证方法示意图,所述桌面云系统包括:桌面云门户、桌面云控制器、AD域控、虚拟桌面、统一认证代理装置、4A统一安全管理平台。具体的安全认证方法实现步骤,如图7所示:
①桌面云AD(Active Directory,活动目录)帐户库与4A统一安全管理平台做数据同步;
②用户在桌面云门户输入帐号密码,触发到桌面云控制器的认证请求;
③桌面云控制器向桌面云基础架构所属域的AD域控服务器发起AD认证请求;
④AD域控服务器完成帐号密码认证工作并返回AD认证结果至桌面云控制器;
⑤桌面云控制器将返回的AD认证结果返回至桌面云门户;
⑥桌面云门户获取通过的认证结果,并触发强认证指向4A统一安全管理平台的认证管理单元;用户获取短信密钥,并回填验证通过;
⑦4A统一安全管理平台的认证管理单元认证通过,返回强认证令牌至桌面云门户,并将该令牌注入用户虚拟桌面;
⑧桌面云门户推送携带强认证令牌的虚拟桌面至用户侧终端机;
⑨虚拟桌面上通过提前部署的统一认证代理装置读取来源虚拟桌面的IP,DN(域名,Domain Name),当前AD用户信息,强认证令牌;
⑩统一安全认证代理装置的校验单元向4A统一安全管理平台的认证管理单元发起验证请求。包括:判断来源虚拟桌面所携带的强认证令牌的合法性,若不合法,提示认证失败;若合法则继续判断强认证令牌是否过期,若没有过期,则直接跳转登录内部应用;若过期,则触发短信重新验证登录。
图8是根据本发明一实施例中的基于桌面云环境的强认证方法示意图,其中桌面云环境包括:桌面云门户、Radius服务器、4A统一安全认证平台。具体的安全认证方法实现步骤,如图8所示:
①桌面云门户从用户登录页面获取账号和密码,并发送给Radius服务器的主账号认证模块进行主账号认证;
②认证通过后,Radius服务器向4A统一安全管理平台请求短信密码;
③Radius服务器返回认证结果给桌面云门户;
④若认证通过,桌面云门户从用户登录界面跳转到短信密码输入界面;同时统一安全管理平台向用户发送短信密码;
⑤用户在登录页面中输入强认证短信密码;
⑥桌面云门户从用户登录页面获取用户的强认证密码并发送给Radius服务器进行短信强认证;
⑦Radius服务器发送强认证密码给4A统一安全管理平台,进行验证;
⑧4A统一安全管理平台返回认证结果给Radius服务器;
⑨若认证通过,则Radius服务器调用强认证令牌服务进程;
⑩Radius服务器的强认证令牌服务进程向4A统一安全管理平台申请令牌;
4A统一安全管理平台返回强认证令牌给Radius服务器;
Radius服务器返回强认证令牌;
Radius服务器返回认证结果及强认证令牌给桌面云门户。
图9是根据本发明一实施例中的基于桌面云环境的虚拟机令牌注入方法示意图,其中桌面云环境包括:桌面云门户、Radius服务器、4A统一安全认证平台、桌面云控制器、虚拟桌面。具体的安全认证方法实现步骤,如图9所示:
①用户输入4A帐号、密码及动态码;
②完成验证并触发强认证令牌请求服务;
③4A统一安全管理平台的认证管理单元将生成的强认证令牌推送给桌面云门户;
④桌面云门户通过基于桌面云内部通信协议的扩展加密通道将生成的强认证令牌推送给桌面云控制器;
⑤桌面云控制器确认用户身份,并根据桌面云内部通信协议交付虚拟桌面。在交付过程中,通过扩展加密通道将强认证令牌推送至用户虚拟桌面;
⑥虚拟桌面将强认证令牌存储在共享内存缓存区;
⑦虚拟桌面上提前部署的统一安全认证装置读取缓存区内的强认证令牌信息。
图10是根据本发明一实施例中的基于桌面云环境的统一安全认证代理装置与4A统一安全管理平台交互的示意图,该统一安全认证代理装置包括第一共享内存、第二共享内存,其功能单元主要分为内存读取单元,令牌校验单元,超时控制单元。
内存读取单元,在桌面云在AD认证、短信密码认证通过后,会将统一安全管理平台认证管理中心产生的强认证令牌写入虚拟桌面共享内存,通过内存读取单元读取共享内存来获取令牌信息。
其中,内存读取单元获取共享内存信息流程如下:
首先,从第一共享内存查询第二共享内存信息;其次,读取第二共享内存的名称、大小等所需信息(主要是考虑共享内存的安全性)。
共享内存接口定义如下:
第一共享内存名字:Global\HDP_THIRD_GINA_FILE_NAME
第一共享内存内容为下面的结构体:
第二共享内存为第一共享内存中结构体第二个字段Name,名字为:Global\HDP_THIRD_GINA_FILE_NAME_运行时间(其中运行时间为本次开机以来系统连续运行的时间,C#代码为Environment.TickCount)
第二共享内存大小为第一共享内存中结构体第一个字段Size(大小为8K),供强认证令牌存放使用,多余的空间以OX 00来填充。
令牌检验单元,与4A统一安全管理平台的认证管理中心通过Webservice方式进行交互,调用Webservice读取IP,DN以及强认证令牌并进行验证,任一条件不满足,不允许单点登录内部应用。
超时控制单元,具有超时控制功能,并且用户可以强制注销代理(强制超时)。具体实现表现为:根据强认证令牌生成时间(用户登录云桌面的时间)作为超时开始时间,进行计时。在认证管理中心设定一个超时阈值,用户登录桌面后单点登录内部应用时,会进行超时判断(已登录虚拟桌面的时间是否大于所设定的超时阀值),如果超时后,会跳转到统一业务支撑系统的登录页面,重新输入帐号密码登录。代理的系统托盘可以强制执行代理超时,用户可以通过执行“注销代理”,确认后,再通过代理登录统一业务支撑系统,都会提示登录超时,并跳转到4A统一安全管理平台门户页面。这时要想再通过代理单点登录内部应用,必须断开桌面后,重新进行桌面登录后才可以代理。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。