Partager via


Configurer et déployer des composants WebPart sécurisés sur votre serveur (Windows SharePoint Services)

Mise à jour : 2007-11-04

Windows SharePoint Services 3.0 est fourni avec un ensemble de composants WebPart que les administrateurs des sites peuvent ajouter à des pages de composants WebPart après l’installation du produit. Toutefois, votre organisation peut nécessiter des composants WebPart personnalisés. Dans ce cas, le développeur peut créer des composants ASP.NET 2.0 personnalisés et intégrés et vous demander de les installer dans un déploiement de Windows SharePoint Services.

Windows SharePoint Services utilise certains des paramètres de gestion de la configuration fournis par Microsoft .NET Framework. Certains de ces paramètres sont stockés dans des fichiers de configuration XML et fournissent un large éventail de paramètres qui permettent aux administrateurs de serveur de gérer l’application Web et son environnement. Pour plus d’informations sur les fichiers de configuration ASP.NET 2.0, voir Description de Machine.Config et de Web.Config (https://msdn2.microsoft.com/fr-fr/library/aa302435.aspx) dans « Sécurisation de votre application ASP.NET et de vos services Web » dans la bibliothèque en ligne MSDN.

Options de configuration

Les administrateurs système peuvent déployer des composants WebPart ASP.NET 2.0 dans un déploiement de Windows SharePoint Services à deux emplacements au choix :

  • Répertoire Bin   Stocké dans le répertoire racine de votre application Web.

  • GAC (Global Assembly Cache)   Tous les composants WebPart standard sont automatiquement installés avec le Common Language Runtime de .NET Framework. Le stockage dans le GAC vous permet de partager des composants WebPart entre de nombreuses applications. Les composants sont généralement stockés dans C:\WINNT\Assembly.

Chacun de ces emplacement a ses avantages et ses inconvénients, comme l’explique le tableau suivant.

Emplacement de déploiement Avantages Inconvénients

Répertoire Bin

Emplacement de confiance partielle. Par défaut, le code qui s’exécute à partir de ce répertoire dispose d’autorisations de sécurité d’accès au code de bas niveau. L’administrateur doit augmenter explicitement les autorisations accordées à un composant WebPart afin qu’il fonctionne correctement. En raison de ce niveau de contrôle et des protections renforcées, les administrateurs ont tendance à préférer que les assemblys s’exécutent dans le répertoire Bin, avec un ensemble connu d’autorisations de sécurité d’accès au code.

Un répertoire Bin est également spécifique à une application Web. Cela permet d’isoler le code dans une application Web particulière.

Pour exécuter votre composant WebPart n’importe où, vous devez déployer votre assembly Bin.

GAC

Emplacement global où vous pouvez déployer des assemblys signés. Les assemblys s’exécutent par défaut avec la confiance totale. Ils sont installés globalement, de sorte qu’ils fonctionnent dans n’importe quelle application Web.

En règle générale, il n’existe pas de restrictions de sécurité pour l’accès au code sur le code installé dans le GAC ; par conséquent, vous perdez l’avantage de la sécurité avec protection renforcée.

En outre, il peut être difficile de déployer vos fichiers de base de données de programme (.pdb) dans des assemblys du GAC.

Définition d’attributs spéciaux pour la sécurité

Les composants WebPart ASP.NET 2.0 que vous stockez dans le répertoire Bin ont des contraintes spéciales pour la sécurité. Vous pouvez définir ou non des attributs spéciaux pour la sécurité de vos composants WebPart ; cela dépend de la manière dont vous souhaitez les utiliser.

Le répertoire Bin est un emplacement de confiance partielle. Par conséquent, votre composant WebPart n’accorde pas automatiquement des autorisations de confiance totale pour le code lors de son exécution. Étant donné que le code appelant de votre composant WebPart bénéficie simplement d’autorisations de confiance partielle, le développeur doit définir l’attribut AllowPartiallyTrustedCallers sur votre composant WebPart ASP.NET 2.0.

NoteRemarque :

Le fait de déclarer un composant comme étant fiable avec l’attribut AllowPartiallyTrustedCallers engage la responsabilité du développeur pour une mise en œuvre sécurisée.

Par défaut, les autorisations de sécurité pour l’accès au code sont très faibles pour le répertoire Bin ; seule l’exécution pure est autorisée. Vous devrez certainement élever ces autorisations pour que votre assembly s’exécute correctement.

Il existe deux façons d’élever des autorisations :

  • (Méthode recommandée) Créez un fichier de stratégie d’approbation et faites pointez votre fichier Web.config sur ce nouveau fichier. Cette solution est plus compliquée, mais elle vous permet de contrôler plus précisément les autorisations de vos composants WebPart. Pour plus d’informations sur les fichiers de stratégie d’approbation, voir Microsoft Windows SharePoint Services et sécurité d’accès au code (https://msdn2.microsoft.com/fr-fr/library/ms916855(en-us).aspx?amp%3bclcid=0x40c) dans la bibliothèque en ligne MSDN.

  • Élevez le niveau de confiance global du répertoire Bin. Dans le fichier Web.config du répertoire racine de votre application, trouvez l’élément trust. La valeur par défaut de l’attribut level de l’élément trust est WSS_Minimal. Vous pouvez élever ce niveau à WSS_Medium. Cette méthode est plus simple, mais elle accorde arbitrairement de nouvelles autorisations dont vous n’avez peut-être pas besoin et elle est moins fiable que l’autre méthode, qui consiste à créer un fichier de stratégie d’approbation.

Liste des contrôles fiables

Un des principes fondamentaux des produits et technologies SharePoint veut que les « utilisateurs non approuvés » puissent télécharger et créer des pages .aspx dans le système sur lequel s’exécute Windows SharePoint Services. Il faut empêcher ces utilisateurs d’ajouter du code côté serveur dans les pages .aspx, mais les laisser utiliser une liste de contrôles approuvés. Windows SharePoint Services fournit cette liste.

La liste des contrôles approuvés comporte des contrôles et des composants WebPart spécifiques à votre site SharePoint, que les administrateurs de serveur peuvent désigner comme étant suffisamment fiables pour être appelés sur n’importe quelle page .aspx d’un site. Vous stockez cette liste dans le fichier Web.config de la racine de votre application Web.

Conditions requises pour les tâches

Pour effectuer les procédures liées à cette tâche, les éléments ci-dessous sont requis.

  • Privilèges d’administrateur sur un serveur où est installé Microsoft Windows SharePoint Services 3.0.

Pour configurer et déployer des composants WebPart sécurisés sur votre serveur, vous pouvez effectuer les procédures suivantes.