我从一个客户端可以检测到EJB的当前用户被授权使用?
-
22-08-2019 - |
题
我有一个J2EE服务器上的各种的EJB,具有不同的安全角色。
现在,从Java Swing客户端应用程序,当我登录的用户到服务器,我想发现这些EJB的是用户可访问的,实际上并没有试图创建它们或调用它们。
我想这样做的原因是为了调节这取决于EJB是可用的用户界面。
例如,如果“AdministerMetadata” EJB是由当前用户可使用的,我想显示的菜单选项用于施用的元数据等
它是可以接受的我从客户端内已知的EJB的预定义列表查询,因此我不需要它是完全动态的方式。
我不想创建一个特殊的EJB刚刚返回此访问的信息,我想避免尝试调用方法并捕获异常做的发现。
我打算使用JBoss上的解决方案,但如果可能的话希望有一个标准的解决方案。
这是可能的?如果是这样怎么办?
解决方案
据我所知是没有在J2EE这将提供给您的客户端信息。即使是在服务器端 EJBContext的会给你只是调用者拥有的角色,以及调用者的主体(例如,登录名)。
我看不出有什么其他的办法,而不是有一个额外的会话Bean,你可以在客户端查询和将检查在服务器端EJBContext的告诉当前用户拥有该角色的客户端。
不隶属于 StackOverflow