一种页面静态资源访问方法、装置及系统制造方法及图纸

技术编号:23860748 阅读:28 留言:0更新日期:2020-04-18 13:41
本申请实施例公开了一种页面静态资源访问方法、装置及系统。其中方法包括:接收客户端发送的针对目标页面的静态资源访问请求并根据静态资源访问请求返回目标页面对应的第一静态资源至客户端;接收客户端响应获取到第一静态资源发送的路由表请求并根据路由表请求在数据库中匹配到客户端关联用户对应的目标页面的第二静态资源的路由表后发送至客户端;接收客户端发送的针对第二静态资源的路由请求,并根据数据库中的权限信息对路由请求进行判断;若判断结果为具有权限时,发送第二静态资源至客户端;若判断结果为不具有返回权限时,发送访问失败信息至客户端。通过本申请提高了页面静态资源访问的安全性。

A static resource access method, device and system

【技术实现步骤摘要】
一种页面静态资源访问方法、装置及系统
本申请涉及页面开发访问领域,特别是涉及页面静态资源访问方法、装置及系统。
技术介绍
web开发经过了前后端不分离到前后端分离的技术演进。不论是哪种技术,都要求对其中的资源如静态资源进行安全控制,以防止攻击者获得不具有查看权限的信息。在没有做前后端分离的技术中,几乎所有资源数据都发布在后端服务器上,从而可以直接通过后端服务器进行有力的权限控制。而在前后端分离技术中,后端仅返回前端所需的动态数据,不再渲染HTML页面,不再控制前端的效果。至于前端用户看到什么效果,从后端请求的数据如何加载到前端中,都由前端代码自己决定,后端仅需开发一套逻辑对外如网页或APP提供数据即可。对应的数据交互如图1所示。在这种情况下,现有技术提供了几种前端权限控制方式:一、通过ajax调用后端接口获取权限信息,根据权限信息来判断哪些页面允许用户访问,哪些内容或信息可以展示给用户阅读查看,哪些功能可以提供用户进行操作,然后相对应的进行隐藏。二、通过ajax调用后端接口获取权限信息,根据权限信息来判断哪些页面允许用户访问,哪些内容或信息可以展示给用户阅读查看,哪些功能可以提供用户进行操作,然后相对应的进行隐藏。增加路由守卫功能,再结合通过接口获取到的权限信息,来控制前端路由的跳转限制用户页面访问。三、通过ajax调用后端接口获取权限信息,根据权限信息动态的添加路由来限制用户访问页面,根据权限信息来判断哪些内容或信息可以展示给用户阅读查看,哪些功能可以提供用户进行操作,然后相对应的进行隐藏。第一种方法,是安全性最差的,尤其是页面访问,虽然入口进行了隐藏,但是攻击者在知道页面地址的情况下可以直接进行页面访问。第二种方法是对第一种方法进行了优化处理,用户虽然直接访问会被代码控制跳转出来,但是用户依然在短时间内可以访问到没有权限进行查看的页面,虽然时间非常短,但是如果用户是一名攻击者,在具备一定技术知识的条件下,可以在页面跳转前将跳转操作抹去或将页面进行卡顿。第三种方法,做到了更好的优化处理,但是依然存在安全隐患,只是增加了攻击者的攻击成本,而攻击者依然可以通过阅读静态资源文件,js文件,进行阅读源码获取相关业务信息,攻击者技术知识足够充分下,可以破解出前端路由表重新编写一份本地js文件,利用fiddler等工具可以把资源文件替换成自己写的本地js文件,就可以进行无差别的页面访问。可见目前对于位于前端的静态资源的控制无法起到真正意义上安全控制。静态资源文件,尤其是js文件,即便前端代码做了权限控制进行了隐藏业务,但是攻击者可以轻而易举的在客户端进行查看源码从而获取相关有用信息,如果这些信息本身就静态信息也是机密的话,将是一种不可忽略的安全风险。因此目前急需一种在前后端分离背景下,可以提高安全性的页面静态资源访问方法。
技术实现思路
本申请提供了一种页面静态资源访问方法、装置及系统,以解决现有技术中前后端分离背景下静态资源访问安全性低的问题。本申请提供了如下方案:第一方面公开了一种页面静态资源访问方法,所述方法包括:根据客户端发送的针对目标页面的静态资源访问请求返回所述目标页面对应的第一静态资源至所述客户端;接收客户端响应所述第一静态资源发送的第二静态资源路由表请求并根据所述路由表请求在数据库中匹配到所述客户端关联用户对应的第二静态资源的路由表后发送至所述客户端;所述数据库中预存有第二静态资源、用户、路由表之间的映射关系;接收所述客户端发送的针对所述第二静态资源的路由请求,并根据所述数据库预存的所述映射关系判断所述客户端关联用户是否对应有所述第二静态资源的路由表;若判断结果为有时,发送所述第二静态资源至所述客户端;若判断结果为没有时,发送访问失败信息至所述客户端。优选的,所述数据库中存储有用户、静态资源文件名、路由表之间的映射关系;所述根据所述路由表请求在数据库中匹配到所述客户端关联用户对应的第二静态资源的路由表后发送至所述客户端包括:根据所述路由表请求中的所述第二静态资源的文件名匹配到所述客户端关联用户对应的第二静态资源的路由表后发送至所述客户端。优选的,所述第二静态资源的文件名通过webpack唯一生成;和/或;所述数据库中存储有通过vue-router的接口动态写入的路由表。优选的,所述根据所述数据库预存的所述映射关系判断所述客户端关联用户是否对应有所述第二静态资源的路由表包括:通过lua脚本从所述数据库中获取所述第二静态资源对应的所有路由表并判断所有路由表中是否有所述关联用户对应的路由表;或;通过lua脚本从所述数据库中获取所述关联用户对应的所有路由表并判断所有路由表中是否有所述第二静态资源对应的路由表。第二方面还公开一种页面静态资源访问方法,应用在客户端,所述方法包括:发送针对目标页面的静态资源访问请求至静态资源服务器并接收所述静态资源服务器返回的所述目标页面对应的第一静态资源;响应获取到所述第一静态资源发送针对所述目标页面对应的第二静态资源路由表请求至静态资源服务器并接收所述静态资源服务器根据所述路由表请求在数据库中匹配到的所述客户端关联用户对应的第二静态资源的路由表;所述数据库中预存有第二静态资源、用户、路由表之间的映射关系;发送针对所述第二静态资源的路由请求至所述静态资源服务器,以便所述静态资源服务器根据所述数据库预存的所述映射关系判断所述客户端关联用户是否对应有所述第二静态资源的路由表;在所述判断结果为有时,接收所述静态资源服务器返回的第二静态资源;在所述判断结果为没有时,接收所述静态资源服务器返回的访问失败信息。第三方面还公开一种页面静态资源访问装置,应用在静态资源服务器端,所述装置包括:目标页面访问请求接收单元,用于接收客户端发送的针对目标页面的静态资源访问请求;第一静态资源发送单元,用于根据所述静态资源访问请求返回所述目标页面对应的第一静态资源至所述客户端;路由表请求接收单元,用于接收客户端响应获取到所述第一静态资源发送的路由表请求;路由表发送单元,用于根据所述路由表请求在数据库中匹配到所述客户端关联用户对应的第二静态资源的路由表后发送至所述客户端;所述数据库中预存有第二静态资源、用户、路由表之间的映射关系;第二静态资源路由请求接收单元,接收所述客户端发送的针对所述第二静态资源的路由请求;权限判断单元,用于根据所述数据库预存的所述映射关系判断所述客户端关联用户是否对应有所述第二静态资源的路由表;结果返回单元,用于在判断结果为有时,发送所述第二静态资源至所述客户端,在判断结果为没有时,发送访问失败信息至所述客户端。优选的,所述数据库中存储有用户、静态资源文件名、路由表之间的映射关系;路由表发送单元,具体用于根据所述路由表请求中的所述第二静态资源的文件名匹配到所述客户端关联用户对应的所本文档来自技高网
...

【技术保护点】
1.一种页面静态资源访问方法,应用在静态资源服务器中,其特征在于,所述方法包括:/n根据客户端发送的针对目标页面的静态资源访问请求返回所述目标页面对应的第一静态资源至所述客户端;/n接收客户端响应所述第一静态资源发送的第二静态资源路由表请求并根据所述路由表请求在数据库中匹配到所述客户端关联用户对应的第二静态资源的路由表后发送至所述客户端;所述数据库中预存有第二静态资源、用户、路由表之间的映射关系;/n接收所述客户端发送的针对所述第二静态资源的路由请求,并根据所述数据库预存的所述映射关系判断所述客户端关联用户是否对应有所述第二静态资源的路由表;/n若判断结果为有时,发送所述第二静态资源至所述客户端;/n若判断结果为没有时,发送访问失败信息至所述客户端。/n

【技术特征摘要】
1.一种页面静态资源访问方法,应用在静态资源服务器中,其特征在于,所述方法包括:
根据客户端发送的针对目标页面的静态资源访问请求返回所述目标页面对应的第一静态资源至所述客户端;
接收客户端响应所述第一静态资源发送的第二静态资源路由表请求并根据所述路由表请求在数据库中匹配到所述客户端关联用户对应的第二静态资源的路由表后发送至所述客户端;所述数据库中预存有第二静态资源、用户、路由表之间的映射关系;
接收所述客户端发送的针对所述第二静态资源的路由请求,并根据所述数据库预存的所述映射关系判断所述客户端关联用户是否对应有所述第二静态资源的路由表;
若判断结果为有时,发送所述第二静态资源至所述客户端;
若判断结果为没有时,发送访问失败信息至所述客户端。


2.如权利要求1所述的页面静态资源访问方法,其特征在于,所述数据库中存储有用户、静态资源文件名、路由表之间的映射关系;
所述根据所述路由表请求在数据库中匹配到所述客户端关联用户对应的第二静态资源的路由表后发送至所述客户端包括:
根据所述路由表请求中的所述第二静态资源的文件名匹配到所述客户端关联用户对应的第二静态资源的路由表后发送至所述客户端。


3.如权利要求2所述的页面静态资源访问方法,其特征在于,
所述第二静态资源的文件名通过webpack唯一生成;
和/或;
所述数据库中存储有通过vue-router的接口动态写入的路由表。


4.如权利要求1-3任何一项所述的页面静态资源访问方法,其特征在于,所述根据所述数据库预存的所述映射关系判断所述客户端关联用户是否对应有所述第二静态资源的路由表包括:
通过lua脚本从所述数据库中获取所述第二静态资源对应的所有路由表并判断所有路由表中是否有所述关联用户对应的路由表;
或;
通过lua脚本从所述数据库中获取所述关联用户对应的所有路由表并判断所有路由表中是否有所述第二静态资源对应的路由表。


5.一种页面静态资源访问方法,其特征在于,所述方法包括:
发送针对目标页面的静态资源访问请求至静态资源服务器并接收所述静态资源服务器返回的所述目标页面对应的第一静态资源;
响应获取到所述第一静态资源发送针对所述目标页面对应的第二静态资源路由表请求至静态资源服务器并接收所述静态资源服务器根据所述路由表请求在数据库中匹配到的所述客户端关联用户对应的第二静态资源的路由表;所述数据库中预存有第二静态资源、用户、路由表之间的映射关系;
发送针对所述第二静态资源的路由请求至所述静态资源服务器,以便所述静态资源服务器根据所述数据库预存的所述映射关系判断所述客户端关联用户是否对应有所述第二静态资源的路由表;
在所述判断结果为有时,接收所述静态资源服务器返回的第二静态资源;
在所述判断结果为没有时,接收所述静态资源服务器返回的访问失败信息。


6.一种页面静态资源访问装置,其特征在于,所述装置包括:
目标页面访问请求接收单元,用于接收客户端发送的针对目标页面的静态资源访问请求;
第一静态资源发送单元,用于根据所述静态资源访问请求返回所述目标页面对应的第一静态资源至所述客户端;
路由表请求接收单元,用于接收客户端响应获取到所述...

【专利技术属性】
技术研发人员:张汉卿杨成颖孙迁
申请(专利权)人:苏宁云计算有限公司
类型:发明
国别省市:江苏;32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1