Fournisseurs de revendications personnalisés pour le sélecteur de personnes (SharePoint Server 2010)
S’applique à : SharePoint Foundation 2010, SharePoint Server 2010
Dernière rubrique modifiée : 2016-11-30
Une revendication se compose d’informations sur l’identité d’un utilisateur, telles qu’un nom, une adresse de messagerie ou une appartenance à un groupe. Un fournisseur de revendications dans Microsoft SharePoint Server 2010 émet des revendications, que SharePoint Server 2010 empaquète ensuite dans des jetons de sécurité pour les utilisateurs. Lorsqu’un utilisateur se connecte à SharePoint Server 2010, son jeton est validé, puis utilisé pour la connexion à SharePoint Server 2010. Les fournisseurs de revendications apparaissent dans l’interface utilisateur de la boîte de dialogue Sélectionner des personnes et des groupes du contrôle Sélecteur de personnes. Ils fournissent les fonctionnalités qui permettent de rechercher et de sélectionner des utilisateurs, des groupes et des revendications lorsque des autorisations sont affectées à des éléments tels que des listes, des bibliothèques et des sites dans SharePoint Server 2010. Pour plus d’informations sur le contrôle Sélecteur de personnes, voir Vue d’ensemble du sélecteur de personnes (SharePoint Server 2010).
Cet article décrit l’utilisation et les avantages des fournisseurs de revendications, leur architecture, et contient des observations particulières sur les fournisseurs de revendications personnalisés et sur leur planification. Il n’explique pas comment créer ou configurer des fournisseurs de revendications personnalisés. Pour plus d’informations sur la création d’un fournisseur de revendications personnalisé, voir Procédures liées aux revendications (https://go.microsoft.com/fwlink/?linkid=207578&clcid=0x40C) et Création de fournisseurs de revendications personnalisés dans SharePoint 2010 (éventuellement en anglais) (https://go.microsoft.com/fwlink/?linkid=211324&clcid=0x40C) (éventuellement en anglais).
Avant de lire cet article, vous devez comprendre les concepts décrits dans Planifier des méthodes d’authentification (SharePoint Server 2010) et dans Rôle des revendications (éventuellement en anglais) (https://go.microsoft.com/fwlink/?linkid=208326&clcid=0x40C) (éventuellement en anglais). Pour plus d’informations sur l’authentification basée sur les revendications, voir Identité basée sur des revendications SharePoint (https://go.microsoft.com/fwlink/?linkid=196647&clcid=0x40C) et Guide du contrôle d’accès et de l’identité basée sur des revendications (éventuellement en anglais) (https://go.microsoft.com/fwlink/?linkid=187911&clcid=0x40C) (éventuellement en anglais).
Dans cet article :
Utilisations et avantages
Architecture
À propos des fournisseurs de revendications personnalisés
Déploiement et configuration des fournisseurs de revendications personnalisés
Utilisation de revendications personnalisées sur plusieurs batteries de serveurs
Éléments à prendre en considération au sujet des fournisseurs de revendications personnalisés
Utilisations et avantages
Un fournisseur de revendications dans SharePoint Server 2010 est utilisé essentiellement pour deux raisons :
pour augmenter les revendications ;
pour fournir la résolution de noms.
Dans le rôle d’augmentation, un fournisseur de revendications augmente un jeton d’utilisateur avec des revendications supplémentaires pendant la connexion. Pour plus d’informations sur l’augmentation des revendications, voir Fournisseur de revendications (https://go.microsoft.com/fwlink/?linkid=207579&clcid=0x40C).
Dans le rôle de sélection, un fournisseur de revendications répertorie, résout, explore les utilisateurs, les groupes et les revendications et détermine leur affichage convivial dans le sélecteur de personnes. La sélection de revendications permet à une application d’exposer des revendications dans le sélecteur de personnes, par exemple lors de la configuration de la sécurité d’un site SharePoint ou d’un service SharePoint. Pour plus d’informations sur le sélecteur de personnes, voir Vue d’ensemble du sélecteur de personnes (SharePoint Server 2010).
Vous pouvez utiliser les fournisseurs de revendications inclus dans SharePoint Server 2010 ou vous pouvez créer vos propres fournisseurs de revendications personnalisés pour fournir des revendications supplémentaires dans le jeton de sécurité d’un utilisateur ou pour vous connecter à des sources de revendications supplémentaires. Par exemple, si vous disposez d’une application GRC qui contient des rôles introuvables dans le référentiel d’utilisateurs dans Active Directory, vous pouvez créer un fournisseur de revendications personnalisé pour vous connecter à cette base de données et ajouter des données de rôle GRC au jeton de revendications initial d’un utilisateur. Pour plus d’informations sur les scénarios d’utilisation des fournisseurs de revendications, voir Fournisseur de revendications (https://go.microsoft.com/fwlink/?linkid=207579&clcid=0x40C).
Architecture
Lorsqu’une application Web est configurée pour utiliser l’authentification basée sur les revendications, SharePoint Server 2010 recourt automatiquement à deux fournisseurs de revendications par défaut :
La classe SPSystemClaimProvider (éventuellement en anglais) (https://go.microsoft.com/fwlink/?linkid=210011&clcid=0x40C) (éventuellement en anglais) fournit des informations de revendications relatives à la batterie de serveurs sur laquelle SharePoint Server 2010 est installée.
La classe SPAllUserClaimProvider (éventuellement en anglais) (https://go.microsoft.com/fwlink/?linkid=210012&clcid=0x40C) (éventuellement en anglais) fournit une revendication Tous les utilisateurs qui apparaît dans la boîte de dialogue Sélectionner des personnes et des groupes du sélecteur de personnes.
En fonction de la méthode d’authentification sélectionnée pour une zone d’une application Web, SharePoint Server 2010 utilise également un ou plusieurs des fournisseurs de revendications par défaut répertoriés dans le tableau suivant.
Méthode d’authentification | Fournisseur de revendications |
---|---|
Authentification Windows |
SPActiveDirectoryClaimProvider (éventuellement en anglais) (https://go.microsoft.com/fwlink/?linkid=208325&clcid=0x40C) (éventuellement en anglais) |
Authentification par formulaire |
SPFormsClaimProvider (éventuellement en anglais) (https://go.microsoft.com/fwlink/?linkid=210013&clcid=0x40C) (éventuellement en anglais) |
Authentification basée sur un jeton SAML (Security Assertion Markup Language) |
SPTrustedClaimProvider (éventuellement en anglais) (https://go.microsoft.com/fwlink/?linkid=210014&clcid=0x40C) (éventuellement en anglais) |
Ces fournisseurs de revendications apparaissent dans la boîte de dialogue Sélectionner des personnes et des groupes du sélecteur de personnes. Vous pouvez afficher la liste des fournisseurs de revendications pour une batterie de serveurs à l’aide de l’applet de commande Windows PowerShellGet-SPClaimProvider.
Notes
Lorsqu’une application Web est configurée pour utiliser l’authentification basée sur un jeton SAML, la classe SPTrustedClaimProvider ne fournit pas de fonctionnalité de recherche au contrôle Sélecteur de personnes. Tout texte entré dans le contrôle Sélecteur de personnes est automatiquement affiché comme s’il avait été résolu, que l’utilisateur, le groupe ou la revendication soient valides ou non. Si votre solution SharePoint Server 2010 est appelée à utiliser l’authentification basée sur un jeton SAML, vous devez envisager de créer un fournisseur de revendications personnalisé pour implémenter une recherche et une résolution de nom personnalisées.
Les fournisseurs de revendications sont inscrits sur une batterie de serveurs en tant que fonctionnalités déployées sur celle-ci. Leur étendue est définie au niveau de la batterie de serveurs. Chaque objet de fournisseur de revendications utilise la classe SPClaimProviderDefinition pour récupérer des informations sur le fournisseur de revendications, telles que le nom d’affichage, la description, l’assembly et le type. Deux propriétés importantes de la classe SPClaimProviderDefinition sont IsEnabled et IsUsedByDefault. Ces propriétés déterminent si un fournisseur de revendications inscrit est activé en vue de son utilisation dans la batterie de serveurs et si le fournisseur de revendications est utilisé par défaut dans une zone particulière. Par défaut, tous les fournisseurs de revendications sont activés lorsqu’ils sont déployés sur une batterie de serveurs. Pour plus d’informations sur la classe SPClaimProviderDefinition, voir SPClaimProviderDefinition Class (éventuellement en anglais) (https://go.microsoft.com/fwlink/?linkid=207595&clcid=0x40C) (éventuellement en anglais).
Pour plus d’informations sur les zones et l’authentification, voir Planifier des méthodes d’authentification (SharePoint Server 2010).
Pour plus d’informations sur l’écriture d’un fournisseur de revendications personnalisé, voir Création de fournisseurs de revendications personnalisés dans SharePoint 2010 (éventuellement en anglais) (https://go.microsoft.com/fwlink/?linkid=211324&clcid=0x40C) (éventuellement en anglais) et Procédure pas à pas pour les revendications : écriture de fournisseurs de revendications pour SharePoint 2010 (https://go.microsoft.com/fwlink/?linkid=207589&clcid=0x40C). Pour plus d’informations sur le remplacement du fournisseur de revendications par défaut, voir Comment remplacer la résolution de noms et le fournisseur de revendications par défaut pour SharePoint 2010 (éventuellement en anglais) (https://go.microsoft.com/fwlink/?linkid=207591&clcid=0x40C) (éventuellement en anglais).
À propos des fournisseurs de revendications personnalisés
Par défaut, les informations résolues dans le sélecteur de personnes lors de l’exécution d’une requête dépendent des informations fournies par le fournisseur de revendications. Vous ne pouvez pas modifier la teneur et le mode d’affichage des informations fournies lorsque vous utilisez un fournisseur de revendications prédéfini. Pour ce faire, vous devez demander à un développeur de créer un fournisseur de revendications personnalisé qui réponde aux besoins de votre solution pour la recherche et la sélection d’utilisateurs, de groupes et de revendications lorsqu’un utilisateur affecte des autorisations à des éléments tels qu’un site, une liste ou une bibliothèque.
Par exemple, si votre application Web utilise l’authentification SAML et que vous souhaitez également résoudre les utilisateurs à partir d’Active Directory, vous devrez créer un fournisseur de revendications personnalisé. Pour des exemples supplémentaires de scénarios d’utilisation de fournisseur de revendications, voir Fournisseur de revendications (https://go.microsoft.com/fwlink/?linkid=207579&clcid=0x40C).
Lorsque vous créez un fournisseur de revendications personnalisé, vous pouvez contrôler les informations qui apparaissent et les résultats qui sont retournés en réponse à une requête à partir du contrôle Sélecteur de personnes. Par défaut, vous configurez l’application Web de manière à ce qu’elle utilise l’authentification par revendications, puis vous inscrivez le fournisseur de revendications sur le serveur.
Notes
Vous ne pouvez pas contrôler l’ordre dans lequel les fournisseurs de revendications apparaissent dans la boîte de dialogue Sélectionner des personnes et des groupes du sélecteur de personnes.
Pour plus d’informations sur l’écriture d’un fournisseur de revendications personnalisé, voir Procédure : créer un fournisseur de revendications (https://go.microsoft.com/fwlink/?linkid=207588&clcid=0x40C) et Procédure pas à pas pour les revendications : écriture de fournisseurs de revendications pour SharePoint 2010 (https://go.microsoft.com/fwlink/?linkid=207589&clcid=0x40C). Pour plus d’informations sur la substitution du fournisseur de revendications par défaut, voir Comment remplacer la résolution de noms et le fournisseur de revendications par défaut pour SharePoint 2010 (éventuellement en anglais) (https://go.microsoft.com/fwlink/?linkid=207591&clcid=0x40C) (éventuellement en anglais).
Déploiement et configuration des fournisseurs de revendications personnalisés
Par défaut, lorsque vous inscrivez un fournisseur de revendications personnalisé sur la batterie de serveurs, les propriétés IsEnabled et IsUsedByDefault sont toutes les deux définies sur True. Sauf si la propriété IsUsedByDefault est définie sur False, le fournisseur de revendications personnalisé apparaît dans la boîte de dialogue Sélectionner des personnes et des groupes du sélecteur de personnes pour toutes les zones. Suivant le nombre de zones requises pour votre solution SharePoint Server 2010, les méthodes d’authentification utilisées par chaque zone et les utilisateurs pour chaque zone, vous pouvez limiter les zones dans lesquelles votre fournisseur de revendications personnalisé apparaît dans le sélecteur de personnes.
Étant donné que les fournisseurs de revendications sont définis à l’échelle de la batterie de serveurs et qu’ils sont activés au niveau de la zone, vous devez planifier attentivement les zones dans lesquelles vous souhaitez que le fournisseur de revendications personnalisé apparaisse. En général, vous devez vous assurer que la propriété IsUsedByDefault est définie sur False, puis configurer la classe SPIisSettings pour chaque zone dans laquelle vous souhaitez utiliser le fournisseur de revendications personnalisé. Pour configurer un fournisseur de revendications personnalisé pour des zones spécifiques, vous pouvez créer un script Windows PowerShell qui définit le fournisseur de revendications pour une zone à l’aide de la propriété SPIisSettings.ClaimsProviders ou vous pouvez créer une application personnalisée permettant d’activer un fournisseur de revendications personnalisé pour des zones spécifiques. Pour plus d’informations sur la propriété SPIisSettings.ClaimsProvider, voir SPIisSettings.ClaimsProvider, propriété (éventuellement en anglais) (https://go.microsoft.com/fwlink/?linkid=207597&clcid=0x40C) (éventuellement en anglais). Pour plus d’informations sur la création d’une application personnalisée pour configurer des fournisseurs de revendications pour des zones spécifiques, voir le billet de blog TechNet, Configuration d’un fournisseur de revendications personnalisé afin qu’il soit utilisé uniquement dans des zones spécifiques dans SharePoint 2010 (éventuellement en anglais) (https://go.microsoft.com/fwlink/?linkid=207592&clcid=0x40C) (éventuellement en anglais).
Par exemple, imaginons un scénario dans lequel existent deux applications Web : la première application Web, PartnerWeb, possède deux zones (un intranet, qui utilise l’authentification basée sur les revendications Windows, et un extranet, qui utilise l’authentification par formulaire) et est utilisée pour la collaboration entre les employés et les partenaires. La seconde application Web, PublishingWeb, possède une seule zone, qui utilise l’authentification par formulaire, et est un site de publication Internet destiné aux employés, aux partenaires commerciaux et aux partenaires clients. Supposons que pour la zone extranet sur PartnerWeb vous souhaitiez que les employés soient en mesure de collaborer avec les partenaires commerciaux, mais pas avec les partenaires clients. Pour ce faire, vous écrivez un fournisseur de revendications personnalisé qui détermine si l’utilisateur actuel est un partenaire commercial ou un partenaire client, en fonction de son identité. Dans cet exemple, les utilisateurs de fabrikam.com sont des partenaires commerciaux, tandis que les utilisateurs de contoso.com sont des partenaires clients. Lorsqu’un utilisateur ayant la qualité de partenaire commercial est authentifié dans l’application Web PartnerWeb, une revendication pour un rôle appelé BusinessPartner est ajoutée au jeton de revendication. De même, lorsqu’un partenaire client est authentifié, une revendication pour un rôle appelé CustomerPartner est ajoutée au jeton de revendication. Pour que les partenaires clients ne soient jamais ajoutés au site de collaboration extranet, vous ajoutez à l’application Web PartnerWeb pour la zone extranet une stratégie d’application Web qui refuse explicitement l’accès à tout utilisateur possédant une revendication pour un rôle appelé CustomerPartner. En outre, le fournisseur de revendications personnalisé aurait besoin d’implémenter la prise en charge de dispositifs de recherche et de saisie pour la stratégie d’application Web de manière à résoudre la revendication du rôle CustomerPartner afin qu’elle puisse être ajoutée à la stratégie d’application Web. Enfin, pour activer cette fonctionnalité dans la zone extranet, vous configurez la classe SPIisSettings afin que cette zone utilise le fournisseur de revendications personnalisé. Le diagramme suivant illustre les méthodes d’authentification et les paramètres de fournisseur de revendications associés à chaque application Web et zone.
Notes
Sur le site Web Administration centrale, tous les fournisseurs de revendications apparaissent dans la boîte de dialogue Sélectionner des personnes et des groupes du sélecteur de personnes, que la propriété IsUsedByDefault soit définie sur True ou non.
Vous pouvez définir la propriété IsUsedByDefault en la configurant dans un récepteur de fonctionnalité que vous créez pour votre fournisseur de revendications personnalisé. Pour plus d’informations sur l’utilisation d’un récepteur de fonctionnalité en vue de déployer un fournisseur de revendications personnalisé, voir Exemple : récepteur de fonctionnalités pour déployer un fournisseur de revendications (https://go.microsoft.com/fwlink/?linkid=207590&clcid=0x40C).
Vous pouvez également redéfinir les paramètres des propriétés IsEnabled et IsUsedByDefault à l’aide de l’applet de commande Windows PowerShellSet-SPClaimProvider.
Important
Le fait de définir la propriété IsEnabled sur False désactive le fournisseur de revendications pour la totalité de la batterie de serveurs. Cela peut être utile pour résoudre des problèmes liés à un fournisseur de revendications personnalisé. Toutefois, en général, la propriété IsEnabled doit être définie sur True.
Utilisation de revendications personnalisées sur plusieurs batteries de serveurs
Les valeurs d’une revendication sont une combinaison de la revendication elle-même, du nom du fournisseur de revendications et de l’ordre dans lequel le fournisseur de revendications a été installé sur le serveur. Par conséquent, si vous souhaitez utiliser une revendication sur plusieurs batteries de serveurs ou environnements, vous devez installer les fournisseurs de revendications dans le même ordre sur chaque batterie de serveurs sur laquelle vous souhaitez utiliser la revendication. Procédez comme suit lorsque vous avez installé un fournisseur de revendications personnalisé sur une batterie de serveurs et que vous souhaitez utiliser la même revendication sur d’autres batteries de serveurs.
Inscrivez les fournisseurs de revendications sur les batteries de serveurs supplémentaires en suivant l’ordre dans lequel ils ont été inscrits sur la première batterie de serveurs.
Effectuez une sauvegarde de la première batterie de serveurs. Pour plus d’informations sur la sauvegarde d’une batterie de serveurs, voir Sauvegarder une batterie de serveurs (SharePoint Server 2010).
Utilisez la sauvegarde de la première batterie de serveurs pour restaurer les autres batteries de serveurs. Pour plus d’informations sur la restauration d’une batterie de serveurs, voir Restaurer une batterie de serveurs (SharePoint Server 2010).
Éléments à prendre en considération au sujet des fournisseurs de revendications personnalisés
Lorsque vous planifiez des fournisseurs de revendications personnalisés en vue de leur utilisation avec le sélecteur de personnes dans votre solution SharePoint, prenez en compte les questions suivantes :
Quelles zones votre application Web possède-t-elle et quelles sont les méthodes d’authentification utilisées dans chaque zone ?
Faut-il ajouter des revendications personnalisées aux utilisateurs pour la prise en charge de scénarios de sécurité plus avancés ?
Utiliserez-vous l’authentification SAML avec un fournisseur d’identités approuvé ?
Quelle sera la source des valeurs pour les utilisateurs et les rôles qui apparaîtront dans les résultats des requêtes du sélecteur de personnes ?
Quelles données de revendication souhaitez-vous résoudre dans la boîte de dialogue Sélectionner des personnes et des groupes ?
L’équipe de Publication de contenu SharePoint Server 2010 remercie Steve Peschka pour sa contribution à cet article. Vous pouvez consulter son blog ici (éventuellement en anglais) (https://go.microsoft.com/fwlink/?linkid=210274&clcid=0x40C) (éventuellement en anglais).
See Also
Concepts
Planifier des méthodes d’authentification (SharePoint Server 2010)