编程语言
首页 > 编程语言> > Java-JAAS自定义登录模块

Java-JAAS自定义登录模块

作者:互联网

我在jboss的耳朵上有一个自定义的登录模块.耳朵的META-INF有一个jboss-app.xml,它指向一个login-service.xml,其中包含一个mbean,该mbean指向一个定义自定义登录模块的login-config.xml.

耳朵的META-INF中的jboss.xml使用与在login-config.xml中为登录模块定义的安全域相同的安全域.

在那只耳朵中调用EJB时​​,我看不到我的自定义登录模块运行的login和commit方法,就像我过去在其他地方实现此方法时看到的那样.

我具有org.jboss.security的跟踪log4j设置,但是在进行EJB调用时我什么也没看到.即使未通过身份验证,EJB调用也会成功.

我无法弄清楚为什么未调用我的登录模块或如何调试JAAS决策过程.有任何想法吗?谢谢.

解决方法:

到目前为止,您已经完成了创建登录模块的工作,现在您需要告诉EJB使用它:

import javax.annotation.security.RolesAllowed;
import javax.ejb.Stateless;

import org.jboss.ejb3.annotation.SecurityDomain;


@Stateless
@SecurityDomain("mySecurityDomain")
@RolesAllowed({"guestRole", "userRole", "adminRole"})
public class SecureBean implements Secure {

标签:jaas,jboss,java,java-ee
来源: https://codeday.me/bug/20191024/1917365.html