Безопасные и HttpOnly флаги для сеанса cookie Websphere 7
на серверах приложений жалоб Servlet 3.0 я могу установить флаги HttpOnly и secure для cookie сеанса (JSESSIONID), добавив следующее В интернет.XML-код:
<session-config>
<cookie-config>
<secure>true</secure>
<http-only>true</http-only>
</cookie-config>
</session-config>
однако приложение, над которым я работаю, должно быть развернуто в Websphere 7, который является жалобой сервлета 2.5, и он не запускается, если я добавлю вышеизложенное в интернет.в XML
есть ли другой декларативный способ или параметр в конфигурации Websphere 7 для включения флагов HttpOnly и secure для cookie сеанса?
если нет, каков был бы лучший подход для выполнения этого программно?
3 ответов
Я думаю, что в WebSphere 7 вам, возможно, придется углубиться в административную консоль. Как всегда в документации WebSphere кажется бедной, но, кажется, предлагают установить ком.корпорация IBM.с WS.безопасности.addHttpOnlyAttributeToCookies свойства:
флаг Secure и флаг HTTPOnly включены, задав свойство WebSphere Application Server:
com.ibm.ws.security.addHttpOnlyAttributeToCookies
.
нашел этой, который, я надеюсь, применим к WAS7. Можешь попробовать? пожалуйста (у меня только было 8 на данный момент в моей системе):
JSESSIONID cookie-файлах:
Флаг Secure:
флаг безопасности можно установить в WebSphere Application Server административный интерфейс, выбрав AppServer - >[имя сервера] - >Web Настройки Контейнера - >Управление Сеансами. Установите флажок "Ограничить cookies сеансами HTTPS".
HTTPOnly Флаг:
атрибут HTTPOnly в настоящее время не может быть установлен в этом файле cookie. Этот зарегистрирован на сайте IBM как APAR PK98436. Исправление для этого APAR в настоящее время предназначен для включения в пакеты исправлений 6.1.0.31 и 7.0.0.9, которые пока недоступны. С этим APAR на месте, HTTPOnly флаг можно установить в файле cookie JSESSIONID с помощью имени свойства: ком.корпорация IBM.с WS.webcontainer.httpOnlyCookies. Обратитесь к следующей техническое примечание для получения инструкций по включению WebContainer пользовательские свойства.
на ком.корпорация IBM.с WS.webcontainer.httpOnlyCookies свойства описаны на сайте 7 помочь.
чтобы установить безопасный флаг в файл cookie JSESSIONID (то же самое для WebSphere 7.x и 8.x):
- войдите в WebSphere admin console
- перейти к сервер > типы серверов > серверы приложений WebSphere
- нажмите на имя сервера (по умолчанию server1)
- нажмите на ссылку настройки веб-контейнера > веб-контейнер
- нажмите на ссылку сессии Управление
- нажмите на ссылку Включить Cookies. Это немного сбивает с толку, ты должен ... нажмите на текст не на флажке
- выберите опцию (флажок) ограничить cookies сеансами HTTPS
- сохранить изменения
для установки флага HttpOnly в WebSphere 8.x для jsessionid cookie
- войти войдите в WebSphere admin консоль
- перейти к сервер > типы серверов > серверы приложений WebSphere
- нажмите на имя сервера (по умолчанию server1)
- нажмите на ссылку настройки веб-контейнера > веб-контейнер
- нажмите на ссылку Управление Сеансами
- нажмите на ссылку Включить Cookies. Это немного немного запутанно, вы должны нажать на текст не на флажке
- выберите опция (флажок) установите файлы cookie сеанса в HTTPOnly, чтобы предотвратить атаки межсайтовых сценариев
- сохранить изменения
для установки флага HttpOnly в WebSphere 7.x для jsessionid cookie
- войдите в WebSphere admin console
- перейти к сервер > типы серверов > серверы приложений WebSphere
- нажмите на имя сервера (по умолчанию server1)
- нажмите на ссылку настройки веб-контейнера > веб-контейнер
- нажмите на ссылку Пользовательские Proprties
- нажать на кнопку New
- Enter имя: com.ibm.ws.webcontainer.httpOnlyCookiesстоимостью:* (HttpOnly будет установлен на всех cookies не только JSESSIONID)
- нажать на кнопку OK
- сохранить изменения
в WebSphere 7, Вы можете найти это в консоли администрирования в разделе сервера>серверы приложений WebSphere>[Имя Сервера]>управление сеансами (в разделе "Настройки контейнера")>включить cookies>ограничить cookies сеансами HTTPS.