通过Office 365中的Powershell使用CSV创建新邮箱

时间:2015-08-31 16:03:08

标签: powershell office365

我需要在Office 365中通过Powershell创建新邮箱。 我正在使用这个脚本:

$User = "administrator@blablabla.onmicrosoft.com" 
$PWord = ConvertTo-SecureString -AsPlainText -Force -String "P@ssword1"
$Credential = New-Object –TypeName System.Management.Automation.PSCredential –ArgumentList $User, $PWord
$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $Credential -Authentication Basic -AllowRedirection 
Import-PSSession $Session

Import-CSV new.csv | foreach { 
    New-Mailbox -UserPrincipalName $_.UserPrincipalName -displayname $_.DisplayName -password (ConvertTo-SecureString $_.password -AsPlainText -Force) -usagelocation "us" 
}

Get-PSSession | Remove-PSSession

邮箱的详细信息保存在new.csv文件中。 请参阅以下示例:

UserPrincipalName,DisplayName,password
clark.kent@blablabla.onmicrosoft.com,Clark Kent,P@ssword1
bruce.wayne@blablabla.onmicrosoft.com,Bruce Wayne,P@ssword1
peter.parker@blablabla.onmicrosoft.com,Peter Parker,P@ssword1

当我运行此脚本时,我返回错误:

A parameter cannot be found that matches parameter name 'UserPrincipalName'.
    + CategoryInfo          : InvalidArgument: (:) [New-Mailbox], 

ParameterBindingException
    + FullyQualifiedErrorId : NamedParameterNotFound,New-Mailbox
    + PSComputerName        : outlook.office365.com

拜托,出了什么问题? 你能救我吗?

3 个答案:

答案 0 :(得分:2)

UPN参数仅在本地Exchange上可用。根据您的AD是本地还是云端,我建议先使用此参数创建AD帐户,然后启用邮箱。

或者只是不要使用此参数。

答案 1 :(得分:1)

正确的方法是通过 MicrosoftOnlineServicesID 参数执行此操作,该参数似乎复制 UPN

New-Mailbox -Alias $mailbox.Alias -Name $mailbox.Name -DisplayName $mailbox.DisplayName -ResetPasswordOnNextLogon $true -Password $temporaryPassword -MicrosoftOnlineServicesID $upn -WhatIf

WARNING: After you create a new mailbox, you must go to the Office 365 Admin Center and assign the mailbox a license, or it will
 be disabled after the grace period.
What if: Creating mailbox "Anna" with User Principal Name "anna@domain.org.pl" in organizational
 unit "EURPR06A004.PROD.OUTLOOK.COM/Microsoft Exchange Hosted Organizations/domain.onmicrosoft.com".

可以在blog找到完整的故事,但您只需要将 UPN 更改为 MicrosoftOnlineServicesID ,它就可以立即生效。

答案 2 :(得分:0)

尝试-identity而不是-userprincipalname