Java 检索脚本时不允许访问

Java 检索脚本时不允许访问,java,spring,jsp,jersey,csrf,Java,Spring,Jsp,Jersey,Csrf,我有一组微服务运行在Netflix Zuul网关后面,该网关实现基于OAUTH2的安全性,并在成功验证后向浏览器发出JWT 所有正常的SpringMVC页面都显示得很好,但我有一个应用程序使用Jersey和JSP页面,Zuul服务器通过401错误阻止检索任何CSS和JS文件 在浏览JSP页面时,如何包含当前用户的JWT <!DOCTYPE html> <%@ page contentType="text/html" language="java" pageEncoding="

我有一组微服务运行在Netflix Zuul网关后面,该网关实现基于OAUTH2的安全性,并在成功验证后向浏览器发出JWT

所有正常的SpringMVC页面都显示得很好,但我有一个应用程序使用Jersey和JSP页面,Zuul服务器通过401错误阻止检索任何CSS和JS文件

在浏览JSP页面时,如何包含当前用户的JWT

<!DOCTYPE html>

<%@ page contentType="text/html" language="java" pageEncoding="UTF-8" %>
    <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>

        <% 
    String selectionUri = (String) request.getAttribute("selectionUri");
    String removeUri = (String) request.getAttribute("removeUri");
%>

            <html>

            <head>
                <meta http-equiv="Content-Type" content="text/html;charset=utf-8">
                <meta name="_csrf" content="${_csrf.token}" />
                <meta name="_csrf_header" content="${_csrf.headerName}" />
                <title>Smart Mine Treeview</title>
                <link rel="stylesheet" href="<c:url value='../../static/css/bootstrap-4.0.0-beta.min.css'/>" />
                <link rel="stylesheet" href="<c:url value='../../static/css/bootstrap-treeview.css'/>" />
                <link rel="stylesheet" href="<c:url value='../../static/css/mimacs.css'/>" />
                <link rel="stylesheet" href="<c:url value='../../static/css/all.css'/>">
                <script src="<c:url value='../../static/js/jquery-3.2.1.min.js'/>"></script>
                <script src="<c:url value='../../static/js/bootstrap-4.0.0-beta.min.js'/>"></script>
                <script src="<c:url value='../../static/js/bootstrap-treeview.js'/>"></script>
                </head>

            <body onLoad='loadTreeview("<%= selectionUri %>")' style="background-color: transparent">
                <div id="myFrame" style="display: none;">
                    <div class="my-frame">
                        <div class="my-hdr my-title">Location Hierarchy</div>
                        <div id="treeview" class="treeview my-treeview"></div>
                    </div>
                </div>
            </body>

            </html>

智能矿井树视图
位置层次结构
直接访问页面显示良好,但不是通过代理。 正在使用浏览器中的链接请求资源,例如,可以通过承载在端口30111上的网关成功检索

因此,我假设JSP页面不随资源请求一起提交当前用户的凭据


关于从何处开始查找的任何帮助?

从客户端应用程序中删除了Jersey,并替换为Spring Boot以使其正常工作

在进一步了解了安全性之后,我意识到Zuul服务器使用application.yml配置了Oauth2授权,即Spring引导风格。 这将创建一个bean,将浏览器中的JSESSIONID与网关的JwtTokenStore中存储的令牌相匹配,并在传递请求之前验证验证,而不使用授权头。 要解决此问题,网关有一个筛选器,用于将其存储中的授权头添加到请求筛选器中,或配置网关以保留无状态会话,如图所示