1,K
Поиск почтовых ящиков без переадресации
# Запрос всех почтовых ящиков в домене 123.ch
$Mailboxes = Get-Mailbox -ResultSize Unlimited | Where-Object {
($_.PrimarySmtpAddress.Domain -eq "123.ch") -and ($_.ForwardingAddress -eq $null)
}
# Вывод информации о найденных почтовых ящиках
$Output = @()
foreach ($Mailbox in $Mailboxes) {
$OutputLine = @{
"Display Name" = $Mailbox.DisplayName
"Primary SMTP Address" = $Mailbox.PrimarySmtpAddress
}
$Output += New-Object PSObject -Property $OutputLine
}
# Вывод информации в горизонтальном виде
$Output | Format-Table -AutoSize | Out-String -Width 200
Поиск почтовых ящиков без переадресации и добавление атрибута 1 со значением
# Запрос всех почтовых ящиков в домене 123.ch
$Mailboxes = Get-Mailbox -ResultSize Unlimited | Where-Object {
($_.PrimarySmtpAddress.Domain -eq "123.ch") -and ($_.ForwardingAddress -eq $null)
}
# Добавление атрибута ExtensionAttribute1
$Output = @()
foreach ($Mailbox in $Mailboxes) {
$ExtensionAttribute1Value = "CH"
# Получение адресов из атрибута ProxyAddresses
$ProxyAddresses = $Mailbox.ProxyAddresses | Where-Object { $_ -match "^SMTP:" }
# Установка значения ExtensionAttribute1
Set-ADUser -Identity $Mailbox.DistinguishedName -Replace @{ExtensionAttribute1 = $ExtensionAttribute1Value}
$OutputLine = @{
"Display Name" = $Mailbox.DisplayName
"Primary SMTP Address" = $Mailbox.PrimarySmtpAddress
"ExtensionAttribute1" = $ExtensionAttribute1Value
}
$Output += New-Object PSObject -Property $OutputLine
}
# Вывод информации в горизонтальном виде
$Output | Format-Table -AutoSize | Out-String -Width 200
Найти все почтовые ящкики с переадресацией и установить им атрибут
# Запрос всех почтовых ящиков в домене inspectorate.ch у которых включена переадресация
$Mailboxes = Get-Mailbox -ResultSize Unlimited | Where-Object {
($_.PrimarySmtpAddress.Domain -eq "inspectorate.ch") -and ($_.ForwardingAddress -ne $null)
}
# Добавление атрибута ExtensionAttribute5
$Output = @()
foreach ($Mailbox in $Mailboxes) {
$ExtensionAttribute5Value = "FW"
# Получение адресов из атрибута ProxyAddresses
$ProxyAddresses = $Mailbox.ProxyAddresses | Where-Object { $_ -match "^SMTP:" }
# Установка значения ExtensionAttribute5
Set-ADUser -Identity $Mailbox.DistinguishedName -Replace @{ExtensionAttribute5 = $ExtensionAttribute5Value}
$OutputLine = @{
"Display Name" = $Mailbox.DisplayName
"Primary SMTP Address" = $Mailbox.PrimarySmtpAddress
"ExtensionAttribute5" = $ExtensionAttribute5Value
}
$Output += New-Object PSObject -Property $OutputLine
}
# Вывод информации в горизонтальном виде
$Output | Format-Table -AutoSize | Out-String -Width 200