У меня есть рабочее веб-приложение (.war, которое включает .jar с тремя EJB), которое отлично работает.
Я определяю домен безопасности LDAP через jboss-cli:
/subsystem=elytron/dir-context=pepDirContext:add(url="ldap://127.0.0.1:10389",principal="uid=admin,ou=system",credential-reference={clear-text="secret "})
/ subsystem = elytron / ldap-realm = pepRealm: add (dir-context = pepDirContext, identity-mapping = {search-base-dn = "ou = Users, dc = jboss, dc = org", rdn-identifier = uid, user-password-mapper = {from = "userPassword"}, attribute-mapping = [{filter-base-dn = "ou = Roles, dc = jboss, dc = org", filter = "(& (objectClass = groupOfNames) (member = {1})) ", from =" cn ", to =" Roles "}]})
/ subsystem = elytron / simple-role-decoder = from-roles-attribute: add (attribute = Roles)
/ subsystem = elytron / security-domain = pepSD: add (realms = [{realm = pepRealm, role-decoder = from-roles-attribute}], default-realm = pepRealm, permission-mapper = default-permission-mapper)
/ subsystem = elytron / http-authentication-factory = pep-http-auth: add (http-server-Mechan-factory = global, security-domain = pepSD, Mechan-configurations = [{имя-механизма = BASIC, область-механизма -configurations = [{realm-name = pepRealm}]}]
/ subsystem = undertow / application-security-domain = pepASD: add (http-authentication-factory = pep-http-auth)
/ subsystem = undertow / application-security-domain = pepSD: добавить (http-authentication-factory = pep-http-auth)
Примечание. В рамках тестов я выбрал два «домен-безопасность-приложение», в идеале я хотел бы использовать только pepASD.
Теперь я добавляю к своей войне файл WEB-INF / jboss-web.xml:
<?xml version="1.0" encoding="UTF-8"?>
<jboss-web>
<security-domain>pepSD</security-domain>
</jboss-web>
и когда я его развертываю, я получаю:
14: 48: 31,347 ОШИБКА [org.jboss.as.controller.management-operation] (DeploymentScanner-Threads - 2) WFLYCTL0013: Операция («полная замена-развертывание») завершилась неудачно - адрес: ([]) - описание ошибки: {
"WFLYCTL0412: Необходимые службы, которые не установлены:" => ["jboss.security.security-domain.pepSD"],
"WFLYCTL0180: Службы с отсутствующими / недоступными зависимостями" => [
"jboss.deployment.unit. \" frontend.war \ ". component.UsuarioEjb.CREATE отсутствует [jboss.security.security-domain.pepSD]",
"jboss.deployment.unit. \" frontend.war \ ". component.GerenciaEjb.CREATE отсутствует [jboss.security.security-domain.pepSD]",
"jboss.deployment.unit. \" frontend.war \ ". component.FlujoEjb.CREATE отсутствует [jboss .security.security-domain.pepSD] "
Что мне не хватает?
Я использую WildFly 18.0.0.1 на Java 11.