本发明属于计算机,具体涉及一种nginx静态资源访问的第三方认证方法。
背景技术:
1、当前nginx对服务器静态资源的第三方认证主要是ngx_http_auth_request_module模块,该认证的工作流程是客户端发送http访问请求给nginx服务器,nginx服务器向鉴权服务器请求权限,鉴权服务器返回鉴权结果给nginx服务器,鉴权通过之后会同意访问资源服务器,资源服务器通过nginx将数据返回给客户端,目前的缺陷是静态资源的访问路径无法实时修改访问路径,路径一直不变,当鉴权服务器失去能力或者鉴权方式被破解之后会面临数据泄露的风险。
技术实现思路
1、为克服上述现有技术的不足,本发明的目的是提供一种nginx静态资源访问的第三方认证方法,具有以下特点。
2、为实现上述目的,本发明采用的技术方案是:一种nginx静态资源访问的第三方认证方法,包括以下步骤:
3、步骤1,由客户端发起静态资源地址请求,服务器收到请求后,将需要返回的静态资源地址进行加密,将当前时间戳+随机字符串生成一个md5值,该值不重复,生成的md5值作为nginx静态资源访问的短链接地址的一部分;
4、步骤2,客户端收到服务器返回的短链接地址后,发起静态资源的请求,服务器收到静态资源请求后,首先针对短链接地址进行校验,如果校验通过,服务器将返回静态资源,否则,短链接地址失效,需要重新获取静态资源的短链接地址;
5、步骤3,通过短链接地址访问服务器资源时,服务器校验连接时间,连接访问的远端地址,任意一条件不满足时,短链接地址将失效;失效后,需要重新执行步骤1,获取短链接地址。
6、所述的哈希值为:key:path,value:/upgrade/。
7、本发明的有益效果是:
8、本方案引进短链接对全路径进行转发,在不改变实际全路径的前提下,已最小的代价降低服务器io消耗,通过前后端的约定规则不定时修改nginx短链接配置,动态加载nginx配置,实现静态资源访问路径定时变化。
9、当前服务器有一需要对外发布的共享文件实际路径为/www/hello/dow/ics/download.exe,通过nginx做静态资源实现共享,在不使用短链接的时候前端访问路径为:http:/ip:port/www/download.exe?session=加密串,对/www/hello/dow/ics路径使用短链接,转发为/upgrade,客户端刚开始访问的静态资源路径为:http:/ip:port/upgrade/download.exe?session=加密串,后端在不修改实际路径的前提下,通过定时修改nginx的短链接配置,此时之前的访问路径就过期了,下一次客户端访问的静态资源路径修改为其他路径,例如:
10、http:/i p:port/upgrade1?sess ion=加密串、
11、http:/i p:port/upgrade2?sess ion=加密串等。
1.一种nginx静态资源访问的第三方认证方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的一种nginx静态资源访问的第三方认证方法,其特征在于,所述的哈希值为:key:path,value:/upgrade/。