Hi!
How can I inject SecurityContext from Java EE Security specification?
When I try to inject
javax.security.enterprise.SecurityContext, it throws following exception: "WELD-001408: Unsatisfied dependencies for type SecurityContext with qualifiers @Default"
In above old thread, I was told to use "jaspitest" security domain, but never managed to made this work. But now, with WildFly 26, there is no more "jaspitest".
Everything (but this injection) works:
- web security restriction in web.xml
- JSF checking with request.isUserInRole
- javax.annotation.security.RolesAllowed anotation in EJB and CDI beans
My security domain is based on Keycloak adapter (WF26).
Hope someone can help me understand this!
Thanks!
-------->8--------
Snippets from standalone.xml
<security-domains>
<security-domain name="ManagementDomain" default-realm="ManagementRealm" permission-mapper="default-permission-mapper">
<realm name="ManagementRealm" role-decoder="groups-to-roles"/>
<realm name="local" role-mapper="super-user-mapper"/>
</security-domain>
<security-domain name="ApplicationDomain" default-realm="ApplicationRealm" permission-mapper="default-permission-mapper">
<realm name="ApplicationRealm" role-decoder="groups-to-roles"/>
<realm name="local"/>
</security-domain>
<security-domain name="KeycloakDomain" default-realm="KeycloakOIDCRealm" permission-mapper="default-permission-mapper">
<realm name="KeycloakOIDCRealm"/>
</security-domain>
</security-domains>
...
<application-security-domains>
<application-security-domain name="other" http-authentication-factory="keycloak-http-authentication"/>
<application-security-domain name="keycloak" http-authentication-factory="keycloak-http-authentication"/>
</application-security-domains>