2010-03-16 3 views

Répondre

1

Vous devrez parcourir les éléments et inspecter les éléments d'autorisations par élément et les mettre à jour si nécessaire. Plus vous avez d'objets, plus cela prend de temps. Donc, pas vraiment une bonne solution.

Une autre solution utilise les informations d'identification d'un utilisateur qui est seulement membre du groupe x. SharePoint prend automatiquement en compte les autorisations. Donc, si vous vous connectez à la liste en utilisant cet utilisateur, vous devriez seulement obtenir les éléments sur lesquels l'utilisateur a des autorisations. Utilisez la classe NetworkCredentials pour cela. Puis, utilisez une requête CAML pour mettre à jour vos éléments.

-W

+0

Vraiment, cela semble prometteur et simple! Je vous remercie. Dans mon cas, cela aide. –

+0

En outre, je n'ai pas besoin d'utiliser nécessairement la classe NetworkCredentials, car il existe une surcharge de constructeur SPSite qui prend en compte SPUserToken (http://msdn.microsoft.com/en-us/library/ms436101.aspx) (quelque chose comme un journal en tant qu'utilisateur X). –

0

Je ne pense pas que vous pouvez le faire en mettant en forme une requête CAML et en utilisant l'objet SPQuery pour obtenir les éléments de cette manière. Mon idée serait d'obtenir tous les éléments, et de les parcourir en testant les propriétés HasUniqueRoleAssignments et RoleAssignments.

+0

Aww, qui ressemble trop si je veux, quand les changements groupe X, mettez à jour tous les éléments (définir des choses) où le groupe X avait des autorisations. –

Questions connexes