как я могу установить заголовок ответа для IBM HTTP Server

Я хочу установить заголовок ответа на моем веб-сервере приложений, чтобы сделать мои файлы cookie «только http» и «безопасными».

Может ли кто-нибудь помочь мне, как этого добиться. Будут ли какие-либо воздействия на приложение, работающее по HTTPS, если мы внесем эти изменения.


person Onki    schedule 16.10.2014    source источник


Ответы (1)


IHS (на основе Apache) httpd.conf

<Location /your-app>
    SetHandler server-status
    Order deny,allow
    Allow from all
    Header edit Set-Cookie ^(.*)$ $1;HttpOnly;Secure
</Location>

где /your-app - корень контекста вашего приложения

БЫЛ:

Servers > Server Types > WebSphere application servers > YOUR-APP > Web Container Settings > Web container: Custom Properties> New
Name: com.ibm.ws.webcontainer.HTTPOnlyCookies; 
Value: JsessionID

Servers > Server Types > WebSphere application servers > YOUR-APP > Session management > Enable Cookies link. Requires use of SSL protocol.

В вашем приложении могут быть некоторые проблемы (в зависимости от того, как оно было разработано)

Пример:

#
# Allow server status reports generated by mod_status,
# with the URL of http://servername/server-status
# Change the ".example.com" to match your domain to enable.
#
<IfModule mod_status.c>
<Location /server-status>
    SetHandler server-status
    Order deny,allow
    Deny from all
# Add an "Allow from" directive to provide access to the server status page.
#
# Examples:
#
# 1. Allow any client with hostname *.example.com to view the page.
#
# Allow from .example.com
#
# 2. Allow the local machine to view the page using the loopback address.
#
# Allow from 127.0.0.1
#
# 3. Allow any machine on the local network to view the page.
#
# Allow from 192.168.1
</Location>
</IfModule>

...

##### NON-DEFAULT #####

<Location /xxx> 
   SetHandler server-status 
   Order deny,allow 
   Allow from all 
   Header edit Set-Cookie ^(.*)$ $1;HttpOnly;Secure 
</Location> 

<VirtualHost *:80>
</VirtualHost>

LoadModule ibm_ssl_module modules/mod_ibm_ssl.so
Listen 443
Listen 4469

<VirtualHost *:443 *:4469>
SSLEnable
Keyfile /root/keys/web1-key-db.kdb
SSLStashfile /root/keys/web1-key-db.sth
</VirtualHost>

#####/NON-DEFAULT #####

...
person Multisync    schedule 16.10.2014
comment
Я получил это редактирование заголовка Set-Cookie ^(.*)$ $1;HttpOnly;Secure, добавленное в httpd.cong.. n это не работает. Мой qsn: нужно ли добавлять только внутренние теги ‹location›. N, если да, то мне нужно скопировать их снова, а затем сделать это или добавить это в существующий. Не могли бы вы привести мне здесь один пример. - person Onki; 17.10.2014
comment
Не могли бы вы также указать мне любую документацию, на которую я могу ссылаться для этого. Я пытаюсь много погуглить об этом, но я не получаю много/точных подробностей об этом. - person Onki; 17.10.2014
comment
@ user3610891 Я добавил пример. Мы исследовали это пару лет назад, поэтому я не помню никаких ссылок на документацию. У вас есть сервер приложений? В этом случае вам необходимо внести некоторые изменения в консоль администратора. - person Multisync; 17.10.2014
comment
мы используем WAS6.1 в качестве нашего сервера приложений. - person Onki; 17.10.2014
comment
мой qsn: когда мы вносим изменения на уровне веб-сервера, нам нужно снова внести изменения на уровне сервера приложений. Если мы сохраняем изменения на обоих серверах, это может быть проблемой, но если изменяется только 1, нам нужно снова настроить сервер приложений/веб-сервер. - person Onki; 17.10.2014
comment
@user3610891 user3610891 Я нашел этот stackoverflow.com/questions/9193112/ - person Multisync; 17.10.2014
comment
Допустим, URL-адрес моего приложения выглядит следующим образом: one.two.three.com/context_root/firstrequest .................. Итак, если я сделаю ‹Location /context_root› SetHandler server-status Order deny, разрешите Разрешить редактирование всех заголовков Set-Cookie ^(.*) $ $1;HttpOnly;Secure ‹/Location› ............ Итак, правильно ли задан корневой контекст для этого блока? - person Onki; 17.10.2014
comment
@ user3610891, да. Убедитесь также, что у вас есть LoadModule headers_module modules/mod_headers.so в вашем conf. - person Multisync; 17.10.2014
comment
Я сделал все это. Раскомментировал строку заголовка. Добавил блок.. но все равно не работает. Мои файлы cookie все еще не защищены, нет только http - person Onki; 20.10.2014