> Tech > Gestion des boîtes à  lettres Exchange

Gestion des boîtes à  lettres Exchange

Tech - Par Renaud ROSSET - Publié le 24 juin 2010
email

Pour les tâches de gestion des boîtes à  lettres Exchange, vous utiliserez la classe Exchange_Mailbox de l'ExchangeMapiTableProvider. Cette classe fournit une suite de propriétés en lecture seule et deux méthodes (c'est-à dire, Purge et Reconnect) utilisables pour gérer les boîtes à  lettres. La documentation pour les propriétés et méthodes de Exchange_Mailbox

Gestion des boîtes à  lettres Exchange

se trouvent
à  http://msdn.microsof t .
com/library/en-us/e2k3/e2k3/_wmiref_
cl_exchange_mailbox.asp.
Certaines des propriétés d’Exchange_
Mailbox renvoient des informations
concernant les boîtes à  lettres,
comme l’heure du dernier logon (propriété
LastLogonTime), l’heure du dernier
Logoff (propriété LastLogoffTime)
et le nom du dernier utilisateur qui
s’est connecté à  la boîte à  lettres (propriété
LastLoggedOnUserAccount).
Les autres propriétés d’Exchange_
Mailbox fournissent des informations
sur l’emplacement de la boîte à 
lettres sur le serveur Exchange. Cette
information inclut le nom du serveur
(propriété ServerName), le nom du
groupe de stockage (SG) (propriété
StorageGroupName) et le nom du
store (propriété StoreName). La classe
Exchange_Mailbox présente aussi des
informations sur la taille (en octets)
d’une boîte à  lettres (propriété Size) et
le nombre d’éléments présents dans la boîte à  lettres (propriété TotalItems).
Les rôles des méthodes Purge et
Reconnect servent à  régler le problème
des boîtes à  lettres orphelines.
(Vous devez traiter les autres tâches de
gestion des boîtes à  lettres, comme
créer, déplacer ou supprimer une boîte
à  lettres Exchange, au moyen de
Collaboration Data Objects for
Exchange Management – CDOEXM.) Si
un administrateur utilise le snap-in
Microsoft Management Console
(MMC) Active Directory Users and
Computers pour supprimer un
compte utilisateur mais ne supprime
pas la boîte à  lettres, celle-ci reste dans
un état déconnecté. Une fois que le
Cleanup Agent d’Exchange a fonctionné,
la boîte à  lettres dans le store
Exchange Mailbox se retrouve sans utilisateur
affecté. A ce moment-là ,
Exchange donne à  l’administrateur
l’occasion de supprimer physiquement
la boîte à  lettres du store, ce qui est
d’ailleurs la finalité de la méthode
Purge, ou de reconnecter la boîte à 
lettres à  l’utilisateur existant, ce qui est
l’objectif de la méthode Reconnect.
Le script Reconnect.wsf démontre
comment utiliser la méthode Reconnect
pour reconnecter une boîte à 
lettres Exchange à  un compte utilisateur
existant. La structure de
Reconnect.wsf est similaire à  celle de
AdminNote.wsf. Cependant, il existe
de légères différences. L’en-tête du
script commence par la définition de
deux constantes : cMailboxDisplay-
Name, qui spécifie le nom d’affichage
de la boîte à  lettres à  reconnecter, et
cUserAccount, qui spécifie le compte
utilisateur auquel reconnecter la boîte
à  lettres.
Pour localiser la boîte à  lettres, le
script utilise une requête WQL, comme


« Select * From Exchange_Mailbox
Where MailboxDisplayName=
‘LISSOIR Alain' »

Une fois que cette requête s’est
exécutée, le script énumère une collection
de boîtes à  lettres qui correspondent
aux critères de sélection.
Autrement dit, le script isole la boîte à 
lettres en utilisant une propriété dont
il n’est pas certain que la valeur soit
unique. Bien que vous puissiez spécifier
le GUID (globally unique identifier)
de la boîte à  lettres, qui est garanti
unique, dans la propriété Mailbox-
GUID, il est plus facile d’utiliser le nom
d’affichage de la boîte à  lettres. Essayer
de trouver le GUID d’une boîte à 
lettres puis essayer de l’entrer sans
commettre d’erreur, rendrait le script
difficile à  utiliser.
Comme le nom de la boîte à  lettres
n’est pas forcément unique, le script
vérifie si la collection ne contient
qu’une boîte à  lettres, comme le
montre l’extrait de code du listing 3. Si
le script trouve plus d’une boîte à 
lettres, il affiche un message pour signaler
l’ambiguïté à  l’opérateur. Si le
script ne trouve qu’une boîte à  lettres,
il exécute la méthode Reconnect. Cette
méthode a deux paramètres obligatoires
que le script fournit au moyen
des constantes cMailboxDisplayName
et cUserAccount.
Bien que la requête WQL que je
viens juste de vous montrer trouve la
boîte à  lettres, il n’est pas certain que la
boîte à  lettres soit déconnectée d’un
utilisateur. Pour le savoir, vous pouvez
utiliser la propriété DateDiscovery-
AbsentInDS de la classe Exchange_
Mailbox. Cette propriété indique
quand le store a détecté que la boîte à 
lettres n’avait plus de compte utilisateur
correspondant. Quand cette propriété
contient une date dans le format
DMTF (Distributed Management Task
Force), c’est une boîte à  lettres déconnectée.
Pour plus d’informations sur le
format DMTF, aller à  http://msdn.microsoft.
com/library/enus/wmidsk/wmi/
date_and_time_format.asp.
Pour trouver une boîte à  lettres en
utilisant un nom d’affichage spécifie et
pour s’assurer que la boîte à  lettres est
déconnectée, vous pouvez utiliser une
requête WQL améliorée qui réduit le
champ de la recherche :


« Select * From Exchange_Logon
Where MailboxDisplayName=
‘LISSOIR Alain’ And
DateDiscoveredAbsentInDS
IS NOT Null »

Enfin, pour assurer une bonne exécution
de la méthode Reconnect, vous
devez suivre ces directives :

  • Exécutez le script sur le serveur
    Exchange sur lequel la boîte à  lettres
    déconnectée réside. Même quand
    WMI est basé sur DCOM (Distributed
    COM), l’exécution du script à  distance
    provoque l’échec de la méthode
    Reconnect.

  • Sélectionnez un ID utilisateur qui
    existe dans l’AD en référençant le
    sAMAccounName de cette ID utilisateur
    (qui est le nom de logon hérité).
    Si vous spécifiez un domaine et un
    nom d’utilisateur ou un UPN (user
    principal name), la méthode Reconnect
    échouera. Seul un sAMAccountName
    est accepté.

Si vous ne suivez pas ces directives,
la méthode de boîte à  lettres Reconnect
échouera. Et vous obtiendrez le message d’erreur suivant : An unknown
ADSI user object was requested.
Make sure you have the required permissions
and/or you are running on
the Exchange Server to invoke this
method. (Un objet utilisateur ADSI inconnu
a été demandé. Vérifiez que
vous avez les permissions nécessaires
et que vous travaillez sur le Exchange
Server pour invoquer cette méthode.).

Téléchargez cette ressource

Les mégatendances cybersécurité et cyber protection 2024

Les mégatendances cybersécurité et cyber protection 2024

L'évolution du paysage des menaces et les conséquences sur votre infrastructure, vos outils de contrôles de sécurité IT existants. EPP, XDR, EDR, IA, découvrez la synthèse des conseils et recommandations à appliquer dans votre organisation.

Tech - Par Renaud ROSSET - Publié le 24 juin 2010