首页> 中国专利> 一种基于SAML的单点登录模式设计的认证平台

一种基于SAML的单点登录模式设计的认证平台

摘要

本发明公开了一种基于SAML的单点登录模式设计的认证平台,由登录模块和认证模块两个模块共同完成,登录模块基于SAML2.0协议使用两种SAML格式的票据,分别是单点登录票据和获取单点登录票据的请求票据,认证模块采用的是SSL的握手协议方式或PKI数字签名证书认证方式。本发明实现了在各应用平台进行统一认证鉴权,从而实现用户的单点登录。在用户身份凭证有效期内,都不需要再次进行认证,用户不需要记忆多个平台的用户帐号、密码,省去多次输入用户名和密码的繁琐操作,实现“一次登陆,随处访问”的目标,提高了用户的工作效率,减少操作时间,降低用户管理的复杂度,有效提升了用户体验。

著录项

  • 公开/公告号CN102655494A

    专利类型发明专利

  • 公开/公告日2012-09-05

    原文格式PDF

  • 申请/专利权人 广州从兴电子开发有限公司;

    申请/专利号CN201110048432.6

  • 发明设计人 温文全;李伟;

    申请日2011-03-01

  • 分类号H04L29/06(20060101);H04L9/32(20060101);

  • 代理机构

  • 代理人

  • 地址 510300 广东省广州市越秀区先烈中路83号凯城华庭508

  • 入库时间 2023-12-18 08:10:40

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-04-12

    授权

    授权

  • 2015-09-30

    专利申请权的转移 IPC(主分类):H04L29/06 变更前: 变更后: 登记生效日:20150909 申请日:20110301

    专利申请权、专利权的转移

  • 2015-08-26

    专利申请权的转移 IPC(主分类):H04L29/06 变更前: 变更后: 登记生效日:20150803 申请日:20110301

    专利申请权、专利权的转移

  • 2015-05-13

    著录事项变更 IPC(主分类):H04L29/06 变更前: 变更后: 申请日:20110301

    著录事项变更

  • 2013-04-17

    实质审查的生效 IPC(主分类):H04L29/06 申请日:20110301

    实质审查的生效

  • 2012-09-05

    公开

    公开

查看全部

说明书

技术领域

本发明涉及单点登录模式设计的认证平台,特别涉及基于SAML的单 点登录模式设计的认证平台。

背景技术

随着信息技术和网络技术在企业中的广泛应用,很多企业拥有各种各 样的应用系统和业务系统,如OA系统,CRM客户管理系统,财务系统等。 这些应用系统所涵盖的功能,服务能为用户带来诸多好处。每个业务平台 都有一套独立的身份验证机制。用户信息没有采用集中管理,造成用户信 息重复录入,管理混乱;用户需要记忆多个业务平台的帐号、密码,在不 同应用平台登录时需进行多次输入用户名和密码的繁琐操作,这给用户带 来极大的不便,严重影响了用户体验的同时降低了系统的使用效率。

发明内容

本发明的目的是为了提高用户体验,提高系统的使用效率,实现在各 应用平台进行统一认证鉴权,从而实现用户的单点登录。在用户身份凭证 有效期内,都不需要再次进行认证,用户不需要记忆多个平台的用户帐号、 密码,省去多次输入用户名和密码的繁琐操作,实现“一次登陆,随处访 问”的目标。

为此,本发明提出一种单点登录系统按企业系统需求规划构建的统一 身份认证平台,为企业用户在各业务系统提供统一的身份认证和综合安全 服务,以实现平台与平台之间的信息交互,资源共享。为用户提供多样化 的服务的同时省掉了重复登录的操作,实现一次登陆、随处访问的目标。 在受信任的平台之间是统一授权和身份认证,用户只需输入一次账号和密 码,可在身份凭证有效期内可随处访问。认证中心与网站平台的信息信息 传输是通过数字签名加密,用户与平台之间的网络传输通过SSL加密。

其中统一认证平台具有以下功能:

统一授权——认证平台为用户统一颁发数字签名证书,作为用户访问 平台及各应用系统的凭据,并对用户访问应用系统的权限进行授权。

认证接口——完善的认证接口,让多种应用系统可以方便地通过接口 使用本地认证系统,统一认证用户身份。

身份认证——用户在访问平台及各应用系统时,都使用相同的凭据 (即用户的账户和密码)证明其身份的真实性。

单点登录——用户在通过平台认证后,可直接访问已授权的各应用系 统,实现不同应用系统的身份认证共享,从而达到多应用系统的单点登 录。

数据共享——认证平台存储了用户的基本信息,所有应用系统均可以 充分利用这些信息,减少用户信息的重复录入。

安全通道——平台提供两种安全通道:一种是应用层安全通道,一种 是网络层安全通道。它们为应用之间提供安全的传输通道,保证其中传输 的数据的安全性。

为实现上述目的,本发明采用如下技术方案:

一种基于SAML的单点登录模式设计的认证平台,由登录模块和认证 模块两个模块共同完成,其中登录模块基于SAML2.0协议使用两种SAML 格式的票据,分别是单点登录票据和获取单点登录票据的请求票据,认证 模块采用的是SSL的握手协议方式或PKI数字签名证书认证方式。

本发明的有益效果在于,提高了用户的工作效率,减少操作时间,降 低用户管理的复杂度,有效提升了用户体验。

附图说明

图1为申请请求票据的流程图;

图2为验证登录票据的流程图;

图3为登录流程图;

图4为登出流程图;

图5为业务平台到认证中心之间数据传送的签名和验证流程图;

图6为认证中心到业务平台之间数据传送的签名和验证流程图。

具体实施方式

下面结合附图和实施例对本发明作进一步详细的说明。

统一认证平台完成用户票据生成、会话管理、身份验证、票据查询、 日志管理、加密算法、单点登录和登出等功能,这些功能都是由登录模块 和认证模块两个模块共同完成的。

登录模块是决定着用户是否可以登录以及他们可以访问哪些资源。它 通过安全地管理用户身份标识并自动对业务平台提交正确的用户标识来 完成本功能。它简化了最终用户的登录过程,通过引入数字证书或数字签 名等技术完成对用户票据的认证,减少了各种密码、口令等信息的管理工 作量,并增强了总体应用的安全性。

其中登录模块有会话管理、票据管理和日志管理等几个主要功能组 成。

会话管理:

登录会话信息管理,提供对用户访问的会话(Session)管理功能,保 存用户登录应用操作时所需要的信息。保证每个登录用户,都会保留一个 与其唯一对应的会话,利用共享会话(Session)功能,实现单点登录。即 用户访问其他受信业务平台时无需用户再次进行登录。

票据管理:

票据管理负责为登录用户生成票据及票据注销。用户身份经过认证模 块验证后,认证模块会将结果返回给登录模块,系统收到到返回结果后会 赋予其相应的票据,持有该票据,用户就可以通过此票据能正确的进入目 标业务平台。当用户被注销退出后,票据也会随之失效,以防止其再次进 入系统,保证系统的安全。

统一认证平台基于SAML2.0协议使用两种SAML格式的票据,分别是 单点登录票据和获取单点登录票据的请求票据。用户通过认证平台登录, 输入用户信息后根据输入的用户信息和其他控制信息,产生符合SAML2.0 格式的票据内容,并签名;同时鉴于安全性考虑对于用户签名不应采用明 文传输,而应该采取一定的密钥算法对票据进行签名加密。单点登录平台 使用两种SAML2.0格式票据,分别是:

SSO Ticket——单点登录票据

Ticket Granting Ticket——获取单点登录请求票据

单点登录的票据具有记录用户信息的功能部件,可以实现用户在一次 登录后对各种应用系统进行访问而不需要再次输入验证信息,即满足对于 不同用户在不同应用系统的需求,并且能够满足安全需求的情况下,通过 票据对用户身份信息进行验证。

为了认证信息存储的完备性、存储的方便性、处理的方便性等应对单 点登录票据进行标准化要求,该系统中单点登录票据基于SAML2.0标准, 并根据集团自身需求进行扩展。具体要求如下:

·附带签名的数据结构;

·包含用户身份信息、有效期、IP地址信息、属性信息、认证主体信 息等数据;

·包含票据有效期,防止票据冒用;

·签名信息保障票据不可修改、不可抵赖;

·使用通信加密,加密票据中包含会话数据,以此防止票据冒用。

如果用户需要访问应用平台A,若判断没有登录情况下会重定向到认 证中心进行登录。认证中心首先使用单点登录会话数据申请功能,获取单 点登录请求票据。此功能会根据用户的请求消息提供的UID,应用平台 URL,请求时间等格式获取单点登录的请求票据。

通过认证平台的鉴权后,验证其票据信息合法性;从中获取申请数据 包时间和本地时间进行匹配验证,防止申请包的过期重发;验证数据库中 的相关记录,然后才生成相应的请求票据信息,存储在认证中心的会话表 中,并返回请求票据给用户。

如图1所示,申请请求票据的流程如下:

1、用户输入账户、密码、图形验证码或短信验证码等信息提交给统 一认证中心处理。

2、登录模块检查用户提交过来的信息格式。

3、登录模块发出认证请求道认证模块对用户信息进行鉴权。

4、认证模块鉴权完毕后将返回认证结果给登录模块。

5、登录模块根据认证模块返回的认证成功结果生成请求票据。

统一认证中心在验证通过数字签名加密票据的合法性后,重置单点登 录会话表的相应数据的有效性,返回检查结果生成登录票据,完成了单点 登录的整个流程。

验证登录票据的流程如下:

1、业务平台A携带查询依据(请求票据)请求统一认证中心平台。

2、经校验请求票据的合法性后,返回登录票据给业务平台A。

3、业务平台A验证加密后的用户身份票据凭证和会话数据。

4、验证通过后完成单点登录。

单点登录认证系统为各业务平台提供了认证服务。现描述用户访问各 业务平台过程中各相关系统之间的处理流程,其中包括用户登录流程、用 户登出流程。各业务平台实现单点登录流程总体思路是“用户在认证中心 登录成功后,则可任意访问其他受信任的业务平台。用户登出则由认证中 心通知各业务平台登出”。

用户登录成功后的信息保存在认证中心的登录服务模块的单点登录 会话中。登录服务为用户生成一个查询依据,登录服务模块通过浏览器重 定向(SAML-AuthnResponse)到对应的业务平台。

如图3所示,其登录流程为:

1、用户访问网站A,判断没有登录重定向到统一认证中心。

2、用户提交相关信息后,认证中心对用户的信息进行鉴权,生成请 求票据。

3、认证中心将生成的请求票据返回给网站A。

4、网站A根据用户的查询依据向统一认证中心发出提取登录票据的 请求。

5、统一认证中心根据用户申请票据的依据生成登录票据,并将登录票 据返回给网站A。

6、网站A检查登录票据,若发现是无效的登录票据则显示错误信息, 否则根据用户提供的权限提供服务,完成单点登录。

如图4所示,其登出流程为:

1、用户从网站A请求登出(认证中心的登录模块接收到登出请求);

2、认证中心登录服务模块检查用户的登录信息,并使登录会话失效。

3、认证中心登录模块检查该用户在其他业务平台的登录情况,然后 依次发出登出请求(SAML-LogoutRequest),并等待处理结果。

4、等该用户所登录过的业务平台的登出操作完成后,认证中心回复 网站A登出结果(SAML-LogoutResponse)。

5、网站A受到登出结果后,做用户登出本网站的处理,清除用户登 录会话。

认证模块是确认用户身份是否合法,鉴权,然后才允许访问授权的应 用系统,以达到安全登录和访问的目的。认证模块主要由认证服务和授权 服务组成。

认证服务:

身份认证是权限控制的基础。统一认证平台提供了对用户的密码验证 和短信随机码验证的双向身份验证,可采用的是SSL的握手协议方式或 PKI数字签名证书认证方式。在用户身份通过验证后,就可以获得系统颁 发的票据,凭借此票据,用户能够访问受SSO保护的应用系统。

授权服务:

通过集中的授权服务摆脱了以往复杂繁琐的ACL权限分配方式,实现 了基于角色的权限管理模型,可以根据用户身份和现有应用资源建立对应 的访问权限。用户登录业务平台后,统一认证中心会自动赋予其相应的权 限,用户就可以顺利的访问权限范围内的各种应用系统和资源。

统一认证平台需要统一管理用户信息,用户在各系统只有一个唯一的 标识。数据库存储了所有关于用户、组、资源、应用、登录参数和访问控 制规则等信息。支持LDAP以及关系型数据库等。

由于SAML在两个拥有共享用户的站点间建立了信任关系,所以安全 性是需考虑的一个非常重要的因素。保护SAML源站点和目标站点之间通 信的安全,源站点和目标站点之间的所有通信都需要经过加密。为确保参 与SAML交互的双方站点都能验证对方的身份,统一认证中心与各业务平 台的通讯可使用数字签名加密完成,确保系统的传输安全。

为了确保用户信息和统一认证中心平台以及各业务平台的安全性, 需要对用户身份凭证的安全性提出如下方案:

1)使用SSL 3.0保证身份认证凭证的消息完整性和消息保密性;

2)使用SSL 3.0技术和XML签名技术保证身份认证凭证的验证请求;

3)使用SSL 3.0保证身份认证凭证的消息完整性和消息保密性;

使用SSL 3.0安全技术和XML签名技术保证身份认证凭证的验证请 求与返回结果的消息完整性和不可篡改。

用户浏览器访问统一认证中心或访问各业务平台传送身份认证凭证 的通信过程采用SSL通道进行加密传输。

1)用户在浏览器中输入用户名/密码提交到登录服务器的通信过程采 用SSL通道进行加密传输;

2)用户携带用户请求票据访问业务平台系统的通信过程采用SSL通 道进行加密传输;

3)签名加密算法:shal-DSA,DSA密钥位数1024(2048);

4)证书保存格式:X.509。

公共密钥基础设施PKI使得广大公众能够使用像数字签名和XML加 密这样的技术。数字签名和XML加密的核心是密钥,密钥用于数字签署文 档和验证签名,也用于加密和解密过程。对于数字签名来说,发送方不能 抵赖,接收方步能伪造。

图5给出了业务平台到认证中心之间数据传送的签名和验证流程, 图6给出了认证中心到业务平台之间数据传送的签名和验证流程。从以上 签名流程可以看出,在单点登录系统中,由于统一认证平台和业务平台之 前存在双向的数据交互,需要进行双向的签名,每次交互,系统需要使用 到两种密钥:

·统一认证中心的公钥和私钥:只有一套,业务平台接入时认证中心 将公钥发放给各平台,私钥由认证中心保管使用。

·业务平台的公钥和私钥:每个业务平台一套,公钥由认证中心保管 使用,私钥由各业务平台保管使用。

单点登录技术和身份授权两者是相辅相成的,授权是单点登录的核心 技术。没有身份认证的访问授权是不安全的,没有访问授权的身份认证时 没有意义的。本发明采用的技术是基于SAML的单点登录模式设计的认证 平台中心,并通过自定义的票据格式设计,实现了信息的安全传输。基于 SAML的XML格式保存的用户信息还基于KPI电子签名技术认证。

该单点登录系统采用了SAML架构和协议,采用对称的加密方式对用 户信息进行加密,使得系统性能和吞吐能力大大提高。其次,本系统还加 入了审计功能,并在每次验证请求时都会对用户的行为进行记录,可以详 细的分析用户行为,有利于业务的推广。

以上所述仅为本发明的较佳实施例,并不用于限制本发明,凡在本发 明的精神和原则之内所作定的任何修改、等同替换和改进等,都应包含在 本发明保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号