gpt4 book ai didi

security - 使用 javax.faces.STATE_SAVING_METHOD 在客户端保存 session 的含义

转载 作者:行者123 更新时间:2023-12-03 06:24:05 25 4
gpt4 key购买 nike

我的第一个 JSF 页面抛出 javax.faces.application.ViewExpiredException。当我搜索时,我得到了解决我的问题的解决方案。

<context-param>
<param-name>javax.faces.STATE_SAVING_METHOD</param-name>
<param-value>client</param-value>
</context-param>

但我担心安全问题。

最佳答案

这根本不会在客户端保存“ session ”。

这仅在客户端保存 JSF View 状态。在 JSF 2.2 中,它始终使用应用程序启动时生成的 key 进行 AES 加密。然而,一旦您重新启动应用程序,这就会失效,从而导致所有现有 View 状态变得无效。您可以在 web.xml 中指定如下固定键,以便所有现有 View 状态在服务器重新启动后保持有效:

<env-entry>
<env-entry-name>jsf/ClientSideSecretKey</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>[AES key in Base64 format]</env-entry-value>
</env-entry>

您可以使用this page生成 Base64 格式的随机 AES key 。

另请参阅:

关于security - 使用 javax.faces.STATE_SAVING_METHOD 在客户端保存 session 的含义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29420182/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com