Weblogic:Java调用Weblogic API创建用户和修改密码
来源:互联网 发布:cs算法 编辑:程序博客网 时间:2024/05/22 03:32
介绍
如果要使用Weblogic内嵌的LDAP来做验证,普通用户无法直接修改自己的密码,需要管理员登录weblogic console才能进行修改。weblogic提供api使用java代码来修改。
代码
import java.io.IOException;import java.net.MalformedURLException;import java.util.Hashtable;import javax.management.InstanceNotFoundException;import javax.management.MBeanException;import javax.management.MBeanServerConnection;import javax.management.MalformedObjectNameException;import javax.management.ObjectName;import javax.management.ReflectionException;import javax.management.remote.JMXConnector;import javax.management.remote.JMXConnectorFactory;import javax.management.remote.JMXServiceURL;import javax.naming.Context;public class DefaultAuthenticatorAdapter { private static MBeanServerConnection connection; private static JMXConnector connector; private static ObjectName service; static { try { service = new ObjectName("Security:Name=myrealmDefaultAuthenticator"); } catch (MalformedObjectNameException e) { e.printStackTrace(); } } public void connection(String hostname, String portString, String username, String password) throws IOException, MalformedURLException { String protocol = "t3"; Integer portInteger = Integer.valueOf(portString); int port = portInteger.intValue(); String jndiroot = "/jndi/"; String mserver = "weblogic.management.mbeanservers.domainruntime"; JMXServiceURL serviceURL = new JMXServiceURL(protocol, hostname, port, jndiroot + mserver); Hashtable h = new Hashtable(); h.put(Context.SECURITY_PRINCIPAL, username); h.put(Context.SECURITY_CREDENTIALS, password); h.put(JMXConnectorFactory.PROTOCOL_PROVIDER_PACKAGES, "weblogic.management.remote"); h.put("jmx.remote.x.request.waiting.timeout", new Long(10000)); connector = JMXConnectorFactory.connect(serviceURL, h); connection = connector.getMBeanServerConnection(); } public void createUser(String username, String password, String description) throws InstanceNotFoundException, MBeanException, ReflectionException, IOException { Object[] params = { username, password, description }; String[] signature = { "java.lang.String", "java.lang.String", "java.lang.String" }; connection.invoke(service, "createUser", params, signature); } public void changeUserPassword(String username, String oldPassword, String newPassword) { try { Object[] params = { username, oldPassword, newPassword }; String[] signature = { "java.lang.String", "java.lang.String", "java.lang.String" }; connection.invoke(service, "changeUserPassword", params, signature); } catch (InstanceNotFoundException e) { e.printStackTrace(); } catch (MBeanException e) { String message = e.getMessage(); System.out.println("message = " + message); } catch (ReflectionException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } public static void main(String[] args) throws Exception { String hostname = "10.1.36.47"; String portString = "7101"; String username = "weblogic"; String password = "welcome1"; DefaultAuthenticatorAdapter c = new DefaultAuthenticatorAdapter(); c.connection(hostname, portString, username, password); c.createUser("test1", "welcome1", "dddddddddddddddddd"); //c.changeUserPassword("test1", "welcome3", "welcome4"); connector.close(); }}
- Weblogic:Java调用Weblogic API创建用户和修改密码
- 修改weblogic密码
- 修改weblogic控制台密码
- weblogic控制台密码修改
- weblogic修改密码
- weblogic密码修改
- Weblogic修改密码
- weblogic 修改密码
- weblogic修改控制台密码
- weblogic控制台密码的修改和恢复
- 如何修改weblogic启动密码
- Weblogic 的默认用户名和密码:weblogic/weblogic
- 如何修改weblogic console登陆的用户名和密码
- 如何修改weblogic console登陆的用户名和密码
- Weblogic Server Console密码修改和遗忘解决方法
- Weblogic修改控制台用户名和密码错误的解决方法
- 破解WebLogic密码和配置文件
- WebLogic使用总结(六)——WebLogic创建虚拟主机和修改启动端口号
- oracle存储过程常用技巧
- 求解模线性方程
- tplink 刷 openwrt 及samba共享设置
- 一周心情颜色值
- C++菜鸟常见错误整理(第一天)
- Weblogic:Java调用Weblogic API创建用户和修改密码
- 再谈Axis发布
- udp 137端口发包
- MYSQL的事务处理
- Request.Form
- 主机 虚拟机 互相ping不通
- gen already exists but is not a source folder. Convert to a source folder or
- python 的日志logging模块学习
- BSTR使用误区以及隐藏的内存破坏和内存泄漏