Есть задача, выставить у всех пользователей Exchange 2010 в календарях одинаковые праздничные дни и может быть какие то заметки.
Сначала открываем EMC. И через нее даем права на импорт и экспорт *.pst файлов пользователю
ManagementRoleAssignment -Role "Mailbox Import Export" - User user@domen
Нужно создать нового тестового пользователя (test1) на почтовом сервере. Он нам нужен для того чтобы в его чистом календаре выставить нужные нам отметки и даты. Когда мы это сделали, то следует приступить к выгрузки календаря пользователя test1:
New-MailboxExportRequest -Mailbox test1 -FilePath C:\filename.pst -IncludeFolders "#Calendar#"
И так, шаблон календаря у нас есть, а вот списка пользователей которым нужен этот шаблон, у нас нету. Для этого выгрузим все Алиасы почтовых ящиков в CSV файл.
Get-Mailbox | select alias, whencreated | Export-CSV -Path "C:\AliasFile.csv" -NoTypeInformation -Delimiter ";"
В полученном списке алиасов, нужно удалить те почтовые ящики (пользователей) которым данное обновление календаря ни к чему.
Теперь завязка. Нужно объединить список почтовых ящиков и шаблон клаендаря пользователя test1. В этом скрипте цикл пробегается по всем строчкам файла с алиасами, и к каждому из них применяет новый шаблон календаря.
Import-CSV -Path "C:\AliasFile.csv" -Delimiter ";" | foreach-object {New_MailboxImportRequest
-Mailbox
$_.Alias
-FilePath C:\filename.pst
-IncludeFolders
"#Calendar#"}