Netwrix 1Secure 提供跨数据和身份的统一可见性——免费试用14天,享有完全访问权限。开始免费试用

资源中心操作指南

使用 PowerShell 或 Netwrix Auditor 获取共享邮箱成员及其权限列表的方法

使用 PowerShell 或 Netwrix Auditor 获取共享邮箱成员及其权限列表的方法

Netwrix Auditor for Exchange

  • 运行 Netwrix Auditor → 导航到“Reports(报表)”→ 展开“Exchange Online”部分 → “Exchange Online State-in-Time”→ 选择“Mailboxes Accessible by Non-Owners”→ 单击“View(查看)”。
  • 将“Mailbox Type”设置为“Shared Mailbox”→ 单击“View Report”。请注意,你也可以使用相关字段搜索该报告。
mailboxes accessible by non-owners shows all exchange online mailboxes accessible by anyone other than the mailbox owner .
  • 要查看委派人员及其权限的详细授权信息,请单击“Delegates”:
a screenshot of a mailbox non-owner permission details report .

了解更多:Netwrix Auditor for Exchange

原生解决方案

使用 PowerShell 连接到 Exchange Online

  • 如果您尚未完成安装,请根据您的操作系统安装 Exchange Online PowerShell 模块。请按照 Microsoft 在 文章中提供的说明进行操作。
  • 以管理员身份打开 PowerShell ISE,并执行以下命令:
      Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
      
  • 运行以下命令,在 Windows PowerShell 凭据请求中输入您的用户 ID 和密码,然后单击“确定”
      $Cred=Get-Credential
      
  • 运行以下命令以连接到 Exchange Online:
      Connect-ExchangeOnline -Credential $Cred
      
  • 复制并运行以下脚本,针对要报告的特定用户调整筛选条件,并指定 CSV 文件输出的目标路径。使用此 PowerShell 脚本,您可以获取共享邮箱名称及其成员权限的列表。
      Get-Mailbox -RecipientTypeDetails SharedMailbox -ResultSize Unlimited |
Get-MailboxPermission |
Select-Object Identity, User, AccessRights |
Where-Object { $_.User -like '*@*' } |
Export-Csv -Path C:\Temp\sharedfolders.csv -NoTypeInformation
      
  • 查看已生成的 CSV 报告:identity(身份)列包含共享邮箱的名称,user(用户)列列出共享邮箱的成员,而 Access Rights(访问权限)列包含权限级别:
a spreadsheet with a list of usernames and email addresses .
  • 使用以下 cmdlet 终止你的会话:
      Disconnect-ExchangeOnline -Confirm:$false
      

确保共享资源安全

与单个用户身份关联的用户邮箱在大多数情况下都很有帮助。尽管如此,有时需要让多个用户或特定组成员拥有标准的工作日历,并且能够代表组织回复邮件。因此,Exchange Online 和本地部署的 Exchange 也提供共享邮箱,其区别在于特殊的 RecipientType 为“SharedMailbox”。共享邮箱不包含与之关联的用户凭据;相反,用户必须通过 Microsoft Exchange Online Admin Center 或 PowerShell 授予对特定共享邮箱的访问权限,这样他们才能为该共享邮箱执行日常任务。

要防止并及时发现共享邮箱的滥用,你必须跟踪共享邮箱以及拥有其访问权限的用户。你可以使用 Exchange Online 管理控制台来获取单个地址的共享邮箱权限。不过,通过 PowerShell,你可以检查该共享邮箱所有成员的权限。

您可以借助以下命令获取共享邮箱权限列表:Get-Mailbox -RecipientTypeDetails SharedMailbox -ResultSize:Unlimited | Get-MailboxPermission 。不过,您可能需要通过使用下列语句对输出进行管道处理(piping),以移除所有“NT AUTHORITY”记录:Where-Object {($_.user -like '*@*')} 。如果您需要按特定访问权限(例如 Full Access 或 Send As)过滤列表,以便使用 Outlook 代表共享邮箱发送邮件,请修改或重写脚本,然后测试新脚本。由于连接延迟,通常在云解决方案上测试 PowerShell 脚本会更耗时。

使用 Netwrix Auditor 的 State-in-Time 报告来覆盖 Exchange Online 和 Exchange Server,是一种更快且更易用的选择。只需几次点击,您就可以生成一份包含所有关键细节的报告,涵盖所有共享邮箱,例如哪些用户对哪些邮箱具有非所有者权限,以及每个用户的权限级别是什么。此外,Netwrix Auditor for Exchange 还提供有关邮箱访问事件、共享邮箱权限变更等更多信息。您还可以使用内置筛选器轻松细化审计结果,并设置报告订阅。因此,您将能够更好地控制 Exchange 环境中正在发生的事情。

分享到