Les entreprises ont de plus des services Web internes pour gérer une GED (Gestion Electronique Documentaire), des documents partagés, … en gros pour avoir un outil collaboratif pour l'ensemble des collaborateurs à travers des Web Services. Bien souvent les entreprises ont acceptés Microsoft Office SharePoint comme l'outil indispensable grâce à son intégration simple et efficace avec les outils déjà déployés (Office 2007, Exchange, Active Directory, …).
Maintenant que cette problématique interne est résolue, une nouvelle problématique vient : comment publier mon SharePoint de manière sécurisée pour permettre à mes collaborateurs itinérants d'accéder aux informations d'entreprise sur mes sites SharePoint ? Nous allons donc voir à travers ce billet, que Microsoft propose des solutions intégrées pour permettre aux compagnies de réaliser facilement cette opération.
Microsoft propose aujourd'hui deux solutions de Reverse Proxy : Microsoft Forefront TMG et UAG. Nous n'allons pas rentrer dans le détail des différences car ici je vais présenter la publication avec TMG et non avec UAG, j'y reviendrais dans quelques temps avec un autre billet consacré à la publication SharePoint avec UAG. Ce qu'on peut déjà retenir, c'est qu'avec UAG on pourra apporter beaucoup plus de sécurités grâce à la conformité du client pour permettre des stratégies d'accès, de téléchargements, d'envois de données et de zones restreintes. Ce sera donc des outils supplémentaires qui permettra à une entreprise d'étendre la publication SharePoint à des partenaires, ou autres tout en ayant un niveau de sécurité très stricte. Pour finir, le moteur de filtrage UAG n'autorise pas le site SharePoint avec un /*, mais fonctionne uniquement par des règles d'autorisations sur chaque url connue (/_layouts/etc…. ) et n'utilise jamais de /*. Et pour chacun de ces règles, le « verbage » HTTP est vérifié (contenu POST, GET, …). C'est ainsi grâce à UAG que l'on obtiendra le meilleur niveau de sécurité.
Revenons à TMG, le sujet que compose ce billet. Microsoft Forefront TMG utilise (comme ISA2006 et UAG) les AAM (Alternate Access Mappings) de Microsoft Office SharePoint pour s'assurer de la meilleure réécriture d'url et surtout l'utilisation de composants plus lourds (Word, Excel, ..) pour permettre de ne pas avoir d'erreurs depuis un réseau distant. Il faut donc bien prendre en compte que la publication d'un SharePoint nécessite tout d'abord la modification de la configuration SharePoint.
Comme prérequis, cela consiste à connaître l'url publique du site souhaitée. Ici dans mon cas, je vais utiliser https://extranet.brazil.com. Il faudra donc que je contacte mon fournisseur DNS pour créer un enregistrement A par rapport à mes adresses IP publiques. Ensuite il faut faire une demande de certificat pour l'url exacte. Ce certificat sera à installer sur TMG.
A présent, on va se rendre dans la console d'administration centrale de SharePoint pour ajouter l'AAM publique
Sélectionnez maintenant votre site SharePoint et éditez les urls publics
On va donc indiquer dans la zone Internet, l'url complète que l'on souhaite utiliser en publique
Ajouter à présent une nouvelle url (Add Internal URLs) en indiquant une url interne liée à la zone Internet
On peut s'assurer de la bonne prise en compte des modifications
Côté SharePoint, nous avons terminé les modifications. Maintenant on va créer un écouteur Web dans TMG.

| Nommez votre Web Listener |

| Indiquez bien d'utiliser du SSL |

| Indiquez l'adresse IP utilisée pour publier, celle que vous avez déclarée auprès de votre fournisseur DNS public. |

| Sélectionnez le certificat public que vous avez acheté auprès de l'autorité de certification publique.
Assurez-vous que le certificat soit bien installé dans le magasin de l'ordinateur local du serveur TMG et contient une clé privée.
Il faut également que la chaîne de certification soit disponible. |

| Indiquez une méthode d'authentification en fonction de votre infrastructure TMG.
Si TMG est dans le domaine vous pouvez utiliser l'option « Windows (Active Directory), sinon utilisez LDAP.
|

| Indiquez à présent votre nom de domaine Active Directory précédé d'un point « . » |

| Vous pouvez valider en cliquant sur « Terminer ». |
Maintenant nous avons le port d'écoute WEB crée. On va pouvoir créer la règle de publication à l'aide de l'assistant dans TMG

| Depuis la console TMG, au niveau des règles de pare-feu vous trouverez dans la liste des tâches un lien « Publier des sites SharePoint ». |

| Donnez un nom à la règle de publication |

| Vous pouvez publier un ou plusieurs sites. Cela dépend de votre infrastructure SharePoint. |

| Si le serveur SharePoint utilise SSL en interne alors sélectionnez la première option, sinon tout comme moi la seconde. |

| Indiquez à présent l'url de votre SharePoint interne …
Il faut que le serveur TMG puis résoudre bien sûr ce nom. |

| … puis l'url publique |

| Sélectionnez dans la liste déroulante le port d'écoute Web précédemment crée. |

| Afin de faire du SSO assurez-vous d'utiliser la bonne délégation. Si vous avez utilisé un connecteur LDAP alors vous devrez utiliser une délégation basique.
Si votre serveur TMG est dans le domaine alors prenez NTLM. |

| Indiquez que vous avez déjà configuré les AAM |

| Indiquez maintenant le groupe d'utilisateurs autorisés à se connecter depuis le réseau public. |

| Avant de valider, vous pouvez utiliser le bouton de test pour s'assurer que les paramètres saisis sont conformes.

|

| Pour finir, ouvrez la règle SharePoint crée par l'assistant et décochez l'option de renvoi des en-têtes d'hôtes. |
Maintenant on va valider le bon fonctionnement. J'utilise un poste connecté à Internet en dehors de mon organisation et saisit l'url dans mon navigateur préféré https://extranet.brazil.com
J'ai donc comme prévu un formulaire d'authentification fourni par TMG, et accède de manière transparente (SSO) à mon SharePoint