Доступ запрещен для получения скриптов - PullRequest
0 голосов
/ 20 сентября 2019

У меня есть набор микросервисов, которые работают за шлюзом Netflix Zuul, который реализует безопасность на основе OAUTH2 и выдает JWT браузеру после успешной аутентификации.

Все нормальные страницы Spring MVC отображаются нормально, ноУ меня есть одно приложение, которое использует страницы Джерси и JSP, где сервер Zuul блокирует извлечение любых файлов CSS и JS с ошибкой 401.

Как можно было бы включить JWT текущего пользователя при переходе к JSPpage?

<!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>

Доступ к странице напрямую отображается нормально, но не через прокси.Запросы ресурсов со ссылками в браузере работают.http://localhost:30111/my-app/static/js/jquery-3.2.1.min.js,, например, может быть успешно получен через шлюз, размещенный на порте 30111.

Следовательно, я предполагаю, что это что-то делать, когда страницы JSP не передают учетные данные текущего пользователя вместе сзапрос ресурсов.

Любая помощь в том, где начать искать?

...