使用远程PowerShell将用户邮箱转变为共享邮箱并移除它的许可证授予其他用户


问题

====

使用远程PowerShell将用户邮箱转变为共享邮箱并移除它的许可证授予其他用户

分析

====

N/A

解决方案

======

 

第一部分:

1). 在本地电脑上,右击"PowerShell" 图标选择"以管理员身份运行(Run as Administrator)" 并运行以下命令:

$UserCredential = Get-Credential

 

2). 在弹出的Windows PowerShell Credential Request(验证请求) 对话框中输入您的Exchange Online用户名(一般地,格式为:username@domain.onmicrosoft.com)和密码, 点击“OK”。

运行以下命令:

$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUrihttps://outlook.office365.com/powershell-liveid/ -Credential $UserCredential -Authentication Basic –AllowRedirection

注意   如果您是位于中国的由世纪互联运营的Office 365 客户,请对ConnectionUri参数使用以下值:https://partner.outlook.cn/PowerShell.

 

3). 运行以下命令. 

Import-PSSession $Session

 

 

 

4). 到2014年10月份,“Small Business”和“Enterprise”的服务版本中的共享邮箱的大小限制升级到 50 GB Exchange Online Plan 1 和 Plan 2 的共享邮箱的大小限制为 10 GB.

如果没有启用“In-Place Archive”,那么这个共享邮箱就不需要授予许可证。如果这个需要被转换的邮箱启用了In-place archive ,那么您需要在转变这个邮箱类型之前先导出这个邮箱的归档数据,可以导出为PST文件。

运行以下命令来转变邮箱:

Set-Mailbox user@domain.onmicrosoft.com -Type share

如果是Exchange Online Plan 1 Plan 2的邮箱,那么在转变之前,我们需要将它的限额设置为 10GB 

Set-Mailbox user@domain.onmicrosoft.com -Type shared -ProhibitSendReceiveQuota 10GB -ProhibitSendQuota 9.5GB -IssueWarningQuota 9GB

 

 

Set-Mailbox user@domain.onmicrosoft.com -Type shared

 

5). 确认这个邮箱是否已经成功转变:

Get-Mailbox user@domain.onmicrosoft.com | Format-List RecipientTypeDetails

 

 

 

6). 在转变邮箱为共享邮箱之后,我们可以给其他用户关于这个共享邮箱的 “完全访问权限(Full Access)” 和“代理发送(Send As)”的 权限(基于您的具体需求). 使用以下命令来操作:

Add-MailboxPermission Sharedmailboxname -User UserA -AccessRights FullAccess

使用以下命令来授予 代理发送的权限:

Add-RecipientPermission Sharedmailboxname -Trustee UserA -AccessRights SendAs

 

 

第二部分:

 

1). 在本地电脑上,右击"PowerShell" 图标选择"以管理员身份运行(Run as Administrator)" 并运行以下命令:

2). 输入Connect-MsolService命令, 在弹窗中输入全局管理员的验证信息

如果验证正确,那么将继续停留在这个PowerShell界面。

3). 输入Get-MsolAccountSku 找到您的AccountSkuId. 您可能会看到如下界面:

AccountSkuId                                  ActiveUnits     WarningUnits    ConsumedUnits  

contoso:ENTERPRISEPACK                             25              0               21   

这个结果表示您拥有的是Enterprise 计划, 这个 AccountSKuId完整的信息是contoso:ENTERPRISEPACK. 同样的您也会看到可用的许可证有25个,已经使用了21个。

举个例子,这是我环境中的一个截图:

 

 

注意:因为您的客户可能用的是其他服务计划,比如Small Business , 那么这 AccountSKuId 可能与<YourDomainName>:ENTERPRISEPACK不同。

 

 

4). 如果要移除许可证,那么运行 Set-MsolUserLicense 命令,通过-RemoveLicenses 来实现。

Set-MsolUserLicense `
  -UserPrincipalName username@<TenantName>.onmicrosoft.com `
  -RemoveLicenses <TenantName>:ENTERPRISEPACK

注意: 如果我们把一个用户邮箱的许可证移除,那么默认的,它的数据还可以保留 30 天。

 

5). 授予权限时,使用 Set-MsolUserLicense 命令,通过 -AddLicenses 来实现. 但我们在授予许可证之前,我们必须给这个用户的 UsageLocation 参数赋值. 这个参数是两个字母代表了这个用户所属的国家。假设jerry 这个用户在美国,那么我们可以对这个用户的UsageLocation 参数做如下修改:

Set-MsolUser -UserPrincipalName `
  "jerry@<TenantName>.onmicrosoft.com" -UsageLocation US 

 

6). 接下来,我们就可以给这个用户授予许可证了,我们需要使用 Set-MsolUserLicense 命令,通过 -AddLicenses 来授予许可证,例如:

Set-MsolUserLicense -UserPrincipalName `
  "jerry@<TenantName>.onmicrosoft.com" `
  -AddLicenses <TenantName>:ENTERPRISEPACK

 

 

 

 

Microsoft China Partner Team

 

 


Comments (0)

Skip to main content