[玩转系统] 使用 PowerShell 管理用户邮箱
作者:精品下载站 日期:2024-12-14 09:09:45 浏览:15 分类:玩电脑
使用 PowerShell 管理用户邮箱
在本文中,我们将向您展示如何使用 PowerShell 管理 Microsoft 365 用户邮箱。了解如何创建新的用户邮箱、管理不同的邮箱权限、导出邮箱信息、将用户邮箱转换为其他类型以及删除邮箱。
Microsoft 365 邮箱类型
Microsoft 365 中有四种不同的邮箱类型:
- 用户邮箱
- 共享邮箱
- 客房邮箱
- 设备邮箱
在本文中,我们将介绍如何使用 PowerShell 管理常规用户邮箱。
连接到 Exchange Online PowerShell
为了能够运行 PowerShell 命令,您必须连接到 Exchange Online PowerShell。
以管理员身份打开 Windows PowerShell 并运行以下 cmdlet。
Connect-ExchangeOnline
登录您的帐户并输入密码。
1.创建新用户邮箱
普通用户邮箱是一种特殊类型的 Exchange 邮箱。您必须使用 Microsoft 365 管理中心或 Exchange Online PowerShell 创建用户邮箱。我们将仅显示 PowerShell 命令。
运行 New-Mailbox cmdlet 并填写以下参数的信息:
- 别名
- 姓名
- 名
- 姓
- 显示名称
- MicrosoftOnlineServicesID(用户电子邮件地址)
以下 PowerShell 命令将创建一个名为 Kelly Test 的新用户邮箱。我们添加了参数-RestetPasswordOnNextLogon,因此用户首次登录 Microsoft 365 时需要重置密码。
New-Mailbox -Alias "Kelly1" -Name "KellyTest" -FirstName "Kelly" -LastName "Test" -DisplayName "Kelly Test" -MicrosoftOnlineServicesID "[email protected]" -Password (ConvertTo-SecureString -String 'P@s$w0rd' -AsPlainText -Force) -ResetPasswordOnNextLogon $true
PowerShell 输出显示您创建的新用户邮箱以及通知您需要许可证的警告。
PS C:\> New-Mailbox -Alias "Kelly1" -Name "KellyTest" -FirstName "Kelly" -LastName "Test" -DisplayName "Kelly Test" -MicrosoftOnlineServicesID "[email protected]" -Password (ConvertTo-SecureString -String 'P@s$w0rd' -AsPlainText -Force) -ResetPasswordOnNextLogon $true
Name Alias Database ProhibitSendQuota
---- ----- -------- -----------------
KellyTest Kelly1 EURPR02DG514-db460 99 GB (106,300,44...
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.
注意:请记住在 30 天内向该新用户分配许可证以激活该邮箱。
2.管理用户邮箱权限
您可以向其他许可用户授予对另一个 Microsoft 365 用户邮箱的不同权限:
- 读取和管理权限(完全访问)
- 发送为权限
- 代表权限发送
这意味着您可以添加其他许可用户并授予他们对新用户邮箱的权限。
当我们为用户分配对另一个用户邮箱的“完全访问”权限时,该邮箱会自动添加到该用户的 Outlook 邮件配置文件中。此功能被描述为AutoMap,默认情况下处于启用状态。
分配完全访问权限用户邮箱
我们将运行 Add-MailboxPermission cmdlet 来管理邮箱的完全访问权限。
注意:您必须拥有许可的用户邮箱才能管理权限。
PowerShell 命令语法。
Add-MailboxPermissions "User Mailbox" -User "Mail Recipient" -AccessRights FullAccess -InheritanceType All
运行以下 PowerShell 命令将邮箱分配给用户邮箱。
Add-MailboxPermission "User Test" -User "David Kent" -AccessRights FullAccess -InheritanceType all
PowerShell 输出显示您已成功向特定用户分配完全访问权限。
PS C:\> Add-MailboxPermission "User Test" -User "David Kent" -AccessRights FullAccess -InheritanceType all
Identity User AccessRights IsInherited Deny
-------- ---- ------------ ----------- ----
UserTest S-1-5-21-70143928... {FullAccess} False False
分配完全访问权限用户邮箱而不使用自动映射
我们想要为特定用户分配对另一个用户邮箱的“完全访问”权限。您可以在分配权限时禁用AutoMap选项。在这种情况下,我们不希望用户邮箱自动添加到特定用户的 Outlook 配置文件中。
因此,您必须添加值为 $False 的 PowerShell 参数 -AutoMapping。
运行以下 PowerShell 命令,向用户“David Kent”授予对其他用户邮箱的完全访问权限,而无需自动映射
Add-MailboxPermission "User Test" -User "David Kent" -AccessRights FullAccess -InheritanceType All -AutoMapping $False
PowerShell 输出显示您已成功分配对用户邮箱的完全访问权限。
PS C:\> Add-MailboxPermission "User Test" -User "David Kent" -AccessRights FullAccess -InheritanceType All -AutoMapping $False
Identity User AccessRights IsInherited Deny
-------- ---- ------------ ----------- ----
UserTest S-1-5-21-70143928... {FullAccess} False False
批量分配完全访问权限用户邮箱,无需自动映射
您还可以批量分配单个用户邮箱 (David Kent) 对所有用户邮箱的完全访问权限。我们还将添加参数-Automapping以禁用 Outlook 中的自动映射。
使用以下 PowerShell 命令为特定用户分配所有 Office 365 用户邮箱的完全访问权限。
Get-Mailbox -Filter '(RecipientTypeDetails -eq "UserMailbox")' | Add-MailboxPermission -User "David Kent" -AccessRights FullAccess -InheritanceType All -AutoMapping $False
PowerShell 输出将如下例所示。
PS C:\> Get-Mailbox -Filter '(RecipientTypeDetails -eq "UserMailbox")' | Add-MailboxPermission -User "David Kent" -AccessRights FullAccess -InheritanceType All -AutoMapping $False
Identity User AccessRights IsInherited Deny
-------- ---- ------------ ----------- ----
ea2b7e6a-fb01-42e... S-1-5-21-70143928... {FullAccess} False False
d912b0fc-6f7e-4ec... S-1-5-21-70143928... {FullAccess} False False
eec2668a-0773-494... S-1-5-21-70143928... {FullAccess} False False
fd199cb4-2ebf-417... S-1-5-21-70143928... {FullAccess} False False
fa956d8c-87df-4cd... S-1-5-21-70143928... {FullAccess} False False
d89be5ce-6495-400... S-1-5-21-70143928... {FullAccess} False False
a9532b30-4edb-4b6... S-1-5-21-70143928... {FullAccess} False False
b602b148-2fcf-435... S-1-5-21-70143928... {FullAccess} False False
3bb176aa-d0ba-47f... S-1-5-21-70143928... {FullAccess} False False
41377e9c-dc47-46c... S-1-5-21-70143928... {FullAccess} False False
KellyTest S-1-5-21-70143928... {FullAccess} False False
删除用户邮箱的完全访问权限
假设您犯了一个错误,想要删除用户邮箱的完全访问权限。我们将运行Remove-MailboxPermission cmdlet 以删除用户邮箱的权限。
PowerShell 命令语法。
Remove-MailboxPermission "User Mailbox" -AccessRights "The type of permissions" -User "Recipient"
使用以下 PowerShell 命令删除用户邮箱的完全访问权限。
Remove-MailboxPermission "Brenda Smith" -AccessRights FullAccess -User "David Kent"
要验证您是否从此特定用户邮箱中删除了用户的完全访问权限,请运行Get-MailboxPermission。
运行以下 PowerShell 命令可查看单个用户邮箱的所有完全访问权限。
Get-MailboxPermission "Brenda Smith" | Where-Object { ($_.IsInherited -eq $False) -and -not ($_.User -like "NT AUTHORITY\SELF") } | Select-Object Identity, User, AccessRights
如果 PowerShell 输出为空,则表明您尚未为任何邮箱分配“完全访问”权限。
分配发送为权限用户邮箱
您可以向常规用户邮箱分配发送As权限。在我们的示例中,我们希望向用户邮箱 (KellyTest) 授予另一个用户邮箱 (Brenda Smith) 的“发送为”权限。
PowerShell 命令语法。
Add-RecipientPermission "User Mailbox" -Trustee "Mail Recipient" -AccessRights SendAs -Confirm:$False
使用下面的 PowerShell 示例为用户邮箱分配“发送为”权限。
Add-RecipientPermission "Brenda Smith" -Trustee "KellyTest" -AccessRights SendAs -Confirm:$False
PowerShell 输出显示。
PS C:\> Add-RecipientPermission "Brenda Smith" -Trustee "KellyTest" -AccessRights SendAs -Confirm:$False
Identity Trustee AccessControlType AccessRights Inherited
-------- ------- ----------------- ------------ ---------
d912b0fc-6f7e-4ec2-a9e4-854ed27a511a KellyTest Allow {SendAs} False
批量分配发送为权限的用户邮箱
您还可以在一个 PowerShell 命令中将特定用户的“发送为”权限分配给所有用户邮箱。在我们的示例中,我们希望将用户邮箱 (Brenda Smith) 分配给所有 Office 365 用户邮箱。
运行以下 PowerShell 命令示例。
Get-Mailbox -Filter '(RecipientTypeDetails -eq "UserMailbox")' | Add-RecipientPermission -Trustee "Brenda Smith" -AccessRights SendAs -Confirm:$False
PowerShell 输出显示分配了“发送为”权限的所有用户邮箱。
PS C:\> Get-Mailbox -Filter '(RecipientTypeDetails -eq "UserMailbox")' | Add-RecipientPermission -Trustee "Brenda Smith" -AccessRights SendAs -Confirm:$False
Identity Trustee AccessControlType
-------- ------- -----------------
ea2b7e6a-fb01-42e3-9fb8-ccf13a5f2e67 d912b0fc-6f7e-4ec2-a9e4-854ed27a511a Allow
d912b0fc-6f7e-4ec2-a9e4-854ed27a511a d912b0fc-6f7e-4ec2-a9e4-854ed27a511a Allow
eec2668a-0773-4947-93ba-2223f6acfe55 d912b0fc-6f7e-4ec2-a9e4-854ed27a511a Allow
fd199cb4-2ebf-4171-96e2-12fd75453e39 d912b0fc-6f7e-4ec2-a9e4-854ed27a511a Allow
fa956d8c-87df-4cd4-ac2a-ac1f3d7cac8b d912b0fc-6f7e-4ec2-a9e4-854ed27a511a Allow
d89be5ce-6495-4009-b61b-81126c239c34 d912b0fc-6f7e-4ec2-a9e4-854ed27a511a Allow
a9532b30-4edb-4b66-a3b0-6ac972a6065b d912b0fc-6f7e-4ec2-a9e4-854ed27a511a Allow
b602b148-2fcf-435a-9d34-ce72c3a8c748 d912b0fc-6f7e-4ec2-a9e4-854ed27a511a Allow
3bb176aa-d0ba-47f7-aecc-f4837593006e d912b0fc-6f7e-4ec2-a9e4-854ed27a511a Allow
41377e9c-dc47-46c0-b4a5-1d5bbdcb5cc5 d912b0fc-6f7e-4ec2-a9e4-854ed27a511a Allow
KellyTest d912b0fc-6f7e-4ec2-a9e4-854ed27a511a Allow
删除发送为权限的用户邮箱
如果您犯了一个错误,并且不想将用户邮箱 (Brenda Smith) 的“发送为”权限授予另一个用户邮箱 (David Kent),您可以将其删除。
让我们展示如何删除单用户邮箱的代理发送权限。
PowerShell 命令语法。
Remove-RecipientPermission "User Mailbox" -AccessRights "The type of permissions" -Trustee "Recipient" -Confirm:$False
运行 PowerShell 命令示例以从 Brenda Smith 的用户邮箱中删除“发送为”权限。
Remove-RecipientPermission "Brenda Smith" -AccessRights SendAs -Trustee "David Kent" -Confirm:$False
要验证您已从 Brenda Smith 的用户邮箱中删除了“代理发送”权限,请运行 Get-RecipientPermission。
运行以下 PowerShell 命令以查看单个用户邮箱 (Brenda Smith) 的所有发送为权限。
Get-RecipientPermission "Brenda Smith" | Where-Object {($_.IsInherited -eq $False) -and -not ($_.Trustee -like "NT AUTHORITY\SELF") } | Select-Object Trustee, AccessRights
如果 PowerShell 输出为空,则表明您尚未为任何邮箱分配“发送为”权限。
3.显示用户邮箱信息
运行以下 PowerShell 命令以获取所有许可用户邮箱的列表。
Get-Mailbox -Filter '(RecipientTypeDetails -eq "UserMailBox")' | Select Name,Alias
PowerShell 输出如下例所示。
PS C:\> Get-Mailbox -Filter '(RecipientTypeDetails -eq "UserMailBox")' | Select Name,Alias
Name Alias
---- -----
ea2b7e6a-fb01-42e3-9fb8-ccf13a5f2e67 Stephen.Hunter
d912b0fc-6f7e-4ec2-a9e4-854ed27a511a Brenda.Smith
eec2668a-0773-4947-93ba-2223f6acfe55 David.Kent
fd199cb4-2ebf-4171-96e2-12fd75453e39 Susan.Brown
fa956d8c-87df-4cd4-ac2a-ac1f3d7cac8b Chris.Lucas
d89be5ce-6495-4009-b61b-81126c239c34 George.Wilson
a9532b30-4edb-4b66-a3b0-6ac972a6065b Jill.Bates
b602b148-2fcf-435a-9d34-ce72c3a8c748 Diana.Baker
3bb176aa-d0ba-47f7-aecc-f4837593006e Mary.James
41377e9c-dc47-46c0-b4a5-1d5bbdcb5cc5 Amanda.Hansen
KellyTest Kelly1
将许可用户邮箱列表导出到 CSV 文件
您可以将所有现有用户邮箱的信息导出到单个 CSV 文件。这样,您就可以轻松搜索不同的用户邮箱。
运行以下 PowerShell 命令将所有用户邮箱的列表导出到 CSV 文件。
Get-Mailbox -Filter '(RecipientTypeDetails -eq "UserMailbox")' | Select-Object DisplayName,Alias,RecipientTypeDetails,PrimarySmtpAddress | Export-CSV "C:\temp\User Mailboxes Info.CSV" -NoTypeInformation -Encoding UTF8
导出信息后,您可以在 C:\temp 文件夹中找到 CSV 文件。
使用 Microsoft Excel 等应用程序打开 CSV 文件以查看结果。
显示用户邮箱信息权限
显示有关完全访问和代理发送权限的信息:
- PowerShell cmdlet Get-MailboxPermission 显示“完全访问”权限
- PowerShell cmdlet Get-RecipientPermission 显示“发送为”权限
这两个 PowerShell 命令的默认输出显示冗余信息,导致很难清楚地了解 Exchange 邮箱权限。为此,我们会对冗余信息进行过滤和去除。
在我们的示例中,我们希望查看有关 Brenda Smith 的用户邮箱的信息。
1. 显示用户邮箱的完全访问权限
运行以下 PowerShell 命令以显示用户邮箱的所有完全访问权限。
Get-MailboxPermission "Brenda Smith" | Where-Object { ($_.IsInherited -eq $False) -and -not ($_.User -like "NT AUTHORITY\SELF") } | Select-Object Identity, User, AccessRights
PowerShell 输出显示用户邮箱 (Brenda Smith) 的所有完全访问权限。
PS C:\> Get-MailboxPermission "Brenda Smith" | Where-Object { ($_.IsInherited -eq $False) -and -not ($_.User -like "NT AUTHORITY\SELF") } | Select-Object Identity, User, AccessRights
Identity User AccessRights
-------- ---- ------------
d912b0fc-6f7e-4ec2-a9e4-854ed27a511a [email protected] {FullAccess}
2. 显示用户邮箱的发送为权限
运行以下 PowerShell 命令以显示用户邮箱的所有发送为权限。
Get-RecipientPermission "Brenda Smith" | Where-Object {($_.IsInherited -eq $False) -and -not ($_.Trustee -like "NT AUTHORITY\SELF") } | Select-Object Trustee, AccessRights
PowerShell 输出显示用户邮箱 (Brenda Smith) 的所有发送为权限。
PS C:\> Get-RecipientPermission "Brenda Smith" | Where-Object {($_.IsInherited -eq $False) -and -not ($_.Trustee -like "NT AUTHORITY\SELF") } | Select-Object Trustee, AccessRights
Trustee AccessRights
------- ------------
[email protected] {SendAs}
[email protected] {SendAs}
[email protected] {SendAs}
4.转换用户邮箱
您可以轻松地将许可用户邮箱转换为共享、房间或设备邮箱。
注意:如果没有分配 Exchange Online 许可证,您将无法转换用户邮箱。
将用户邮箱转换为共享邮箱
运行 PowerShell 命令将用户邮箱转换为共享邮箱。
Get-Mailbox "KellyTest" | Set-Mailbox -Type Shared
将用户邮箱转换为房间邮箱
使用PowerShell命令将用户邮箱转换为房间邮箱。
Get-Mailbox "KellyTest" | Set-Mailbox -Type Room
将用户邮箱转换为设备邮箱
运行PowerShell命令将用户邮箱转换为设备邮箱。
Get-Mailbox "KellyTest" | Set-Mailbox -Type Equipment
5.删除用户邮箱
您可以使用 PowerShell 轻松软删除特定用户邮箱。这意味着删除的用户将在 Azure AD 回收站中保留 30 天,然后才会被永久删除。您可以使用 PowerShell 在管理 Office 365 回收站中还原已删除的用户。
软删除用户邮箱
您可以软删除单个用户邮箱。
PowerShell命令语法:
Remove-Mailbox -Identity "<User Identity>" -Confirm:$False
PowerShell 命令示例:
Remove-Mailbox -Identity "KellyTest" -Confirm:$False
批量软删除用户邮箱
运行以下 PowerShell 命令以批量软删除用户邮箱。
Get-Mailbox -Filter '(RecipientTypeDetails -eq "UserMailBox")' -ResultSize Unlimited | Remove-Mailbox -Confirm:$False
硬删除用户邮箱
如果您想永久硬删除邮箱,则需要执行几个步骤。请阅读使用 PowerShell 强制删除 Microsoft 365 邮箱一文来了解更多相关信息。
这是否有助于您使用 PowerShell 管理 Office 365 用户邮箱?
了解更多:导出 Microsoft 365 用户许可证 »
结论
您学习了如何创建新的常规用户邮箱并使用 PowerShell 管理权限。导出所有用户邮箱的信息后,您可以轻松地将常规邮箱转换为其他类型。使用PowerShell,您可以批量软删除用户邮箱。
您喜欢这篇文章吗?您可能还喜欢为 Microsoft 365 用户重置 MFA。不要忘记关注我们并分享这篇文章。
猜你还喜欢
- 03-30 [玩转系统] 如何用批处理实现关机,注销,重启和锁定计算机
- 02-14 [系统故障] Win10下报错:该文件没有与之关联的应用来执行该操作
- 01-07 [系统问题] Win10--解决锁屏后会断网的问题
- 01-02 [系统技巧] Windows系统如何关闭防火墙保姆式教程,超详细
- 12-15 [玩转系统] 如何在 Windows 10 和 11 上允许多个 RDP 会话
- 12-15 [玩转系统] 查找 Exchange/Microsoft 365 中不活动(未使用)的通讯组列表
- 12-15 [玩转系统] 如何在 Windows 上安装远程服务器管理工具 (RSAT)
- 12-15 [玩转系统] 如何在 Windows 上重置组策略设置
- 12-15 [玩转系统] 如何获取计算机上的本地管理员列表?
- 12-15 [玩转系统] 在 Visual Studio Code 中连接到 MS SQL Server 数据库
- 12-15 [玩转系统] 如何降级 Windows Server 版本或许可证
- 12-15 [玩转系统] 如何允许非管理员用户在 Windows 中启动/停止服务
取消回复欢迎 你 发表评论:
- 精品推荐!
-
- 最新文章
- 热门文章
- 热评文章
[短剧] 2025年06月08日 精选+付费短剧推荐50部
[短剧] 2025年06月07日 精选+付费短剧推荐54部
[软件合集] 25年6月8日 精选软件33个
[软件合集] 25年6月7日 精选软件26个
[短剧] 2025年06月06日 精选+付费短剧推荐51部
[电影] 死神来了 1-6合集 4K HDR 杜比视界 外挂双语字幕
[软件合集] 25年6月6日 精选软件64个
[影视] 黑道中人 Alto Knights(2025)剧情 犯罪 历史 电影
[古装剧] [七侠五义][全75集][WEB-MP4/76G][国语无字][1080P][焦恩俊经典]
[实用软件] 虚拟手机号 电话 验证码 注册
[短剧] 2025年06月07日 精选+付费短剧推荐54部
[剧集] [央视][笑傲江湖][2001][DVD-RMVB][高清][40集全]李亚鹏、许晴、苗乙乙
[电视剧] 欢乐颂.5部全 (2016-2024)
[电视剧] [突围] [45集全] [WEB-MP4/每集1.5GB] [国语/内嵌中文字幕] [4K-2160P] [无水印]
[影视] 【稀有资源】香港老片 艺坛照妖镜之96应召名册 (1996)
[剧集] 神经风云(2023)(完结).4K
[剧集] [BT] [TVB] [黑夜彩虹(2003)] [全21集] [粤语中字] [TV-RMVB]
[软件合集] 25年6月6日 精选软件64个
[实用软件] 虚拟手机号 电话 验证码 注册
[资源] B站充电视频合集,包含多位重量级up主,全是大佬真金白银买来的~【99GB】
[电视剧] [突围] [45集全] [WEB-MP4/每集1.5GB] [国语/内嵌中文字幕] [4K-2160P] [无水印]
[短剧] 2025年06月07日 精选+付费短剧推荐54部
[软件合集] 25年6月6日 精选软件64个
[剧集] [央视][笑傲江湖][2001][DVD-RMVB][高清][40集全]李亚鹏、许晴、苗乙乙
[电影] 美国队长4 4K原盘REMUX 杜比视界 内封简繁英双语字幕 49G
[电影] 死神来了(1-6)大合集!
[软件合集] 25年05月13日 精选软件16个
[精品软件] 25年05月15日 精选软件18个
[绝版资源] 南与北 第1-2季 合集 North and South (1985) /美国/豆瓣: 8.8[1080P][中文字幕]
[软件] 25年05月14日 精选软件57个
- 最新评论
-
- 热门tag