我正在寻找一种方法来有效删除已终止用户在任职期间可能创建的所有会议。
目前,我们的团队必须授予用户邮箱的管理员访问权限、以该用户的身份创建个人资料、加载 Outlook 并开始清理定期会议和房间预订。
我希望有一种更简单的方法,也许是 powershell,可以完成这项任务。
答案1
使用 EWS 托管 API 访问用户邮箱的内容并删除必要的项目。可以使用任何 .Net 语言或 PowerShell 脚本实现。
答案2
您不能仅使用 Exchange 命令行管理程序来执行此操作,您必须实施 Exchange Web 服务客户端才能执行此操作。
比创建新的配置文件并使用 Outlook 更简单的选择肯定是使用 Outlook Web App:
- 授予操作员对邮箱的完全访问权限
- 操作员登录http://webmail.company.net/owa/
- 通过以下方式更改邮箱:
- 选项 -> 更改邮箱
- 将位置 URI 更改为http://webmail.company.net/owa/[电子邮件保护]/
现在,操作员可以切换到用户日历并编辑约会,而无需创建新的配置文件并启动 Outlook
答案3
正如“jack”在他的帖子中所建议的那样,您可以使用 Exchange shell 命令查找这些项目
搜索邮箱,然后删除它们。
您指定目标邮箱和目标文件夹,其中将复制每次搜索中找到的项目。您也可以使用“-LogLevel full -LogOnly”,并仅获取复制到那里的结果的 CSV 文件。您可以
使用搜索查询参数,并且正确执行此操作可能有点棘手,因为搜索属性(如主题、发件人、日期)必须以您的区域设置/语言提供。因此在英语系统上,日历项目的 SearchQuery 可能如下所示:
'Kind:meetings AND From:*name* AND Subject:Pizza'
“AND”或“OR”不特定于语言环境,您也可以使用括号。我从未在 Microsoft 上找到这些关键词的翻译,也许其他人知道在哪里可以找到它们。
一旦您确认 SearchQuery 符合您的要求,您就可以添加-删除内容删除这些项目。完整命令可能如下所示:
Search-Mailbox *name* -SearchQuery 'Kind:meetings AND From:*name2* AND Subject:Pizza' -TargetMailbox admin -TargetFolder ExchangeSearches -LogLevel full
答案4
get-mailbox -Filter {recipientTypeDetails -eq "roomMailbox"}|Search-Mailbox -SearchQuery 'From:user and kind:meetings' -DeleteContent