【问题标题】:mBeans Client deployed on weblogic gives a security exception?部署在 weblogic 上的 mBeans Client 出现安全异常?
【发布时间】:2012-01-12 12:33:03
【问题描述】:

我正在尝试遵循 mbeans for weblogic 的文档并创建一个 Web 应用程序 访问在服务器中部署的另一个应用程序中运行的已经创建的自定义 bean。 我正在使用此代码

   InitialContext ctx = new InitialContext();
    MBeanServer    server = (MBeanServer)ctx.lookup("java:comp/env/jmx/runtime");
    String serverName = System.getProperty("weblogic.Name");



         ObjectName on =new ObjectName("com.myCompanyName:Name=MyCutomBean,Type=MyCutomBean");
         boolean boolresult=(Boolean)server.invoke(on, "myMethod",
         new Object[]{"a","b","c"}
         ,new String[]{"java.lang.String","java.lang.String","java.lang.String"}); //throw exception
          out.print(result);
         out.print(boolresult);

当我尝试访问我们的自定义 bean 时,我遇到了这个异常:

不允许访问主题:principals=[],在 ResourceType:名称操作:执行,目标:myMethod

可能是什么问题?

【问题讨论】:

    标签: security exception weblogic jmx mbeans


    【解决方案1】:

    我终于找到了解决办法 为避免此异常,您需要使用以下方法对您的上下文进行身份验证:

    Hashtable props = new Hashtable();
          props.put(Context.INITIAL_CONTEXT_FACTORY,
                    "weblogic.jndi.WLInitialContextFactory");
    
          props.put(Context.SECURITY_PRINCIPAL,   "<userName>");
          props.put(Context.SECURITY_CREDENTIALS, "<password>");
          Context ctx = new InitialContext(props);  MBeanServer    server = (MBeanServer)ctx.lookup("java:comp/env/jmx/runtime");
    

    希望这会对某人有所帮助

    【讨论】:

      猜你喜欢
      • 2016-05-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-08-03
      • 2023-03-06
      • 1970-01-01
      • 1970-01-01
      • 2017-05-14
      相关资源
      最近更新 更多