Exchange de carnet d'adresses inclut tous les utilisateurs AD

Actuellement, nous avons une installation Exchange 2010 Comme test pour nos serveurs dominos. Tous nos utilisateurs sont dans Active Directory, et pour leur adresse e-mail définie par attribut mail AD. J'aimerais savoir s'il y a un moyen de permettre à tous les utilisateurs AD Dans le carnet d'adresses, même s'ils n'ont pas de compte Exchange. J'ai lu ce post:

https://serverfault.com/questi ... e-gal
Sur la création de contacts individuels pour les utilisateurs, mais j'aimerais utiliser les utilisateurs actuels AD, Et ne pas conserver une liste séparée des utilisateurs. Des idées?
Invité:

Felix

Confirmation de:

La seule décision que j'ai trouvée - Ceci est l'utilisation de la méthode mailContact. C'est difficile parce que vous avez deux liste: les utilisateurs AD et de nouveaux contacts. Pas besoin d'exporter le carnet d'adresses Domino, Puisque tous les utilisateurs sont déjà dans AD et avoir un attribut installé mail. Donc, j'ai créé un script PowerShell, Qui lit AD et crée un nouveau contact pour chaque utilisateur AD. Il supprimera les contacts existants avant d'ajouter de nouvelles pour soutenir une liste de temps à jour. Je vais l'exécuter sur le calendrier. Ce n'est pas le meilleur moyen, mais il semble que le seul moyen de le faire.

#
# list all email addresses in active directory and create mail contacts
#
# Created By Thomas Wheeler
# wheelert@wheelerwire.com
#

$WarningPreference = "SilentlyContinue"
$VerbosePreference = "SilentlyContinue"

add-pssnapin Microsoft.Exchange.Management.PowerShell.E2010

$strFilter = "(&(objectCategory=User) )"

$objDomain = New-Object System.DirectoryServices.DirectoryEntry

$objSearcher = New-Object System.DirectoryServices.DirectorySearcher
$objSearcher.SearchRoot = $objDomain
$objSearcher.PageSize = 1000
$objSearcher.Filter = $strFilter
$objSearcher.SearchScope = "Subtree"

$colProplist = "name", "mail"
foreach ($i in $colPropList){
$objSearcher.PropertiesToLoad.Add($i)
}

$colResults = $objSearcher.FindAll()

foreach ($objResult in $colResults){
$objItem = $objResult.Properties;
if($objItem.mail -ne $null ){
#Write-Host $objItem.name " (" $objItem.mail " )" $objItem.sAMAccountType
$name = $objItem.name | Out-String
$email = $objItem.mail | Out-String
Remove-MailContact -Identity $name.trim() -Confirm:$false
New-MailContact -Name:$name.trim() -ExternalEmailAddress $email.trim()

}

}

Pour répondre aux questions, connectez-vous ou registre