在Glassfish v2中,我通过在ORB节点下的管理控制台中启用"IIOP客户端身份验证"复选框来保护我的JNDI查找.
在我的独立客户端中,我然后执行"ProgrammaticLogin",然后允许我进行JNDI查找.
但是,在Glassfish v3中,如果要在同一设置中执行任何JNDI查找,则会出现此错误:
18.08.2010 14:31:10 com.sun.enterprise.transaction.JavaEETransactionManagerSimplified
initDelegates INFO: Using
com.sun.enterprise.transaction.jts.JavaEETransactionManagerJTSDelegate
as the delegate
org.omg.CORBA.NO_PERMISSION:
----------BEGIN server-side stack trace----------
org.omg.CORBA.NO_PERMISSION:
vmcid: 0x0
minor code: 0
completed: No
Run Code Online (Sandbox Code Playgroud)
我非常确定"ProgrammaticLogin"通常可以正常工作,因为它允许我在我的安全EJB上进行远程方法调用(使用@RolesAllowed但如果IIOP客户端身份验证被关闭).
我登录的用户是我为"文件"领域创建的简单用户.
任何想法,为什么ProgrammticLogin无法在Glassfish v3中用于授权JNDI查找?
或者从独立客户端使用ORB进行身份验证的正确方法是什么?以此目的?