gpt4 book ai didi

security - 应该用于 JSF 2.2 CSRF 保护吗?

转载 作者:行者123 更新时间:2023-12-04 01:54:13 30 4
gpt4 key购买 nike

我很困惑。
我看到 JSF 2.0 具有隐式 CSRF 保护:
How JSF 2.0 prevents CSRF

另一方面根据文章http://www.oracle.com/webfolder/technetwork/tutorials/obe/java/JSF-CSRF-Demo/JSF2.2CsrfDemo.html我们应该将以下元素添加到 faces-config.xml包含 JSF 页面列表的文件。

<protected-views>
<url-pattern>/csrf_protected_page.xhtml</url-pattern>
</protected-views>

<protected-views>用于 JSF 2.2 CSRF 保护?

最佳答案

I am confused. I see that JSF 2.0 has implicit CSRF protection: How JSF 2.0 prevents CSRF



这种隐式保护仅适用于 POST 请求(即带有 <h:form> 的页面)。

On the other side according to the article http://www.oracle.com/webfolder/technetwork/tutorials/obe/java/JSF-CSRF-Demo/JSF2.2CsrfDemo.html we should add the following element to the faces-config.xml file with the list of JSF pages.

<protected-views>
<url-pattern>/csrf_protected_page.xhtml</url-pattern>
</protected-views>


这种保护也对 GET 请求有效(即带有 <f:viewAction> 的页面,这也是自 JSF 2.2 以来的新内容)。每当您使用 <h:link><h:button>创建指向这些页面的 GET 链接/按钮,然后是一个新的 GET 请求参数 javax.faces.Token带有自动生成的标记值将被附加到生成的 HTML 输出中的 URL 中,并且当相关页面在 <protected-views> 中声明时,此参数将是必需的。 .

Should <protected-views> be used for JSF 2.2 CSRF protection?



仅在带有 <f:viewAction> 的页面上你想要CSRF保护的。那些与 <h:form>已经被 javax.faces.ViewState 隐式保护隐藏输入字段,前提是您没有通过 <f:view transient="true"> 关闭 JSF View 状态.另见 a.o. CSRF, XSS and SQL Injection attack prevention in JSF .

关于security - <protected-views> 应该用于 JSF 2.2 CSRF 保护吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26969415/

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