none
Удаление дополнительного адреса у всех пользователей. RRS feed

  • Вопрос

  • Ситуация:

    Есть 1500 ящиков , есть два основных домена  domain1.com , domain2.com, настроена политика адресов что при создании ящика создавать два почтовых адреса user@domain1.com , user@domain2.com (user@domain1.com  -  основной) .

    Домен domain2.com  переезжает на другой почтовый сервер.   Нужно етот домен отвязать от существующего сервера. Что делаю:

    Удаляю домен domain2.com  из Accepted Domains , и правлю политику адресов , удаляю от туда домен domain2.com, политика применяется на всех но адрес user@domain2.com у пользователей не удаляется.

    Как удалить дополнительные user@domain2.com адреса на всех ящиках?

     

    6 октября 2011 г. 8:11

Ответы

  • День добрый.

    Тестировать в тестовой среде.

    $mailbox = Get-Mailbox
    $mailbox | foreach {
    for ($i=$_.EmailAddresses.Count;$i -ge 0; $i--)
    {
    $address = $_.EmailAddresses[$i]
    if ($address.SmtpAddress -like "*@domain2.com" )
    {
    Write-host("Remove smtp adress: " + $address.AddressString.ToString() )
    $_.EmailAddresses.RemoveAt($i)
    }
    }
    $_|set-mailbox -EmailAddresses $_.EmailAddresses
    }


    MCITP. Знание - не уменьшает нашей глупости.
    • Предложено в качестве ответа Oleg.KovalenkoModerator 7 октября 2011 г. 5:29
    • Помечено в качестве ответа offskid 7 октября 2011 г. 7:53
    • Снята пометка об ответе offskid 7 октября 2011 г. 8:20
    • Помечено в качестве ответа Yuriy Lenchenkov 13 октября 2011 г. 12:52
    6 октября 2011 г. 8:32
    Модератор

Все ответы

  • День добрый.

    Тестировать в тестовой среде.

    $mailbox = Get-Mailbox
    $mailbox | foreach {
    for ($i=$_.EmailAddresses.Count;$i -ge 0; $i--)
    {
    $address = $_.EmailAddresses[$i]
    if ($address.SmtpAddress -like "*@domain2.com" )
    {
    Write-host("Remove smtp adress: " + $address.AddressString.ToString() )
    $_.EmailAddresses.RemoveAt($i)
    }
    }
    $_|set-mailbox -EmailAddresses $_.EmailAddresses
    }


    MCITP. Знание - не уменьшает нашей глупости.
    • Предложено в качестве ответа Oleg.KovalenkoModerator 7 октября 2011 г. 5:29
    • Помечено в качестве ответа offskid 7 октября 2011 г. 7:53
    • Снята пометка об ответе offskid 7 октября 2011 г. 8:20
    • Помечено в качестве ответа Yuriy Lenchenkov 13 октября 2011 г. 12:52
    6 октября 2011 г. 8:32
    Модератор
  • А без скрипта никак ?
    6 октября 2011 г. 8:36
  • Переклацать все почтовые ящики вручную. )
    MCITP. Знание - не уменьшает нашей глупости.
    6 октября 2011 г. 8:45
    Модератор
  • А через Exchange Management Shell ?
    6 октября 2011 г. 9:29
  • Указаный скрипт тоже выполняеться через EMS.

    Вот для одного пользователя.

    http://technet.microsoft.com/en-us/library/bb123794.aspx

     


    MCITP. Знание - не уменьшает нашей глупости.
    6 октября 2011 г. 10:01
    Модератор
  • Спасибо.

    А  сожно как то обойтись без удаления доп. адресов у пользователей. А  сделать так  чтобы почта которая адресова на user@domain2.com  выходила за пределы ексчендж сервера , тоисть чтобы уходила в мир а  там на нужный сервер.??


    • Изменено offskid 7 октября 2011 г. 8:22
    7 октября 2011 г. 8:22
  • Спасибо.

    А  сожно как то обойтись без удаления доп. адресов у пользователей. А  сделать так  чтобы почта которая адресова на user@domain2.com  выходила за пределы ексчендж сервера , тоисть чтобы уходила в мир а  там на нужный сервер.??



    Можете поиграться с доменами ретрансляции и транспортным правилом "Если адрес получателя содержит..."
    7 октября 2011 г. 11:00