安全会话Cookie + Glassfish 3.1

时间:2012-01-02 22:47:56

标签: ssl glassfish-3

我正在寻找类似于此的解决方案: httpOnly Session Cookie + Servlet 3.0 (e.g. Glassfish v3)

我想转换HTTP标头:http-only和Secure off,以便使用https进行身份验证可以传输到http请求。

然而, 1与其他帖子有关。我没有使用servlet 3.0。我可能愿意尝试使用servlet 3.0,如果有关于如何将intellij项目从serverl 2.5迁移到3.0的正确文档。如何使用它似乎并不明显。将我的maven pom更改为javax.servlet 3.0然后将我的web.xml版本编辑为3.0不起作用。在3.0版本上给出了一个方面错误。叹息。

  1. 这是我解决此问题的主要方法。我编辑了default-web.xml和domain.xml的domains / domain1 / config到我认为可以工作的但却没有。对我而言,Oracle的文档似乎并不十分清楚。
  2. domain.xml中

    <web-container>
        <session-config>
          <session-manager> 
            <manager-properties></manager-properties>
            <store-properties></store-properties>
          </session-manager>
          <session-properties>
            <property name="cookieSecure" value="false"></property>
            <property name="cookieHttpOnly" value="false"></property>
          </session-properties>
        </session-config>
          </web-container>
    

    ...

    <configs>
    <config name="server-config">
      <http-service sso-enabled="true">
        <access-log></access-log>
        <virtual-server id="server" sso-cookie-secure="false" sso-cookie-http-only="false" network-listeners="http-listener-1,http-listener-2"></virtual-server>
        <virtual-server id="__asadmin" sso-cookie-http-only="false" network-listeners="admin-listener"></virtual-server>
      </http-service> 
    

    默认-web.xml中

        <session-config>
        <session-timeout>60</session-timeout>
            <cookie-config>
                    <http-only>false</http-only>
                    <secure>false</secure>
            </cookie-config>
            <cookie-properties>
                    <property name="cookieSecure" value="false" />
                    <property name="cookieHttpOnly" value="false" />
            </cookie-properties>
            <tracking-mode>COOKIE</tracking-mode>
      </session-config>
    

1 个答案:

答案 0 :(得分:4)

好吧我感觉有点愚蠢,但我以前从未写过特定的容器,以确保我的代码可以跨容器移植。但是,经过一些研究,我发现你可以放一个看起来像这样的WEB-INF / glassfish-web.xml文件来控制glassfish下每个WAR文件的安​​全cookie设置。

http://blogs.oracle.com/jluehe/entry/ow_to_configure_the_security

    <?xml version="1.0" encoding="UTF-8"?>
        <glassfish-web-app>
            <session-config>
                <cookie-properties>
                    <b><property name="cookieSecure" value="[true|false|dynamic]"/></b>
               </cookie-properties>
           </session-config>
       </glassfish-web-app>