【发布时间】: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