jeudi 18 septembre 2008

MOSS 2007 et les notifications administratives par mail

Vous avez réussi à implémenter une ferme MOSS 2007, vous possédez désormais plusieurs sites en production avec plusieurs utilisateurs, et puis soudain vous décidez de mettre en oeuvre les alertes administratives, telles que:

- Les alertes de Quota (Quota Alerts): notification envoyée aux administrateurs de la collection de site lorsque le niveau d'alerte est atteint ou bien que le Quota limite lui même est atteint.
- La confirmation d'utilisation d'un site (avec ou sans suppression automatique: Site Usage Confirmation): tous les 90 jours (par défaut) SharePoint envoie aux administrateurs (Primaire et Secondaire) de la collection de Sites, un message demandant si le site correspondant est toujours utilisé.

Pour chacun de ces messages, un lien vers le site est inclus, et c'est là que le problème survient:
- En général, lorsque l'on crée une application web (Web App), l'URL d'accès par défaut est sous la forme http://nomduserveur:port/nomdusite.
- Par la suite, il est fréquent de voir la création d'extension d'URL (Intranet, Internet...) sous la forme: http://masociete.corp.local/nomdusite, afin d'avoir une URL plus réaliste, proche des utilisateurs et plus facile à utiliser. Parfois même cette URL peut être configurée en mode répartition de charge (logique ou matérielle), tandis que l'URL de la Web App n'est accessible que sur un réseau isolé administratif en direct.

Le problème est donc que pour toutes ces notifications administratives envoyées à l'utilisateur, ce n'est pas l'URL "User friendly", c'est-à-dire http://masociete.corp.local/nomdusite, mais bien l'URL de la Web App qui est envoyée:
- sur une ferme qui n'implémente pas l'isolation des réseaux (un réseau accès utilisateur, et un réseau accès administratif), cela peut s'avérer gênant mais non bloquant dans le sens où l'utilisateur aura tout de même accès au site mais via une adresse inconnue qui peut parfois prêter à confusion.
- sur une ferme qui implémente en revanche l'isolation des accès, alors là systématiquement les utilisateurs n'accéderont pas aux sites.
- si en plus de la confirmation d'utilisation, le paramètre de suppression automatique est activé (cad si l'utilisateur ne confirme pas l'utilisation du site, celui ci peut être supprimé de façon automatique), alors là de gros problème peuvent survenir.

La cause de tout cela:
Pour les notifications administratives, SharePoint utilise l'URL de la zone Defaut, c'est à dire l'URL de l'application Web par défaut. Il n'existe aucune option de la console Central Administration, ni de l'outil en ligne de commande stsadm qui permette de changer cela. Cette fonctionnalité est ce que l'on appelle "by design".

Solution:
La solution de contournement est relativement simple, et se situe au niveau des "Alternates Access Mapping", de l'onglet "Opérations" de la console Central Administration. Une fois l'application web créée, les extensions d'URL créées, alors il suffit d'aller dans le menu des mappings des accès alternatifs et d'inverser les URLs "Defaut" et "Intranet" (par exemple). Cela permet à SharePoint d'envoyer l'URL désirée à l'utilisateur qui ne se verra plus perturbé par une URL inconnue, voir inaccessible.

Pré-requis:
Il est impératif que le mode d'authentification de l'extension choisie soit identique à celle de la zone Defaut, par exemple: les deux sont en modes Windows Intégré, sinon il faudra également modifier les fournisseurs d'authentification (Authentication Providers).

Limite:
Si l'administrateur primaire accède au site via une extension de type Intranet, et que l'administrateur secondaire accède via un autre type d'accès, et donc une autre URL, il ne sera pas possible de notifier chacun par l'URL qui lui correspond (cela est rare mais pas impossible comme situation).

Status:
Cette fonctionnalité est by design dans MOSS 2007, y compris SP1 et POST SP1.

Aucun commentaire: