在一些情况下,要删除用户的邮件(比如发错了,不希望别人看到)就需要进行删除操作,office365的管理界面是没有删除用户邮件的功能,所以虽然管理员权限是老大,但也要你费点周折才能删除。
1.登录office365,进入exchange管理中心
2.进入权限菜单
3.管理角色Discovery Management,编辑,将admin邮箱添加进入
4.增加一个组,赋予mailbox import exporthe和邮箱搜索权限,也把admin邮箱添加进入
https://docs.microsoft.com/zh-cn/office365/securitycompliance/search-for-and-delete-messagesadmin-help
5.打开powershell(以管理员身份运行)
5.1输入$credential = get-credential
系统跳出一个窗体,让你输入管理员的账户和密码
5.2输入如下内容
$exchangeSession = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri "https://outlook.office365.com/powershell-liveid/" -Credential $credential -Authentication "Basic" -AllowRedirection
Import-PSSession $exchangeSession -DisableNameChecking
系统可能会出错:
Import-PSSession : 无法加载文件,因为禁止在此系统上运行脚本。请提供有效的证书以对这些文件进行签名。
所在位置 行:1 字符: 1
+ Import-PSSession $exchangeSession -DisableNameChecking
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (:) [Import-PSSession],PSInvalidOperationException
+ FullyQualifiedErrorId : InvalidOperation,Microsoft.PowerShell.Commands.ImportPSSessionCommand
这是因为权限问题,输入get-executionpolicy,你可以看到是Restricted.
你需要输入如下内容解决权限问题:set-executionpolicy remotesigned
5.3继续输入:
Import-PSSession $exchangeSession -DisableNameChecking
这个时候就不会出错了,powershell上面会出现进度条,表明你成功了。
6.检索并删除邮件
Search-Mailbox -Identity "[email protected]" -SearchQuery Subject:"RE: new user." –DeleteContent
警告: 如果指定搜索查询,则对于每个邮箱,Search-Mailbox cmdlet 将返回多达 10000 个结果。要返回 10000
个以上的结果,请使用 New-MailboxSearch cmdlet 或 Exchange 管理中心中的就地电子数据展示和保留控制台。
Confirm
正在从邮箱 [email protected] 中删除内容
[Y] Yes [A] Yes to All [N] No [L] No to All [?] 帮助 (默认值为“Y”): y
RunspaceId : f1d27569-10b2-4c28-abe5-2e90f5210de0
Identity : AAA
TargetMailbox :
Success : True
TargetFolder :
ResultItemsCount : 5
ResultItemsSize : 1.803 MB (1,890,599 bytes)
这个命令还是有很多种查询参数,反正使用不频繁,也没有再试。
Search-Mailbox -Identity “user mailbox name” –SearchQuery Subject:”specific phrase or words” –TargetMailbox “BackupMailbox” –TargetFolder “DeletedMessages” –LogLevel Full -DeleteContent