首页> 中国专利> 一种基于SAML的跨域单点登录模型

一种基于SAML的跨域单点登录模型

摘要

本发明属于安全域内的单点登录技术领域,具体涉及一种基于SAML的跨域单点登录模型。本发明包括(1)认证子模块完成用户与计算机绑定关系的认证过程、安全域内用户的身份认证和外安全域用户的身份认证;(2)用户通过主机认证和人员身份认证后通过访问控制接口进行权限调用;(3)通过调用相同的审计接口来实现各个模块相关功能点的集中审计;(4)域内的用来鉴别用户身份的服务器从本域的CA中心取得数字证书;(5)本域的CA中心向本安全域内的实体用户发放证书。网关群的提出很好的解决了单网关负载低的严重问题,不但提高了数据转发效率,同时也使得整个跨域单点登录系统更加稳定可靠。

著录项

  • 公开/公告号CN105072128A

    专利类型发明专利

  • 公开/公告日2015-11-18

    原文格式PDF

  • 申请/专利权人 哈尔滨工程大学;

    申请/专利号CN201510534726.8

  • 发明设计人 孙建国;李博权;李佳楠;徐国坤;

    申请日2015-08-27

  • 分类号H04L29/06;H04L29/08;

  • 代理机构

  • 代理人

  • 地址 150001 黑龙江省哈尔滨市南岗区南通大街145号哈尔滨工程大学科技处知识产权办公室

  • 入库时间 2023-12-18 12:02:04

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2022-12-09

    专利权人的姓名或者名称、地址的变更 IPC(主分类):H04L29/06 专利号:ZL2015105347268 变更事项:专利权人 变更前:深圳市蓝鹰立德软件咨询有限公司 变更后:深圳市蓝鹰立德科技有限公司 变更事项:地址 变更前:518000 广东省深圳市福田区梅林街道梅都社区中康路128号卓越梅林中心广场(北区)1号楼1201A 变更后:518000 广东省深圳市南山区粤海街道高新区社区科技南路16号深圳湾科技生态园11栋A1302

    专利权人的姓名或者名称、地址的变更

  • 2019-06-14

    授权

    授权

  • 2015-12-16

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

    实质审查的生效

  • 2015-11-18

    公开

    公开

说明书

技术领域

本发明属于安全域内的单点登录技术领域,具体涉及一种基于SAML的跨域单点登录模 型。

背景技术

单点登录模型解决安全域内应用系统的集中管理,给用户、管理员和开发人员带来了极 大的方便。但是网络信息化的发展促使大量的企业出现了分支,所有的分支企业要求实现业 务系统的共享和业务数据的同步,所以如何实现异域部署的业务系统的集中管理和便捷的访 问已经变得越来越重要。例如,A安全域内的用户想要访问B安全域内受限访问的应用系统, 由于这些应用系统属于不同的安全域,不存在互信关系,所以安全域需要对外来用户的身份 进行认证,所以用户需要记住大量的UserName和PassWord,使用户操作起来极其的不方便。

发明内容

本发明的目的在于提供一种基于SAML的跨域单点登录模型。

本发明的目的是这样实现的:

(1)认证子模块完成用户与计算机绑定关系的认证过程、安全域内用户的身份认证和外 安全域用户的身份认证;

(2)用户通过主机认证和人员身份认证后通过访问控制接口进行权限调用;

(3)通过调用相同的审计接口来实现各个模块相关功能点的集中审计;

(4)域内的用来鉴别用户身份的服务器从本域的CA中心取得数字证书;

(5)本域的CA中心向本安全域内的实体用户发放证书。

在进行用户的身份认证时,首先确定用户是安全域内的用户还是安全域外的用户,然后 根据用户提交的证书,来完成用户身份的确认。

通过两个接口建立域内和域间信任模型,其中issueCert模型用来向安全域内的实体发放 证书;当安全域内的用户离开或者有必要取其权限的时候,revokeCert模型用来撤销实体的 证书。

本发明的有益效果在于:

(1)将前人提出的基于网关的单点登录模型中的单网关扩展成了网关群,网关群中同时 存在业务网关和断言网关,前者作为请求方和服务提供方之间的通信桥梁,后者主要是用来 存储所有用户的断言信息。为了增加整个网关群的稳定性,断言网关不是固定不变的,业务 网关可即随时替换当前出现故障的断言网关。网关群的提出很好的解决了单网关负载低的严 重问题,不但提高了数据转发效率,同时也使得整个跨域单点登录系统更加稳定可靠。

(2)网关群的核心是负载均衡调度算法,基于SAML的跨域单点登录模型中的网关群完成 了对该算法的调度。该算法是在传统的加权轮转调度算法的基础之上进行改进后实现的,它 本身不要求网关群中的业务网关的负载能力完全一样,因为改进负载均衡调度算法会实时的 修改网关群中业务网关的负载权值,最终使得所有正常工作的业务网关之间实现网络数据流 量的负载均衡。

附图说明

图1模型权限到用户的模型;

图2域内信任模型建立过程;

图3域间信任模型建立过程;

图4WRR算法测试结果;

图5改进算法测试结果。

具体实施方式

下面结合附图对本发明做进一步描述。

本发明提出的是一种基于SAML的跨域单点登录模型。(1)认证子模块完成用户与计算机 绑定关系的认证过程、安全域内用户的身份认证和外安全域用户的身份认证;(2)用户通过 主机认证和人员身份认证后通过访问控制接口进行权限调用;(3)通过调用相同的审计接口 来实现各个模块相关功能点的集中审计;(4)域内的用来鉴别用户身份的服务器从本域的CA 中心取得数字证书;(5)本域的CA中心向本安全域内的实体用户发放证书。本发明提出的跨 域单点登录模型是建立在安全域内的单点登录技术的基础之上,使用户在访问不同安全域的 应用系统时也能实现单点登录机制。

本发明提出提出的跨域单点登录模型是建立在安全域内的单点登录技术的基础之上,使 用户在访问不同安全域的应用系统时也能实现单点登录机制。

本发明以现有的研究成果为依托,提出了改进的跨域单点登录模型。该模型由安全域、 网关群和应用系统等组成。安全域其实就是本地的一个比较独立的系统;网关群是安全域的 核心,它是在传统的基于网关的单点登录模型基础之上提出来的,应用系统隶属于不同的SSO 系统,它们主要是为发起请求的用户提供服务。具体步骤包括:

1.对改进负载均衡调度算法进行预处理。

动态加权轮转调度算法主要根据网关群中每台业务网关的整体性能指标和整体负载指标 来动态的更新其负载权值。整体性能指标在系统运行的过程中一般是不会改变的,所有这些 性能参数在系统启动的过程中,网关中的业务网关就会将自己的性能参数(包括CPU的处理 速率、内存的大小以及读写磁盘的速率)交给负载均衡器。整体负载指标在系统的运行过程 中是不断的变化的,本算法要求网关群中的业务网关实时的将负载性能参数传给负载均衡器, 以便其做出修改业务网关负载权值的动态决策。假如当前网关群中有n台业务网关正常工作, 同时用一个集合W={Wi,i=1,2,…,n}表示,在改进的负载均衡调度算法中Ci表示网关群中 Wi这台业务网关的CPU处理速度,Mi表示网关群中Wi这台业务网关内存的大小,Fi表示网关 群中Wi这台业务网关读取磁盘速度的大小。

首先,负载均衡调度器读取网关群中具体业务网关提交过来的各个性能参数的值;

其次,求出网关群中所有的业务网关的各个性能参数的最大值,具体计算公式可以表示 如下:

CMAX=max(C1,C2,…,Cn);

MMAX=max(M1,M2,…,Mn);

FMAX=max(F1,F2,…,Fn);

其中,CMAX表示当前所有的业务网关中,CPU处理速率的最大值;MMAX表示当前所有 的业务网关中,内存的最大值;FMAX表示当前所有的业务网关中,读写磁盘速率的最大值。

再次,求出网关群中各个业务网关的每个性能参数值与网关群中相对应的该性能参数最 大值的比值,具体计算公式如下:

Cpi=CiCMAX

Mpi=MiMMAX

Fpi=FiFMAX

其中,Cpi表示Wi这台业务网关的CPU处理速度和CMAX的比值;Mpi表示Wi这台业务网 关的内存大小和MMAX的比值;Fpi表示Wi这台业务网关的磁盘读写速率和FMAX的比值。

2、算法的实现。

依据模糊集理论的加权平均方法对业务网关的性能参数进行整合处理,最终得到一个能 代表业务网关当前整体性能水平的数值。在改进的负载均衡调度算法中引进K1,K2和K3三个 参数(他们的大小都介于0和1之间,同时满足K1+K2+K3=1,其中K1、K2、K3这三个参数 值不是固定不变的,要根据网关群的负载均衡的效果做相应的调整),本算法中将业务网关的 综合性能指标表示如下:

Li=13*(K1*Cpi*Uci+K2*Fpi*Ufi+K3*Mpi*Umi);Tpi=13*(K1*Cpi+K2*Fpi+K3*Mpi)

改进算法中用Li来表示Wi这台业务网关的承担的业务转发情况,具体的计算公式表示如 下:

其中:Uci表示Wi这台业务网关当前的CPU的整体利用率;Ufi表示Wi这台业务网关的磁 盘平均读写速率的使用率;Umi表示Wi这台业务网关当前内存使用率。

在改进的负载均衡调度算法中,TPi表示Wi这台业务网关的整体性能指标,Li表示Wi的 整体负载指标,由于真实环境中TPi不仅仅是与算法中列举的几个性能参数(CPU处理速率、 内存的大小、磁盘的读写速率大小)有关系,还可能和一些不可控的因素有关系,例如温度、 湿度、风速等。在该算法中引入Ci大小为0-1)这个变量来度量这些不可控因素对于业务网 关的数据处理能力的影响。如果业务网关的性能相对稳定,Ci的值可以取的稍大,如果业务 网关的性能水平不是很稳定,那么Ci的值可以取的较小。该算法中用Ci*TPi的结果来衡量 业务网关的运行稳定性。

在该算法中,用Ci*TPi-Li大小来表示Wi这台业务网关当前剩余的负载能力。综合上 面的算法的设计思路,得出最终的权值Qi计算公式:

Qi=100*Ci*TPi-LiΣi=1m(Ci*TPi-Li);

3、模型的实现:

建立模型首先通过认证子模块完成用户与计算机绑定关系的认证过程、安全域内用户的 身份认证和外安全域用户的身份认证;之后用户通过主机认证和人员身份认证后通过访问控 制接口进行权限调用,并通过调用相同的审计接口来实现各个模块相关功能点的集中审计; 最后域内的用来鉴别用户身份的服务器从本域的CA中心取得数字证书,以及本域的CA中心 向本安全域内的实体用户发放证书。通过以上几个模块的实现来实现一种基于SAML的跨域 单点登录模型。

本发明具有以下优点:

(1)将前人提出的基于网关的单点登录模型中的单网关扩展成了网关群,网关群中同时 存在业务网关和断言网关,前者作为请求方和服务提供方之间的通信桥梁,后者主要是用来 存储所有用户的断言信息。为了增加整个网关群的稳定性,断言网关不是固定不变的,业务 网关可即随时替换当前出现故障的断言网关。网关群的提出很好的解决了单网关负载低的严 重问题,不但提高了数据转发效率,同时也使得整个跨域单点登录系统更加稳定可靠。

(2)网关群的核心是负载均衡调度算法,基于SAML的跨域单点登录模型中的网关群 完成了对该算法的调度。该算法是在传统的加权轮转调度算法的基础之上进行改进后实现的, 它本身不要求网关群中的业务网关的负载能力完全一样,因为改进负载均衡调度算法会实时 的修改网关群中业务网关的负载权值,最终使得所有正常工作的业务网关之间实现网络数据 流量的负载均衡。

下面结合实验实例对本发明做更详细地描述:

1.安全域的实现:

务模块主要涉及到的子模块主要是:认证模块、授权模块、审计模块。下面分别对这三 个主要的子模块进行简单的介绍。

(1)认证模块的实现

认证子模块主要完成的工作是完成用户与计算机绑定关系的认证过程、安全域内用户的 身份认证和外安全域用户的身份认证。

在验证用户是否有权访问该计算机的时候需要调用char*getComputerIps(longuserId),其 中userId代表用登录计算机的Id;返回参数是char*类型,代表是该用户能访问的计算机的所 有的IP,每个IP之间用逗号隔开,例192.168.140.14,192.168.140.23。

在进行用户的身份验证时,首先要确定用户是安全域内的用户还是安全域外的用户,然 后根据用户提交的证书,来完成用户身份的确认。为了完成用户的身份认证过程,在完成认 证响应、断言生成以、同步断言等能。

(2)授权模块的实现

用户通过主机认证和人员身份认证之后就可以通过访问控制接口进行权限调用,调用权 限包括两种方式:“一次一问”和“一次调用全部返回”两种方式。

在完成授权的过程中,比较关键一个形参是roleId和domainCode,特别是跨安全域的授 权工作时候,由于不同安全域内可能存在相同userid的用户,本文中通过 roleId+domainCode+userid来唯一表示一个用户,最终的结果是将权限授予rileId,然后roleId 再和用户绑定,完成授权工作,如图1是模型权限到用户的模型。

(3)审计模块的实现

本文改进的跨安全域单点登录模型实现了相关功能点的集中审计,各个模块的审计都通 过调用相同的审计接口来实现。

2.域间信任模型的实现

本文改进的跨安全域单点登录模型是通过混合PKI信任模型来取得相互取信的,具体的 说就是:在域内采取的是层级模型;域间采取网状模型。下面分别给出域内信任模型和域间 信任模型的建立过程。

域内信任模型建立:

(1)域内的用来鉴别用户身份的服务器从本域的CA中心取得数字证书。

(2)同理,本域的CA中心也要向本安全域内的实体用户(计算机或者是人)发放证书, 如图2是安全域内信任模型的建立过程。

本系统在建立域内和域间信任模型过程中主要涉及到两个重要接口:issueCert和 revokeCert(issueCert和revokeCert分别是发放证书和取消证书的两个接口)。其中issueCert 主要是用来向安全域内的实体发放证书;当安全域内的用户离开或者有必要取其权限的时候, revokeCert用来撤销实体的证书。

域间信任模型的建立:如图3所示A和B是两个不同的安全域,A的实体用户U1与B 取得互信的过程是:首先A的CA中心向自己实体用户U1发放证书1,然后A再给B发放 数字证书3,最后B给A发放数字证书2。

从上图中可以看出如果U1要验证证书3的合法性,在这过程中安全域A起到了关键性 的作用,因为U1信任A,所以U1和安全域B之间也是互信的。域间建立信任模型涉及到的 接口也是issueCert和revokeCert,只是在调用的过程中传输的参数不一样。

3.系统性能测试

(1)在瞬时压力测试方法:该方法要求10个终端在尽可能短的时间内向网关群发送实 验要求数量的请求。同时在客户端还要记录请求从发出到返回响应结果的时间开销。为了发 到上述的要求,在测试方法中实现10台终端在5秒内分别发出的请求数为:20、60、100、 140、180、220、260、300、340、380、420、460。向集群发出的数据包越多,给集群造成的 压力就会越大,同时如果网关群的平均响应时间越小则说明网关群的负载均衡的水平就越好。 测试结果如图4所示。

(2)负载效果测试的测试方法:该方法要求在一段持续的时间内向网关群发送服务请求, 目的是为了在这段持续的时间内网关群中的各个业务网关之间是否达到了负载均衡。在该测 试方案中约定10个终端PC在40s内持续向网关群发送服务请求,要求每个终端机每1秒发 送2个请求。测试结果如图5所示。

去获取专利,查看全文>

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号