我尝试集成 JSF 和 spring security 我花了将近一天但没有结果
使用 JSF、Spring MVC 和 Primfaces 开发了一个应用程序。我几乎完成了我的要求,最后我计划集成弹簧安全,但我不能,我在网上做了足够的搜索。我觉得这可能是相关框架中的错误。
如果你们中的任何人遇到相同的情况,请发布解决方案。我在这里发布我的方法
第 1 步: 创建 Login.jsp(自定义登录页面) 第 2 步: 在我的 web.xml 中添加以下代码
<filter>
<filter-name>springSecurityFilterChain</filter-name>
<filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
</filter>
<filter-mapping>
<filter-name>springSecurityFilterChain</filter-name>
<url-pattern>/*</url-pattern>
<dispatcher>FORWARD</dispatcher>
<dispatcher>REQUEST</dispatcher>
</filter-mapping>
第 3 步:
创建 Springsecurity.xml
<sec:global-method-security
secured-annotations="enabled" />
<sec:http auto-config="true" use-expressions="true"
once-per-request="false">
<sec:intercept-url pattern="pages/secured/**"
access="ROLE_USER" />
<sec:form-login login-page="/login.jsp"
default-target-url="/pages/secured/products.xhtml"
authentication-failure-url="/login.html?login_error=1" />
<sec:logout logout-url="/logout" logout-success-url="/login.jsp" />
</sec:http>
<sec:authentication-manager alias="authenticationManager">
<sec:authentication-provider>
<sec:user-service>
<sec:user name="vijay" authorities="ROLE_USER" password="vijay"/>
</sec:user-service>
</sec:authentication-provider>
</sec:authentication-manager>
执行应用程序并将 login.jsp 作为第一页,因为我在 web.xml 中定义。在登录身份验证时,它会转发到 Products.xhtml,但我什至可以访问所有位于安全文件夹下的其余页面,而无需登录。
请提出更好的方法或其他替代方案。