get-Mailbox "info@mydomain.ru" | select name -expand GrantSendOnBehalfTo | sort Set-Mailbox "info@mydomain.ru" -GrantSendOnBehalfTo @{Add="bob@mydomain.ru"} Set-Mailbox "info@mydomain.ru" -GrantSendOnBehalfTo @{Removed="bob@mydomain.ru"}
Поиск пользователей у которых адреса Mail и Targetaddress различаются
Get-AdUser -Filter {Mail -like "*"} -Properties Mail,Targetaddress | Where-Object {($_.mail -and $_.targetAddress) -and ($_.mail -ne ($_.targetAddress -replace "SMTP:",""))} | select mail,@{Expression={$_.targetaddress -replace "SMTP:"};label="Target"} | Export-Csv MismatchedTargets.csv **Note** If you want narrow down your search to a specific OU, you can add the -Searchbase switch after Get-AdUser
или
Get-user -resultsize unlimited -RecipientTypeDetails "User" -OrganizationalUnit "OU=IT,DC=domain,DC=ru" get-mailuser test |fl name,WindowsEmailAddress,PrimarySmtpAddress,ExternalEmailAddress,EmailAddresses
$Addr= "IMCEAEX-_o=mydomain_ou=Exchange+20Administrative+20Group+20+25FUDITYHF23SPDLT+29_cn=Recipients_cn=Bobrikova+2C+20Olga@mydomain.ru" $Repl= @(@("_","/"), @("\+20"," "), @("\+28","("), @("\+29",")"), @("\+2C",","), @("\+3F","?"), @("\+5F", "_" ), @("\+40", "@" ), @("\+2E", "." )) $Repl | ForEach { $Addr= $Addr -replace $_[0], $_[1] } $Addr= "X500:$Addr" -replace "IMCEAEX-","" -replace "@.*$", "" Write-Host $Addr
Добавить полученный адрес, как дополнительный кастом адрес:
Set-Mailbox "Dan Jump" -EmailAddresses @{add="dan.jump@northamerica.contoso.com"} Set-Mailbox "Dan Jump" -EmailAddresses @{add="dan.jump@northamerica.contoso.com","danj@tailspintoys.com"} Set-Mailbox "Dan Jump" -EmailAddresses "SMTP:dan.jump@contoso.com","dan.jump@northamerica.contoso.com","danj@tailspintoys.com"
Set-Mailbox "Janet Schorr" -EmailAddresses @{remove="janets@corp.contoso.com"} Set-Mailbox "Janet Schorr" -EmailAddresses @{remove="janet.schorr@corp.contoso.com","janets@tailspintoys.com"} Set-Mailbox "Janet Schorr" -EmailAddresses "SMTP:janets@contoso.com","janets@tailspintoys.com"
get-Mailbox username |select -ExpandProperty EmailAddresses | select proxyaddressstring
Set-Mailbox "Dan Jump" -EmailAddresses @{add="dan.jump@northamerica.contoso.com","danj@tailspintoys.com"}
Set-Mailbox "Dan Jump" -EmailAddresses "SMTP:dan.jump@contoso.com","dan.jump@northamerica.contoso.com","danj@tailspintoys.com"
Set-Mailbox "Janet Schorr" -EmailAddresses @{remove="janet.schorr@corp.contoso.com","janets@tailspintoys.com"}
Если адресов много, то можно копипастой вставить smtp адреса в скрипт и добавить пользователю с алиасом MyNewUser
$MyData = (@' Myuser1@mydomain.ru Myuser2@mydomain.ru Myuser3@mydomain.ru '@).split("",[System.StringSplitOptions]::RemoveEmptyEntries) foreach ($MyItem in $MyData) { $MyItem Set-Mailbox MyNewUser -EmailAddresses @{add=$MyItem} }
$a=(@' test@mydomain.ru '@).split("`n") | foreach {$_.trim()} foreach ($item in $a) { if (!(Get-Mailbox $item -ErrorAction silentlycontinue )){ Write-Host -ForegroundColor Red $item #Not Exist } else { Write-Host -ForegroundColor green $item #Exist } }