使用HTTP协议缺少会话标识符的HttpOnly属性
问题描述:
早些时候,我为HTTP/HTTPS协议获取HttpOnly,但缺少安全属性。使用HTTP协议缺少会话标识符的HttpOnly属性
为了增加“安全”属性,我添加了安全=“真”,在如下server.xml中的连接器端口语法 -
<Connector address="10.23.17.69" port="8000" maxHttpHeaderSize="8192"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
connectionTimeout="60000" disableUploadTimeout="true" URIEncoding="UTF-8" server="Dev" secure="true" />
还增加了‘饼干配置’在web.xml如下 -
<session-config>
<session-timeout>120</session-timeout>
<cookie-config>
<secure>true</secure>
<http-only>true</http-only>
</cookie-config>
</session-config>
现在对于HTTPS协议,我发现了“安全”和“的HttpOnly”标志为如下会话cookie为真。
但是对于HTTP协议,我没有获得HttpOnly属性。在HTTP协议的情况下,我需要“HttpOnly = true”。
请注意,我的context.xml中的“上下文”元素已包含useHttpOnly属性如下 -
<Context useHttpOnly="true">
....
</Context>
任何建议非常赞赏。
答
阅读此article我认为你错误地设置了会话cookie属性。
它应该是:
<Context cookies="true" crossContext="true">
<SessionCookie secure="true" httpOnly="true" />