当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] 用于管理 Exchange Online 邮箱的最有用的 PowerShell Cmdlet

作者:精品下载站 日期:2024-12-14 08:28:47 浏览:11 分类:玩电脑

用于管理 Exchange Online 邮箱的最有用的 PowerShell Cmdlet


作为 Microsoft 365 管理员,您可以通过管理中心或 PowerShell 管理您的 Exchange Online 环境。如果您使用管理中心管理邮箱,则需要导航到多个管理中心,例如:

  • 要查看邮箱详细信息,您需要使用 Exchange 管理中心。
  • 要审核邮箱活动,您必须使用安全与合规中心。
  • 要了解邮箱使用情况统计信息,您需要采用 Microsoft 365 管理中心提供的使用情况报告。

因此,大多数管理员更喜欢使用 PowerShell 来管理、报告、审核和分析他们的 Exchange Online 环境。

本博客列出了前 15 个用例,以更好地监控您的 Exchange Online 环境。 (那么,最好的方法是什么?我会在后面的部分告诉你)。

连接到 Exchange Online PowerShell:

要通过 PowerShell 管理 Exchange Online 环境,您需要使用以下 cmdlet 创建 PowerShell 会话。

Connect-ExchangeOnline

上述 cmdlet 允许您使用 MFA 和非 MFA 帐户连接到 Exchange Online PowerShell。

注意:要使用“Connect-ExchangeOnline”cmdlet,您需要安装 Exchange Online PowerShell (EXO V2) 模块。另外,您可以使用 PowerShell 脚本连接 Office 365 服务。

Exchange 邮箱报告:

邮箱是 Exchange Online 的基本组件。要查看组织中的邮箱,请运行 Get-ExoMailbox cmdlet,如下所示。

Get-ExoMailbox -ResultSize Unlimited

或者,您也可以使用Get-Mailbox cmdlet。

[玩转系统] 用于管理 Exchange Online 邮箱的最有用的 PowerShell Cmdlet

获取 Office 365 邮箱大小:

监控邮箱大小可帮助您在适当的时间增加邮箱存储限制。

要查看邮箱的已用大小,请运行 Get-MailboxStatistics 或 Get-ExoMailboxStatistics cmdlet。

Get-ExoMailboxStatistics -Identity admin |select DisplayName,TotalItemSize

如果您想获取所有邮箱的大小,请组合 Get-Mailbox 和 Get-MailboxStatistics cmdlet,如下所示:

Get-Mailbox -ResultSize Unlimited | Get-MailboxStatistics | select DisplayName,TotalItemSize

上面的示例显示了邮箱的大小,如下面的屏幕截图所示。

[玩转系统] 用于管理 Exchange Online 邮箱的最有用的 PowerShell Cmdlet

在 Exchange Online 中获取存档邮箱:

归档为用户的主邮箱提供了一个额外的邮箱。因此,管理员可以在需要更多存储空间时启用对邮箱的归档。

要获取启用存档的邮箱,

Get-Mailbox -ResultSize Unlimited -Archive

要查看存档邮箱大小,

Get-Mailbox -ResultSize Unlimited -Archive | Get-MailboxStatistics| Select DisplayName,TotalItemSize

要了解有关存档邮箱的大小、状态和配额的更多信息,请运行我们的 PowerShell 脚本来生成存档邮箱大小报告。此外,该脚本还提供有关自动扩展存档状态的信息。

获取邮箱配额信息:

邮箱存储配额可帮助您管理邮箱大小和数据库增长。一旦邮箱达到其配额,发送电子邮件、接收电子邮件等某些操作就会受到限制。因此,管理员需要密切关注邮箱配额。

要查看特定邮箱的配额,

Get-Mailbox -Identity [email protected] | select *quota*

这将列出 John 的配额信息,例如禁止发送配额、禁止发送接收配额、发出警告配额、存档配额等。

[玩转系统] 用于管理 Exchange Online 邮箱的最有用的 PowerShell Cmdlet

列出共享邮箱:

共享邮箱是用户邮箱的一种,但用户无法使用用户名和密码直接登录。要访问共享邮箱,用户必须具有某些权限,例如对共享邮箱的完全访问权限、代理发送和代表发送。

要列出您组织中的共享邮箱,请使用RecipientTypeDetails过滤器以及值SharedMailbox。

Get-ExoMailbox -ResultSize Unlimited -RecipientTypeDetails SharedMailbox

要查看用户对共享邮箱的权限,您可以使用我们预先构建的脚本生成共享邮箱权限报告。

获取邮箱权限报告:

与共享邮箱一样,用户邮箱也可以被授予完全访问权限、发送权限和代表发送权限。要识别具有每种权限的用户,请执行以下 cmdlet。

要让用户拥有邮箱的完全访问权限,

Get-Mailbox | foreach {
(Get-MailboxPermission -Identity $_.userprincipalname | where{ ($_.AccessRights -contains "FullAccess") -and ($_.IsInherited -eq $false) -and -not ($_.User -match "NT AUTHORITY") }) | select Identity,AccessRights,User}

要让用户获得“发送为”权限,

Get-Mailbox | foreach {
(Get-RecipientPermission -Identity $_.userprincipalname | where{ -not (($_.Trustee -match "NT AUTHORITY") -or ($_.Trustee -match "S-1-5-21"))}) | select Identity,trustee}

要获取具有代表发送权限的邮箱,

Get-Mailbox -ResultSize Unlimited | Where {$_.GrantSendOnBehalfTo -ne $null} | Select UserprincipalName,GrantSendOnBehalfTo

[玩转系统] 用于管理 Exchange Online 邮箱的最有用的 PowerShell Cmdlet

如果您想获得有关邮箱权限的综合报告,可以下载脚本来生成邮箱权限报告。此 PowerShell 脚本会查找对其他邮箱拥有完全访问权限、代理发送和代表发送权限的 Office 365 用户,并将其导出到 CSV 文件。

识别非活动邮箱:

可以使用邮箱的上次登录时间或上次活动时间来识别不活动的邮箱。

Get-MailboxStatistics cmdlet 可帮助您获取邮箱的上次登录时间和上次活动时间。

Get-Mailbox -ResultSize Unlimited |Foreach{
Get-MailboxStatistics -Identity $_.UserPrincipalName | Select DisplayName,LastLogonTime,LastUserActionTime}

上述 cmdlet 生成的输出如下:

[玩转系统] 用于管理 Exchange Online 邮箱的最有用的 PowerShell Cmdlet

尝试使用我们的脚本生成非活动邮箱报告以及其他属性,例如非活动天数、邮箱类型、分配的许可证、管理员角色等。

使用 PowerShell 获取邮箱转发

电子邮件转发允许管理员/用户自动将电子邮件从邮箱转发到另一个邮箱。

要列出配置有自动电子邮件转发的邮箱,

Get-mailbox -ResultSize Unlimited| where {$_.ForwardingAddress -ne $Null} | select DisplayName,ForwardingAddress

上述 cmdlet 列出了通过 ForwardingAddress 配置电子邮件转发的邮箱。

[玩转系统] 用于管理 Exchange Online 邮箱的最有用的 PowerShell Cmdlet

注意:可以通过多种方式配置电子邮件转发。例如,通过转发地址、重定向至、收件箱规则等。

获取邮箱文件夹权限:

当您不想委托整个邮箱时,请使用“文件夹权限”功能仅授予对特定文件夹的访问权限。

要查看邮箱中可用的文件夹,请运行Get-MailboxFolder以及邮箱的标识。

Get-MailboxFolder -Identity [email protected] -GetChildren

要查看对特定邮箱文件夹分配的权限,请使用 Get-MailboxFolderPermission cmdlet,如下所示:

Get-MailboxFolderPermission -Identity "[email protected]:\To me"

上面的示例返回管理员邮箱中“To me”文件夹的用户权限列表。

[玩转系统] 用于管理 Exchange Online 邮箱的最有用的 PowerShell Cmdlet

通过 PowerShell 管理 Exchange Online 时遇到问题?

如果您是 Office 365 的新手,那么确定正确的 PowerShell cmdlet 来获取所需的报告是一项挑战。即使找到 cmdlet 后,将输出格式化为所需的格式也会耗费您的时间。如果您正在寻找一种只需点击几下鼠标即可生成报告的方法,您可以查看AdminDroid Microsoft 365 报告和审核工具。

AdminDroid 提供1500 多个预构建报告和 20 个具有视觉吸引力的仪表板,让您一目了然地了解有关 Office 365 环境的更多信息。这些报告包括各种 Office 365 服务,例如 Azure AD、Exchange Online、SharePoint Online、Microsoft Teams、OneDrive for Business、Skype for Business、Yammer、常规 Office 365 报告和安全报告。通过使用“视图”和“高级过滤器”选项,您可以根据您的要求创建自定义报告。

[玩转系统] 用于管理 Exchange Online 邮箱的最有用的 PowerShell Cmdlet

此外,AdminDroid 免费提供100 多个报告和一些仪表板来管理您组织的用户、许可证、群组、群组成员身份、成员身份更改、用户登录、密码更改等。免费版本允许您也可以执行定制、安排和导出。下载 AdminDroid 提供的免费 Office 365 报告工具,看看它如何为您服务。

我希望此博客能够帮助您管理和报告 Exchange Online 环境。您更喜欢哪种方法来生成报告?通过评论部分分享您的想法。

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯