基于单点登录获取BI报表的系统、方法、电子设备及介质与流程

文档序号:30086986发布日期:2022-05-18 06:09阅读:89来源:国知局
基于单点登录获取bi报表的系统、方法、电子设备及介质
技术领域
:1.本发明涉及互联网
技术领域
:,尤其涉及一种基于单点登录获取bi报表的系统、方法、电子设备及介质。
背景技术
::2.现在市面上公司的报表制作基本上都会选择bi工具,市面上也出现了越来越多的简单易上手的bi工具,如tableau,guanbi,smartbi,powerbi等。3.每个bi工具都有相似的api去集成到业务系统中展示报表,但通常bi工具都是使用多账号集成的方式,需要对照企业的用户权限关系去创建用户关系。4.一般银行内业务系统集成bi工具方案中都是按照多账号集成的方式,这种方式如果在业务系统面对多级银行的情况下,bi工具需要一一对照每级银行的用户权限关系去创建用户关系,导致业务方要梳理所有银行的用户权限关系,大大加深了工作量,而且如果业务放在行外,业务方也不一定能拿到银行的用户权限关系。技术实现要素:5.本发明的目的在于提供一种基于单点登录获取bi报表的系统、方法、电子设备及介质,该基于单点登录获取bi报表的方法能够解决现有技术中bi工具需要对照企业的用户权限关系去创建用户关系的问题。6.为了实现上述目的,本发明提供如下技术方案:7.本发明实施例提供一种基于单点登录获取bi报表的方法,所述方法具体包括:8.用户发送请求访问指令,其中,所述请求访问指令中包括层级结构参数;9.sos认证中心基于所述请求访问指令对用户进行认证,若认证成功,创建所述用户与所述sos认证中心之间的全局会话,并创建授权令牌;10.所述sos认证中心带着所述授权令牌跳转至用户请求访问的系统;11.当所述授权令牌有效时,创建用户与系统之间的局部会话;12.所述用户与所述系统之间有局部会话时,用户发送请求访问指令后,所述系统基于所述层级结构参数对所述用户进行权限管控,获取所述用户所在层级能获取到的报表数据。13.在上述技术方案的基础上,本发明还可以做如下改进:14.进一步地,所述用户发送请求访问指令,其中,所述请求访问指令中包括层级结构参数,包括:15.判断所述用户是否登陆,当所述用户未登录时,跳转至所述所述sos认证中心,并将所述系统的地址作为参数发送至所述sos认证中心。16.进一步地,所述用户发送请求访问指令,其中,所述请求访问指令中包括层级结构参数,还包括:17.所述sos认证中心将未登录的用户引导至登录页面;18.所述用户提交登录申请。19.进一步地,所述当所述授权令牌有效时,创建用户与系统之间的局部会话,包括:20.所述系统接收所述授权令牌后,向所述sos认证中心检验所述授权令牌是否有效。21.进一步地,所述用户与所述系统之间有局部会话时,用户发送请求访问指令后,所述系统基于所述层级结构参数对所述用户进行权限管控,获取所述用户所在层级能获取到的报表数据,包括:22.基于所述层级结构参数的字符串长度确定所述用户所在的层级,限制用户获取到所在层级对应的报表数据。23.进一步地,所述用户与所述系统之间有局部会话时,用户发送请求访问指令后,所述系统基于所述层级结构参数对所述用户进行权限管控,获取所述用户所在层级能获取到的报表数据,还包括:24.通过所述层级结构参数的具体内容,确定用户身份,获取具体的报表数据。25.一种基于单点登录获取bi报表的系统,包括:26.客户端,用于发送请求访问指令,其中,所述请求访问指令中包括层级结构参数;27.sos认证中心,用于基于所述请求访问指令对用户进行认证,若认证成功,创建所述用户与所述sos认证中心之间的全局会话,并创建授权令牌,所述sos认证中心带着所述授权令牌跳转至用户请求访问的系统,当所述授权令牌有效时,创建用户与系统之间的局部会话;28.权限管控模块,用于所述用户与所述系统之间有局部会话时,用户发送请求访问指令后,所述系统基于所述层级结构参数对所述用户进行权限管控,获取所述用户所在层级能获取到的报表数据。29.进一步地,所述基于单点登录获取bi报表的系统还包括判断模块,所述判断模块用于判断所述用户是否登陆,当所述用户未登录时,跳转至所述所述sos认证中心,并将所述系统的地址作为参数发送至所述sos认证中心。30.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如所述方法的步骤。31.一种非暂态计算机可读介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现所述方法的步骤。32.本发明具有如下优点:33.本发明中的基于单点登录获取bi报表的方法,用户发送请求访问指令,其中,所述请求访问指令中包括层级结构参数;sos认证中心基于所述请求访问指令对用户进行认证,若认证成功,创建所述用户与所述sos认证中心之间的全局会话,并创建授权令牌;所述sos认证中心带着所述授权令牌跳转至用户请求访问的系统;当所述授权令牌有效时,创建用户与系统之间的局部会话;所述用户与所述系统之间有局部会话时,用户发送请求访问指令后,所述系统基于所述层级结构参数对所述用户进行权限管控,获取所述用户所在层级能获取到的报表数据;用户进行单点登录时除了传播授权令牌外还携带层级结构参数,对限制资源进行解密的同时也对用户所在的层级所能获取到的资源进行权限的控制,保障了银行内部数据的安全性。解决了现有技术中bi工具需要对照企业的用户权限关系去创建用户关系的问题。附图说明34.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。35.图1为本发明基于单点登录获取bi报表的方法的流程图;36.图2为本发明基于单点登录获取bi报表的系统的框图;37.图3为本发明提供的电子设备实体结构示意图。38.附图标记说明39.输出模块10,sos认证中心20,权限管控模块30,判断模块40,电子设备50,处理器501,存储器502,总线503。具体实施方式40.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。41.本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。42.应当理解,在本发明的各种实施例中,各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。43.应当理解,在本发明中,“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。44.应当理解,在本发明中,“多个”是指两个或两个以上。“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。“包含a、b和c”、“包含a、b、c”是指a、b、c三者都包含,“包含a、b或c”是指包含a、b、c三者之一,“包含a、b和/或c”是指包含a、b、c三者中任1个或任2个或3个。45.应当理解,在本发明中,“与a对应的b”、“与a相对应的b”、“a与b相对应”或者“b与a相对应”,表示b与a相关联,根据a可以确定b。根据a确定b并不意味着仅仅根据a确定b,还可以根据a和/或其他信息确定b。a与b的匹配,是a与b的相似度大于或等于预设的阈值。46.取决于语境,如在此所使用的“若”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。47.下面以具体地实施例对本发明的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。48.图1为本发明基于单点登录获取bi报表的方法实施例流程图,如图1所示,本发明实施例提供的一种基于单点登录获取bi报表的方法包括以下步骤:49.s101,用户发送请求访问指令;50.具体的,其中,所述请求访问指令中包括层级结构参数;判断所述用户是否登陆,当所述用户未登录时,跳转至所述所述sos认证中心20,并将所述系统的地址作为参数发送至所述sos认证中心20;51.所述sos认证中心20将未登录的用户引导至登录页面;所述用户提交登录申请。52.用户通过浏览器发送请求访问指令至系统,请求访问系统的服务资源,所述服务资源为受保护资源;53.首先,需要判断用户是否登陆,当系统发现用户没有登陆时,重定向到sos认证中心20,并将请求地址作为参数传输到所述sos认证中心20。(重定向(redirect)就是通过各种方法将各种网络请求重新定个方向转到其它位置(如:网页重定向、域名的重定向、路由选择的变化也是对数据报文经由路径的一种重定向)。54.sso单点登录是目前比较流行的企业业务整合的解决方案之一。sso的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。sso是一种统一认证和授权机制,指访问同一服务器不同应用中的受保护资源的同一用户,只需要登录一次,即通过一个应用中的安全验证后,再访问其他应用中的受保护资源时,不再需要重新登录验证。55.s102,sos认证中心基于请求访问指令对用户进行认证,若认证成功,创建用户与sos认证中心之间的全局会话,并创建授权令牌;56.具体的,授权令牌(ssotoken),token:计算机术语,令牌。令牌是一种能够控制站点占有媒体的特殊帧,以区别数据帧及其他控制帧。token其实说的更通俗点可以叫暗号,在一些数据传输之前,要先进行暗号的核对,不同的暗号被授权不同的数据操作。用户第一次登录,服务器通过数据库校验其userid和password合法,则再根据随机数字+userid+当前时间戳再经过des加密生成一个token串,当然具体生成token的方式是开发自己定义的。token是在服务端产生的,如果前端使用用户名/密码向服务端请求认证,服务端认证成功,那么在服务端会返回token给前端。前端可以在每次请求的时候带上token证明自己的合法地位。57.s103,sos认证中心带着授权令牌跳转至用户请求访问的系统;58.具体的,sos认证中心20带着授权令牌重定向到之前的请求地址。sos认证中心20指的是,每个应用系统都拥有独立的用户信息管理功能,用户信息的格式、命名与存储方式也多种多样。当用户需要使用多个应用系统时就会带来用户信息同步问题。用户信息同步会增加系统的复杂性,增加管理的成本。解决用户同步问题的根本办法是建立统一用户管理系统,统一存储所有应用系统的用户信息,应用系统对用户的相关操作全部通过此系统完成,而授权等操作则由各应用系统完成,即统一存储、分布授权。59.s104,当授权令牌有效时,创建用户与系统之间的局部会话;60.具体的,所述系统接收所述授权令牌后,向所述sos认证中心20检验所述授权令牌是否有效。61.s105,用户与系统之间有局部会话时,用户发送请求访问指令后,系统基于层级结构参数对用户进行权限管控,获取用户所在层级能获取到的报表数据;62.具体的,基于所述层级结构参数的字符串长度确定所述用户所在的层级,限制用户获取到所在层级对应的报表数据。通过所述层级结构参数的具体内容,确定用户身份,获取具体的报表数据。63.用户发送请求访问指令后,若已经创建用户与系统之间的局部会话,对用户的请求访问指令直接放行,用户通过浏览器访问系统的受保护资源时,会携带一个层级结构相关参数进行鉴权,以便于数据权限的控制;系统的受保护资源在业务前台的显示,会根据用户携带的层级结构参数进行数据查看权限的限制。64.直接采用单一账号用单点登录的方式去集成bi工具的方案,业务方只需要用一个账号去登录业务系统,然后系统就能通过数据源的参数进行权限管控。65.用户进行登录后,所携带的层级结构参数也会随着授权令牌一起传输到系统中,访问系统中受保护资源的同时,也会根据授权参数对此用户所能获取到的内容进行权限的管控。66.用户进行单点登录时除传输授权令牌外还携带银行层级的参数,对受限制资源进行解密的同时也对此用户所在层级所能获取的资源进行权限的控制。67.应用程序加入了sso单点登录协议,在提高了用户效率,减轻管理用户帐号负担的同时,传输授权令牌过程中携带的银行层级的参数,也对银行内部数据的安全性多了一层保障。68.图2为本发明基于单点登录获取bi报表的系统实施例流程图;如图2所示,本发明实施例提供的一种基于单点登录获取bi报表的系统,包括以下步骤:69.输出模块,用于发送请求访问指令,其中,所述请求访问指令中包括层级结构参数;70.sos认证中心20,用于基于所述请求访问指令对用户进行认证,若认证成功,创建所述用户与所述sos认证中心20之间的全局会话,并创建授权令牌,所述sos认证中心20带着所述授权令牌跳转至用户请求访问的系统,当所述授权令牌有效时,创建用户与系统之间的局部会话;所述系统接收所述授权令牌后,向所述sos认证中心20检验所述授权令牌是否有效;71.权限管控模块30,用于所述用户与所述系统之间有局部会话时,用户发送请求访问指令后,所述系统基于所述层级结构参数对所述用户进行权限管控,获取所述用户所在层级能获取到的报表数据。基于所述层级结构参数的字符串长度确定所述用户所在的层级,限制用户获取到所在层级对应的报表数据;通过所述层级结构参数的具体内容,确定用户身份,获取具体的报表数据。72.所述基于单点登录获取bi报表的系统还包括判断模块40,所述判断模块40用于判断所述用户是否登陆,当所述用户未登录时,跳转至所述所述sos认证中心20,并将所述系统的地址作为参数发送至所述sos认证中心20。73.图3为本发明实施例提供的电子设备实体结构示意图,如图3所示,电子设备50包括:处理器501(processor)、存储器502(memory)和总线503;74.其中,处理器501、存储器502通过总线503完成相互间的通信;75.处理器501用于调用存储器502中的程序指令,以执行上述各方法实施例所提供的方法,例如包括:用户发送请求访问指令,其中,所述请求访问指令中包括层级结构参数;sos认证中心20基于所述请求访问指令对用户进行认证,若认证成功,创建所述用户与所述sos认证中心20之间的全局会话,并创建授权令牌;所述sos认证中心20带着所述授权令牌跳转至用户请求访问的系统;当所述授权令牌有效时,创建用户与系统之间的局部会话;所述用户与所述系统之间有局部会话时,用户发送请求访问指令后,所述系统基于所述层级结构参数对所述用户进行权限管控,获取所述用户所在层级能获取到的报表数据。76.本实施例提供一种非暂态计算机可读介质,非暂态计算机可读介质存储计算机指令,计算机指令使计算机执行上述各方法实施例所提供的方法,例如包括:用户发送请求访问指令,其中,所述请求访问指令中包括层级结构参数;sos认证中心20基于所述请求访问指令对用户进行认证,若认证成功,创建所述用户与所述sos认证中心20之间的全局会话,并创建授权令牌;所述sos认证中心20带着所述授权令牌跳转至用户请求访问的系统;当所述授权令牌有效时,创建用户与系统之间的局部会话;所述用户与所述系统之间有局部会话时,用户发送请求访问指令后,所述系统基于所述层级结构参数对所述用户进行权限管控,获取所述用户所在层级能获取到的报表数据。77.本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。78.以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。79.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分的方法。80.最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。81.以上所述仅为本技术的优选实施例而已,并不用于限制本技术,对于本领域的技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1