Security Can';t在自定义JSF登录表单中使用编程安全性

Security Can';t在自定义JSF登录表单中使用编程安全性,security,jsf,jakarta-ee,jboss,jaas,Security,Jsf,Jakarta Ee,Jboss,Jaas,我正试着这样做: 这不起作用,因为表单从不调用login()方法。为什么?由于web.xml的安全配置,我想它的行为是这样的。也许它认为loginController(一个命名的@ViewScopedbean)是一个受保护的资源 第二个问题更一般。这是实现编程安全性的正确方法吗?由于登录页面本身也受安全约束限制,并且登录不由j_security_check处理,因此您还需要将登录页面本身添加到允许的资源集合中 <security-constraint> <web-res

我正试着这样做:

这不起作用,因为表单从不调用
login()
方法。为什么?由于web.xml的安全配置,我想它的行为是这样的。也许它认为loginController(一个命名的
@ViewScoped
bean)是一个受保护的资源


第二个问题更一般。这是实现编程安全性的正确方法吗?

由于登录页面本身也受安全约束限制,并且登录不由
j_security_check处理,因此您还需要将登录页面本身添加到允许的资源集合中

<security-constraint>
    <web-resource-collection>
        <web-resource-name>Risorse</web-resource-name>
        <url-pattern>/javax.faces.resource/*</url-pattern>
        <url-pattern>/login.htm</url-pattern>
    </web-resource-collection>
    <!-- No Auth Contraint! -->
</security-constraint>

里索斯
/javax.faces.resource/*
/login.htm

由于登录页面本身也受安全约束限制,并且登录不由
j_security_check
处理,因此您还需要将登录页面本身添加到允许的资源集合中

<security-constraint>
    <web-resource-collection>
        <web-resource-name>Risorse</web-resource-name>
        <url-pattern>/javax.faces.resource/*</url-pattern>
        <url-pattern>/login.htm</url-pattern>
    </web-resource-collection>
    <!-- No Auth Contraint! -->
</security-constraint>

里索斯
/javax.faces.resource/*
/login.htm
<security-constraint>
    <web-resource-collection>
        <web-resource-name>Risorse</web-resource-name>
        <url-pattern>/javax.faces.resource/*</url-pattern>
        <url-pattern>/login.htm</url-pattern>
    </web-resource-collection>
    <!-- No Auth Contraint! -->
</security-constraint>