我正在尝试将一个应用程序迁移到通配符26,并且我试图使用elytron来保护应用程序。
我使用jboss成功地运行了这个命令
/subsystem=elytron/jdbc-realm=myapp-security-realm:add(principal-query=[{sql="select clave from admin.usuario where usuario = ?", data-source="SISMedicalDS", simple-digest-mapper={algorithm=simple-digest-sha-256,password-index=1}},{sql="select r.nombre, 'Roles' from admin.rol r join admin.perfil p on r.id = p.rol_id join admin.usuario u on u.id = p.usuario_id where u.usuario = ?", data-source="SISMedicalDS", attribute-mapping=[{index=1, to=roles}]}])
/subsystem=elytron/security-domain=myapp-security-domain:add(realms=[{realm=myapp-security-realm}], default-realm=myapp-security-realm, permission-mapper=default-permission-mapper)
/subsystem=elytron/http-authentication-factory=myapp-security-http:add(http-server-mechanism-factory=global, security-domain=myapp-security-domain, mechanism-configurations=[{mechanism-name=FORM}])
/subsystem=undertow/application-security-domain=myapp-application-security-domain:add(http-authentication-factory=myapp-security-http)我还将jboss-web.xml和web.xml文件更改为建议的配置。
jboss-web.xml
<!DOCTYPE jboss-web>
<jboss-web xmlns="http://www.jboss.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.jboss.com/xml/ns/javaee http://www.jboss.org/schema/jbossas/jboss-web_13_0.xsd"
version="13.0">
<security-domain>nmedical-application-security-domain</security-domain>
</jboss-web>web.xml (仅限登录配置)
<login-config>
<auth-method>FORM</auth-method>
<realm-name>nmedical-application-security-domain</realm-name>
<form-login-config>
<form-login-page>/login.jsp</form-login-page>
<form-error-page>/login.jsp?error=true</form-error-page>
</form-login-config>
</login-config>当我试图在通配符26服务器上部署应用程序时,我总是会收到以下错误
"WFLYCTL0412: Required services that are not installed:" => ["jboss.security.security-domain.myapp-application-security-domain"]我已经检查了服务器控制台,在web (下面)子系统下,我可以看到myapp应用程序安全域的存在,所以我真的不知道问题出在哪里。
感谢你的任何帮助
发布于 2022-04-12 15:31:28
名称空间jboss.security.security-域与遗留安全性相关,而不是Elytron。某些资源中可能没有启用Elytron,而且该资源将myapp-application-security-domain作为遗留安全域引用,并引发错误。
发布于 2022-04-14 17:37:38
我终于让它发挥作用了,多亏了diavil的回应和这篇文章:
如何配置Elytron
我最后所做的是在ejb3和下面两个子系统中配置名为other的安全配置;它不是我非常喜欢的解决方案,但它就是它。
https://stackoverflow.com/questions/71244362
复制相似问题