1

Je suis en train de migrer un système de gestion de contenu d'entreprise qui a été construit sur Sharepoint 2007 vers Sharepoint 2010. Le système contient un fournisseur d'authentification basé sur des formulaires personnalisés. fournisseur de rôle. mappages rôle d'utilisateur sont stockés dans la base de données comme ci-dessous:Sharepoint 2010 - Comment accéder à l'URL du site demandant l'authentification au fournisseur de rôles personnalisé

utilisateurID RoleId siteURL


21 15 www.sitea.com

21 10 www.siteb.com

22 15 www.sitea.com

Dans le fournisseur de rôle, le rôle auquel le rôle est attribué dans le site actuel est obtenu et défini via l'URL du site. Cela a été résolu en définissant une propriété personnalisée (par exemple, la propriété SiteURL) du fournisseur de rôle dans sa méthode Initilize comme suit:

SiteURL = SPContext.Current.Web.Url;

Cependant, dans Sharepoint 2010, cette ligne ne pouvait plus être utilisée. Parce que dans l'autorisation de revendications Sharepoint 2010, le fournisseur de rôle personnalisé est appelé dans un service Web distinct appelé service Web SecurityToken. Donc SPContext.Current est null.

Maintenant, je dois trouver une autre façon d'obtenir l'URL du site qui demande l'authentification. Souhaitez-vous me donner des suggestions?

Répondre

0

Est-ce que cela fonctionnerait pour mettre en place des rôles séparés pour chaque nom de domaine? Supposons que vous fournissiez des services aux concessionnaires automobiles, et que chaque concessionnaire avait un nom de domaine distinct et des rôles distincts (c.-à-d. Que les utilisateurs du rôle de gestionnaire pour un concessionnaire ne devraient pas avoir le rôle de gestionnaire pour un autre concessionnaire, parce qu'ils sont deux sociétés distinctes avec des structures de gestion différentes). Vous pouvez avoir un rôle Manager_HensonFord pour hensonford.com et un rôle Manager_CharlesFord pour charlesford.com.

Cela ne fonctionne pas, pouvez-vous nous donner un peu plus de contexte sur ce que cela est utilisé?

+0

Le système sur lequel je travaille est développé pour héberger les sites web de toutes les unités organisationnelles d'un ministère dans mon pays. Toutes ces unités auront leur propre collection de sites sp et le nombre d'unités hébergées sera de plus de 500 dans le temps. Le système a son propre DB d'authentification derrière l'authentification par formulaire. Par exemple. Supposons que je me suis inscrit sur le site A et affecté dans le rôle X pour le site. Je suis également autorisé à me connecter sur les sites restants, mais pas dans le rôle X. Votre solution est une solution, mais je souhaite qu'il y en ait un plus "approprié" car il va créer beaucoup de rôles "SiteA_NewsPoster" etc. – mbulutay

Questions connexes