Как установить SameSite Cookie в процессоре печенья Tomcat?
Tomcat context.xml определяет CookieProcessor (по умолчанию LegacyCookieProcessor)
https://tomcat.apache.org/tomcat-9.0-doc/config/cookie-processor.html
Я пытаюсь добавить атрибут (ы), показанный на процессоре cookie, но, похоже, это не работает
Я не вижу cookie заголовка ответа Tomcat с установленным атрибутом sameSite
3 ответа
В вашем веб-приложении внутри папки META-INF создайте файл context.xml с этим внутри.
<Context>
<CookieProcessor sameSiteCookies="strict" />
</Context>
Если у вас уже есть файл context.xml, вам просто нужно добавить элемент CookieProcessor.
Такое поведение возможно начиная с Tomcat 9.0.21 и 8.5.42.
Слияние с мастером Tomcat 20 мая 2019 года по запросу Pull 162
Нашел ответ на это:
- отредактируйте tomcat/conf/context.xml
- Обновите элемент CookieProcessor в следующих строках, например, для установки SameSiteCookies в set-cookie заголовков ответа HTTP.
<CookieProcessor className="org.apache.tomcat.util.http.LegacyCookieProcessor" sameSiteCookies="strict" />
Чтобы дополнить текущие ответы, убедитесь, что версия Tomcat является именно одной из версий, распознающих тот же сайт, например Tomcat 9.0.21. Добавление контекста в tomcat/conf/context.xml обычно является плохой идеей, поскольку оно не зависит от приложения. Чтобы определить контекст приложения, вы можете создать путь к папке внутри Tomcat/conf/{EngineName}/{HostName}/{applicationFileName}.xml. Это эквивалентно добавлению контекста в папку /META-INF. Существует несколько способов определения контекста. Ссылка: https://octopus.com/blog/defining-tomcat-context-paths .