今天在公司的生產環境中有個須要用到powershell批量檢查office365用戶的操做,因此在這邊順便記錄的powershell鏈接office365的過程:shell
在鏈接以前,須要安裝兩個工具:1、Office 365 Sign-In Assistanthttp://www.microsoft.com/en-us/download/details.aspx?id=28177windows
2. Office 365Powershell http://technet.microsoft.com/library/jj151815.aspxide
安裝完成以後。使用管理員身份運行windows powershell(若不以管理員身份運行,則後續的命令執行後會報錯!)工具
啓動以後,首先肯定ps是否配置爲運行腳本。輸入:Get-ExecutionPolicy
若已配置,則應該以下圖顯示:spa
若沒有配置,則應該首先配置爲運行腳本,輸入:Set-ExecutionPolicy RemoteSigned
肯定以後,建立ps憑據對象:$credential = Get-Credential
執行以後,則會彈出一個對話框,輸入office365的帳號名和密碼(必需要有全局管理員權限)3d
點擊肯定以後,將不會有任何提示。若想肯定是否登陸成功,能夠執行$credential,能夠看到相似以下圖的返回結果
此時,請注意,Get-Credential cmdlet 只建立憑據對象,並不對您進行身份驗證,也不驗證您提供的用戶名和密碼是否正確。例如,假設您將用戶名錯誤鍵入爲「eknmyer@litwareinc.onmicrosoft.com」。若是確實如此,則 Get-Credential 將使用該用戶名建立憑據對象,並不會檢查該用戶名是否有效。在您真正使用憑據對象嘗試鏈接到 Office 365 以前,您不會知道本身建立的憑據對象是否真的有效。對象
下面鏈接到office365blog
首先須要導入office365模塊ip
Import-Module MsOnline
輸入Get-Module進行查詢
用上面建立的憑據對象鏈接到office365ci
Connect-MsolService -Credential $credential
鏈接完成以後,輸入Get-MsolDomain 利用返回結果驗證是否鏈接成功
這一步鏈接成功以後,就能夠按照須要鏈接sharepoint online/lynconline/exchange online
可參考:http://technet.microsoft.com/zh-CN/library/dn568015.aspx
今天由於須要,須要鏈接到exchange online。
建立遠程ps與exchange online的會話
$exchangeSession = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri "https://outlook.office365.com/powershell-liveid/" -Credential $credential -Authentication "Basic" -AllowRedirection
在這一步執行的時候報了一個錯誤,後來肯定了一下,上條命令中:https://outlook.office365.com的地址爲全球版office365的exchange online的地址,而個人產品訂閱的爲世紀互聯運營的中國版的office365,因此須要將上述地址替換爲:https://partner.outlook.cn。
執行以後,導入遠程會話:Import-PSSession $exchangeSession
若運行正常,則能夠看到如下命令
運行如下命令:Get-AcceptedDomain
若返回如下,則表示鏈接成功,能夠進行管理了
本次需求是已經利用exchange online的管理界面建立了不少通信組(包含通信組和動態通信組),查詢某一動態通信組成員。
例如:查詢系統服務部的成員
$DDG = Get-DynamicDistributionGroup 系統服務部
Get-Recipient -RecipientPreviewFilter $DDG.RecipientFilter
PS:第一個命令使用 $DDG 變量存儲動態通信組對象,第二個命令使用 Get-Recipient cmdlet 來列出符合爲動態通信組定義的條件的收件人。
從返回結果中查詢到有部分人員並無包含在系統服務部中,按照規則,應該是部門選項卡爲添加具體值,那麼在企業中確定有相似的用戶缺乏部門選項卡的值,咱們首先來查看下哪些用戶的部門值爲空
在網頁管理中爲缺乏該值的用戶添加以後,確認,修改完成。