利用powershell管理office365
今天在公司的生產(chǎn)環(huán)境中有個(gè)需要用到powershell批量檢查office365用戶的操作,所以在這邊順便記錄的powershell連接office365的過程:
?
在連接之前,需要安裝兩個(gè)工具:1、Office 365 Sign-In Assistanthttp://www.microsoft.com/en-us/download/details.aspx?id=28177
2. Office 365Powershell? http://technet.microsoft.com/library/jj151815.aspx
安裝完成之后。使用管理員身份運(yùn)行windows powershell(若不以管理員身份運(yùn)行,則后續(xù)的命令執(zhí)行后會(huì)報(bào)錯(cuò)!)
啟動(dòng)之后,首先確定ps是否配置為運(yùn)行腳本。輸入:Get-ExecutionPolicy若已配置,則應(yīng)該如下圖顯示:
若沒有配置,則應(yīng)該首先配置為運(yùn)行腳本,輸入:Set-ExecutionPolicy?RemoteSigned?
?
確定之后,創(chuàng)建ps憑據(jù)對(duì)象:$credential?=?Get-Credential執(zhí)行之后,則會(huì)彈出一個(gè)對(duì)話框,輸入office365的賬號(hào)名和密碼(必須要有全局管理員權(quán)限)
點(diǎn)擊確定之后,將不會(huì)有任何提示。若想確定是否登錄成功,可以執(zhí)行$credential,可以看到類似如下圖的返回結(jié)果此時(shí),請(qǐng)注意,Get-Credential?cmdlet 只創(chuàng)建憑據(jù)對(duì)象,并不對(duì)您進(jìn)行身份驗(yàn)證,也不驗(yàn)證您提供的用戶名和密碼是否正確。例如,假設(shè)您將用戶名錯(cuò)誤鍵入為“eknmyer@litwareinc.onmicrosoft.com”。如果確實(shí)如此,則 Get-Credential 將使用該用戶名創(chuàng)建憑據(jù)對(duì)象,并不會(huì)檢查該用戶名是否有效。在您真正使用憑據(jù)對(duì)象嘗試連接到 Office 365 之前,您不會(huì)知道自己創(chuàng)建的憑據(jù)對(duì)象是否真的有效。
下面連接到office365
首先需要導(dǎo)入office365模塊
Import-Module?MsOnline輸入Get-Module進(jìn)行查詢
?
?
用上面創(chuàng)建的憑據(jù)對(duì)象連接到office365
Connect-MsolService?-Credential?$credential?
連接完成之后,輸入Get-MsolDomain 利用返回結(jié)果驗(yàn)證是否連接成功
?
這一步連接成功之后,就可以按照需要連接sharepoint online/lynconline/exchange online
可參考:http://technet.microsoft.com/zh-CN/library/dn568015.aspx
今天因?yàn)樾枰?#xff0c;需要連接到exchange online。
創(chuàng)建遠(yuǎn)程ps與exchange online的會(huì)話
$exchangeSession?=?New-PSSession?-ConfigurationName?Microsoft.Exchange?-ConnectionUri?"https://outlook.office365.com/powershell-liveid/"?-Credential?$credential?-Authentication?"Basic"?-AllowRedirection在這一步執(zhí)行的時(shí)候報(bào)了一個(gè)錯(cuò)誤,后來確定了一下,上條命令中:https://outlook.office365.com的地址為全球版office365的exchange online的地址,而我的產(chǎn)品訂閱的為世紀(jì)互聯(lián)運(yùn)營(yíng)的中國(guó)版的office365,所以需要將上述地址替換為:https://partner.outlook.cn。
?
執(zhí)行之后,導(dǎo)入遠(yuǎn)程會(huì)話:Import-PSSession?$exchangeSession若運(yùn)行正常,則可以看到以下命令
若返回以下,則表示連接成功,可以進(jìn)行管理了
?
本次需求是已經(jīng)利用exchange online的管理界面創(chuàng)建了很多通訊組(包含通訊組和動(dòng)態(tài)通訊組),查詢某一動(dòng)態(tài)通訊組成員。
例如:查詢系統(tǒng)服務(wù)部的成員
$DDG = Get-DynamicDistributionGroup 系統(tǒng)服務(wù)部
Get-Recipient -RecipientPreviewFilter $DDG.RecipientFilter
PS:第一個(gè)命令使用?$DDG?變量存儲(chǔ)動(dòng)態(tài)通訊組對(duì)象,第二個(gè)命令使用?Get-Recipient?cmdlet 來列出符合為動(dòng)態(tài)通訊組定義的條件的收件人。
從返回結(jié)果中查詢到有部分人員并沒有包含在系統(tǒng)服務(wù)部中,按照規(guī)則,應(yīng)該是部門選項(xiàng)卡為添加具體值,那么在企業(yè)中肯定有類似的用戶缺少部門選項(xiàng)卡的值,我們首先來查看下哪些用戶的部門值為空
在網(wǎng)頁(yè)管理中為缺少該值的用戶添加之后,確認(rèn),修改完成。
轉(zhuǎn)載于:https://blog.51cto.com/yamateh/1587287
總結(jié)
以上是生活随笔為你收集整理的利用powershell管理office365的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [脚本]快速删除
- 下一篇: python解析gff文件中的转录本