【问题标题】:wildfly 25 JSF SecurityWildfly 25 JSF 安全
【发布时间】:2021-12-26 20:15:09
【问题描述】:

我完全清楚 wildfly 25 已放弃旧版安全领域。 所以我尝试从 wildfly 20.0.1 迁移到 wildfly 25.0.1。

根据快速入门ee-security,我做到了

/subsystem=elytron/policy=jacc:add(jacc-policy={})

我还必须在我的 jboss-web.xml 中删除该值:

<security-domain>jaspitest</security-domain>

否则我会得到:

{
    "WFLYCTL0412: Required services that are not installed:" => ["jboss.security.security-domain.jaspitest"],
    "WFLYCTL0180: Services with missing/unavailable dependencies" => [
        "jboss.deployment.unit.\"unite_compte.war\".component.SocieteGestionSIXDAOImpl.CREATE is missing [jboss.security.security-domain.jaspitest]",

我也有自己的 IdentityStore。

当我尝试访问该站点时,登录页面按预期显示。当我提交凭据时,我的 IdentityStore 被调用并且 validate(Credential) 方法返回一个有效的 CredentialValidationResult。

不幸的是,我确实遇到了异常:

17:05:14,710 WARNING [javax.enterprise.resource.webcontainer.jsf.lifecycle] (default task-3) #{loginView.submit}: java.lang.IllegalStateException: java.io.IOException: java.io.IOException: ELY01177: Authorization failed.: javax.faces.FacesException: #{loginView.submit}: java.lang.IllegalStateException: java.io.IOException: java.io.IOException: ELY01177: Authorization failed.

Caused by: java.io.IOException: ELY01177: Authorization failed.
        at org.wildfly.security.jakarta.authentication@1.17.1.Final//org.wildfly.security.auth.jaspi.impl.JaspiAuthenticationContext$1.handleOne(JaspiAuthenticationContext.java:188)
        at org.wildfly.security.jakarta.authentication@1.17.1.Final//org.wildfly.security.auth.jaspi.impl.JaspiAuthenticationContext$1.lambda$handle$0(JaspiAuthenticationContext.java:100)
        at org.wildfly.security.jakarta.authentication@1.17.1.Final//org.wildfly.security.auth.jaspi.impl.SecurityActions.doPrivileged(SecurityActions.java:39)
        at org.wildfly.security.jakarta.authentication@1.17.1.Final//org.wildfly.security.auth.jaspi.impl.JaspiAuthenticationContext$1.handle(JaspiAuthenticationContext.java:99)

我该怎么做才能让它工作?

【问题讨论】:

    标签: security jsf wildfly elytron jakarta-ee-security-api


    【解决方案1】:

    正如快速入门所说,您还必须更新 Wildlfy 配置。具体来说,您必须运行快速入门的 configure-elytron.cli 脚本

    更多信息:https://github.com/wildfly/quickstart/tree/main/ee-security#configure-the-server

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-10-09
    • 2015-08-28
    • 2014-02-08
    • 2017-06-20
    • 1970-01-01
    • 1970-01-01
    • 2023-03-15
    相关资源
    最近更新 更多