Java实现创建outlook邮箱账号

阅读:983 2019-03-20 14:09:24 来源:新网

现在我们开始。。。。。。话说从研究这个功能到实现它前后大致花了一周的时间,毕竟用java实现这个不是一件简单的事情,谁让exchange和.net更亲呢。一开始想了两个方案:

至于ssh2和powershell是啥,这里就不重复叙述了,感兴趣的同学可以百度了解下。

powershell学习资料地址:http://www.pstips.net/powershell-online-tutorials/

下面直接上步骤吧

这个很简单,下载freesshd软件,按照教程安装就行,安装完成之后使用putty工具连接测试。

freesshd下载地址:

http://www.freesshd.com/?ctt=download

freesshd安装参考百度经验的文章:

https://jingyan.baidu.com/article/f7ff0bfc1ebd322e27bb1344.html

putty安装地址:

https://pan.baidu.com/s/1dg1l1f7密码:gwou

putty测试连接成功后,可以编写java代码连接了,该过程需要ganymed-ssh2-build210.jar的支持,所以需要添加maven坐标

ch.ethz.ganymedganymed-ssh2262

连接代码案例

importch.ethz.ssh2.connection;importch.ethz.ssh2.session;

/***ssh登录远程服务器*@return*/publicbooleanlogin(){booleanresult=false;try{conn=newconnection(ip,port);conn.connect();//连接if(!conn.authenticatewithpassword(username,userpwd)){logger.error("通过ssh2登录outlook邮件服务器错误,验证失败");conn.close();returnresult;}result=true;}catch(ioexceptione){logger.error("通过ssh2登录outlook邮件服务器异常",e);}returnresult;}/***退出远程服务器*@return*/publicvoidexitconnect(){if(conn!=null){conn.close();}}2:powershell脚本编写与测试

这边提供一个get-mailbox方法的脚本getemail.ps1,用于获取员工的邮箱信息

set-executionpolicyremotesigned$user=$args[0]$password=convertto-securestring-string$args[1]-asplaintext-force$credential=new-object-typename"system.management.automation.pscredential"-argumentlist$user,$password$session=new-pssession-authenticationkerberos-credential$credential-configurationnamemicrosoft.exchange-connectionurihttp://xxxxxxxx(你的邮件服务器)/powershellimport-pssession$sessionget-mailbox$args[2]$args[i]代表给ps脚本传递的参数,$args[0]是outlook管理员的用户名,$args[1]是管理员登录的密码,$args[2]是需要查询的ad账号。

测试案例:

测试结果:

接下来只要将ps脚本中的get-mailbox$args[2]方法替换成enable-mailbox$args[2]-database$args[3]就行,$args[2]代表员工的ad账号,$args[3]代表员工的邮箱创建在哪个数据库中。

相关文章
{{ v.title }}
{{ v.description||(cleanHtml(v.content)).substr(0,100)+'···' }}
你可能感兴趣
推荐阅读 更多>
推荐商标

{{ v.name }}

{{ v.cls }}类

立即购买 联系客服