ejb - Jboss EAP 7.2 @RolesAllowed 在实现类中不起作用
问题描述
我有 2 个模块,一个仅使用控制器接口描述 api,第二个使用实现。例子:
资源接口:
@Path("/resource")
public interface Resource {
@POST
@Path("/getAll")
@Produces("application/json")
Response getAll();
资源实现:
@RequestScoped
@Path("/user")
public class ResourceImpl implements Resource {
@RolesAllowed({"admin"})
public Response getAll() {
当我使用具有“用户”角色的用户登录时,我没有收到 401 或 403 错误。如果我将 @RolesAllowed({"admin"}) 添加到界面,那么它将按预期工作。但我相信应该有其他解决方案
我尝试了这个主题的解决方案https://access.redhat.com/solutions/766483但没有运气我的 ejb.xml 看起来像这样:
<ejb-jar
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/ejb-jar_3_1.xsd"
version="3.1">
<enterprise-beans>
<message-driven>
*Queues describtion*
</message-driven>
</enterprise-beans>
<assembly-descriptor>
<method-permission>
<role-name>admin</role-name>
<method>
<ejb-name>ResourceImpl</ejb-name>
<method-name>*</method-name>
</method>
</method-permission>
</assembly-descriptor>
</ejb-jar>
我正在使用 Jboss EAP 7.2.9
提前致谢
解决方案
推荐阅读
- c# - 如何基于 URL 使用 Moq 对 HttpClient (HttpMessageHandler) 进行单元测试
- discord - 在 Java 中检查用户语音通道状态
- python - ModuleNotFoundError:测试时在 django 教程中没有名为“mysite.polls”的模块
- r - 根据之间的值提取数据
- python - Python if 语句总是返回 false,即使输入为 true
- javascript - 通过 Chrome 扩展程序单击 Google Docs 上的按钮
- discord.js - Discordjs dm 某些用户
- c++ - 是否可以在带有自定义规则的 bazel 中使用 C++20 模块?
- python - 是否有*任何*解决方案来打包使用 cppyy 的 python 应用程序?
- css - 在 CSS 中隐藏#text