使用PowerShell进行大规模删除
您可以使用PowerShell插件和InsightConnect团队编写的脚本来批量删除Office 365实例中的项目。
您可以选择在Insight Orchestrator或组织拥有的单独服务器上执行Mass Delete PowerShell脚本。
要将PowerShell插件与InsightConnect mass delete脚本一起使用,您需要:
- 在Office 365中设置所有依赖项
- 选择应执行PowerShell脚本的计算机:你的洞察力编辑者或环境中的另一台服务器
- 在任意一台计算机上以及任何依赖项上设置批量删除脚本
- 在InsightConnect中配置PowerShell插件
设置Office 365依赖项
在InsightConnect中运行批量删除脚本之前,需要为Office 365设置依赖项。
为Office 365设置新用户
您需要在Office 365实例中创建一个具有适当权限的新用户,以便与InsightConnect进行通信。要创建用户,请参考本文档Microsoft Office 365电子邮件安全插件安装指南因为这也与Powershell插件配置相关。
为PowerShell用户帐户设置角色组
您在Office 365中创建的用于InsightConnect PowerShell插件的用户帐户需要一定的权限。该用户需要属于以下三个Office 365角色组:
eDiscovery经理
合规管理员
组织管理
了解有关这些组的更多信息,请访问https://docs.microsoft.com/en-us/office365/securitycompliance/permissions-in-the-security-and-compliance-center
要在Microsoft 365管理中心中为该用户分配正确的权限:
- 单击屏幕上的向下箭头管理中心选项,然后单击安全与合规.
- 在Office 365安全与法规遵从性管理中心,点击权限左侧导航面板中的选项。
- 检查角色组的权限列表
eDiscovery经理
,合规管理员
和组织管理
. 这些是Microsoft设置的默认角色组。然后按照以下说明向每个角色组添加成员。
配置eDiscovery Manager角色组
- 点击eDiscovery经理在列表中,打开包含该角色详细信息的侧面板,然后单击编辑角色组面板顶部的按钮。
- 点击eDiscovery经理选项卡在编辑选项列表中。
- 点击选择eDiscovery管理器链接,然后单击添加按钮。找到您先前创建的新用户,并选中其名称旁边的复选框。如果您使用我们建议的显示名称,这将是
快速7批量删除
. - 点击添加然后完成然后拯救保存这些设置。
- 然后点击X在配置面板的右上角,完成对
eDiscovery经理
角色组。
配置Compliance Administrator组
- 单击权限列表中的组名,然后单击编辑角色组按钮出现在配置面板顶部。然后点击编辑链接
- 单击添加按钮,找到先前创建的用户,然后选中该框以将该用户添加到此角色组。
- 单击添加那就按按钮吧完成和拯救.
配置组织管理组
- 单击权限列表中的组名,然后单击编辑角色组显示的配置面板顶部的按钮。然后选择选择成员选项,然后单击选择成员链接
- 单击+加按钮,找到先前创建的用户,然后选中该框以将该用户添加到此角色组。
- 单击添加那就按按钮吧完成和拯救.
将新用户添加到三个Office 365角色组后,可以退出Office 365安全与法规遵从性管理中心。
使用编排器设置批量删除(选项1)
或者,您可以在为InsightConnect设置的编排器上执行批量删除脚本。这在安装过程中为您节省了更多的时间和资源,但不如使用您自己的本地服务器执行脚本那样安全。
要在orchestrator中使用批量删除脚本,请执行以下操作:
- 将您使用的任何多因素身份验证服务上的orchestrator IP列入白名单。
白名单编排器IP
如果不将orchestrator IP的连接列入白名单,PowerShell插件将无法连接到联机Microsoft Exchange服务器。
- 在上获取脚本后,编辑mass delete PowerShell脚本https://gist.github.com/jschipp-r7/56bf75a86a121fcf959e821055ba0348。在中的相应行中输入用户名和密码
param
脚本的一部分,根据这个例子:
1.param(2.[字符串]$Username=“”, 3.[string]$Password = "",'
- 接下来,为要从组织中批量删除的电子邮件添加发件人地址和主题行详细信息。把它们粘贴到
ContentMatchQuery美元
根据此示例,脚本中的行:
1.$ContentMatchQuery='(from='+$Sender+“”)(subject=“'+$subject+“ ”)”
现在可以使用PowerShell插件批量删除Office365实例中的条目了。
为批量删除配置PowerShell插件
配置PowerShell插件操作步骤时:
- 选择PowerShell脚本步骤的动作。
- 如果您还没有PowerShell插件的批量删除特定连接,请单击+添加新连接创建一个。根据此表中的说明配置此连接。
领域 |
配置说明 |
---|---|
资格证书 |
添加一个新的凭证,为其命名,表明该凭证是用于大规模删除操作的。在“Password”字段中,添加为之前设置的Office365用户创建的密码。在“Username”字段中,添加您为之前设置的Office365用户创建的完整用户名(看起来应该像“username@organization.domain”)。 |
港口城市 |
将该字段设置为5986。 |
验证类型 |
选择没有一个在这个领域。 |
Kerberos |
将此字段留空。如果将批量删除脚本保存到编排器,则无需配置此字段。 |
- 点击持续设置并选择适当的连接后。
- 命名操作步骤。
- 在“脚本”字段中,粘贴先前编辑的批量删除脚本。
- 将“地址”字段留空。
- 将“主机名”字段留空。
- 点击持续保存步骤。
使用本地服务器设置批量删除(选项2)
使用组织的本地服务器执行脚本可以确保服务器本身上的服务帐户凭据的安全。
要在本地服务器上使用批量删除脚本,请执行以下操作:
- 使用Microsoft的新技术LAN Manager(NTLM)协议或Kerberos对远程主机进行身份验证。
- 保护您的帐户的凭据办公室365帐户在您的本地服务器上,说明在https://practical365.com/blog/saving-credentials-for-office-365-powershell-scripts-and-scheduled-tasks/.
- 将大规模删除PowerShell脚本保存到服务器。获取脚本的副本https://gist.github.com/jschipp-r7/56bf75a86a121fcf959e821055ba0348.
- 编辑脚本以使用在步骤2中设置的安全凭据。
- 查找并记录此服务器的IP地址和主机名。
现在,您可以使用PowerShell插件批量删除Office 365实例中的项目了。
为批量删除配置PowerShell插件
配置PowerShell插件操作步骤时:
- 选择PowerShell脚本步骤的动作。
- 如果您还没有PowerShell插件的批量删除特定连接,请单击+添加新连接创建一个。根据此表中的说明配置此连接。
领域 |
配置说明 |
---|---|
资格证书 |
保留为空。您在主机服务器上配置批量删除脚本时完成了所需的安装。 |
港口城市 |
这是连接到组织的主机服务器时要使用的端口号。PowerShell使用两个默认值:5986用于HTTPS连接,5985用于HTTP连接。如果您的组织具有特殊端口配置,或者您不知道要使用哪些默认端口,请与您的IT团队联系以获取正确的端口号。 |
验证类型 |
选择NTLM或Kerberos,在主机服务器上设置脚本时使用的。 |
Kerberos |
如果您选择Kerberos对于“身份验证类型”字段,必须配置此部分。在“KDC”字段中,添加Active Directory服务器的IP地址。在“域名”字段中,提供主机服务器的完全限定域名(FQDN)。 |
- 点击持续设置并选择适当的连接后。
- 命名操作步骤。
- 在“Script”字段中,添加在远程服务器上运行Mass Delete脚本所需的命令。该命令将根据您如何设置服务器而有所不同,但它应该使用该格式
,将变量替换为要从Exchange服务器中批量删除的电子邮件的主题行和发件人地址。-Subject -Sender - 在“地址”字段中,添加保存批量删除脚本的主机服务器的IP地址。
- 在“主机名”字段中,为保存批量删除脚本的主机服务器添加区分大小写的FQDN。
- 点击持续保存步骤。