OVH Cloud OVH Cloud

Droits d'accès application WSS

2 réponses
Avatar
DELCROIX Sébastien
Bonjour,

Voila, j'ai d=E9velopp=E9 une application web utilisant des=20
classes Sharepoint afin de modifier par lot les propri=E9t=E9s=20
de documents contenus dans des biblioth=E8ques Sharepoint.

Cette application est compos=E9e de deux pages web :
- default.aspx
- generatedForm.aspx

ainsi que de deux classes SPFileManager.cs et=20
SPProfileManager.cs

L'application se situe dans le dossier :=20
.....\web server extensions\60
\TEMPLATES\BatchProfileUpdater.

Etant admin local du serveur sur lequel j'ai d=E9velopp=E9e=20
cet appli, je n'ai jamais eu de probl=E8me de s=E9curit=E9, ni=20
d'authentification.
Celle-ci =E9tant en mode Windows.

Or les users n'ayant pas les privili=E8ges d'admin doivent=20
s'identifier =E0 la moindre utilisation d'une m=E9thode d'un=20
objet instanci=E9 =E0 partir des deux classes cit=E9es plus haut.
Et un malheur n'arrivant jamais seul, ils ont beau=20
s'identifier correctement, Sharepoint ne les reconnait pas=20
et leur propose d'envoyer une demande d'acc=E8s =E0=20
l'administrateur du site.

OR, cette appli n'est pas r=E9ellement int=E9gr=E9e dans le=20
site, on y accc=E8de par :
http://nom_serveur/_layouts/batchprofileupdater/default.asp
x

Quelqu'un aurait-il une id=E9e concernant la r=E9solution de=20
ce probl=E8me?
Dois-je proc=E9der =E0 qqch de particulier concernant mes deux=20
classes, ou l'appli, sur le serveur?

Merci.

2 réponses

Avatar
DELCROIX Seb
Re,

J'ai identifié la source de mon problème.
Elle vient d'une méthode de la classe SPFileManager, qui
tente de lister tous les sites WSS d'un serveur Sharepoint.

Or, apparemment, quand le user n'a pas accès à certains
sites WSS, cette méthode lève une exception.

Il me faut donc connaître pour un user quels sont les
sites WSS auxquels il a accès.

Connaissez-vous une façon efficace d'obtenir cela?

Merci.
-----Message d'origine-----
Bonjour,

Voila, j'ai développé une application web utilisant des
classes Sharepoint afin de modifier par lot les


propriétés
de documents contenus dans des bibliothèques Sharepoint.

Cette application est composée de deux pages web :
- default.aspx
- generatedForm.aspx

ainsi que de deux classes SPFileManager.cs et
SPProfileManager.cs

L'application se situe dans le dossier :
......web server extensions60
TEMPLATESBatchProfileUpdater.

Etant admin local du serveur sur lequel j'ai développée
cet appli, je n'ai jamais eu de problème de sécurité, ni
d'authentification.
Celle-ci étant en mode Windows.

Or les users n'ayant pas les privilièges d'admin doivent
s'identifier à la moindre utilisation d'une méthode d'un
objet instancié à partir des deux classes citées plus


haut.
Et un malheur n'arrivant jamais seul, ils ont beau
s'identifier correctement, Sharepoint ne les reconnait


pas
et leur propose d'envoyer une demande d'accès à
l'administrateur du site.

OR, cette appli n'est pas réellement intégrée dans le
site, on y acccède par :
http://nom_serveur/_layouts/batchprofileupdater/default.as


p
x

Quelqu'un aurait-il une idée concernant la résolution de
ce problème?
Dois-je procéder à qqch de particulier concernant mes


deux
classes, ou l'appli, sur le serveur?

Merci.
.



Avatar
DELCROIX Sebastien
Merci, j'ai essayé cette méthode mais elle ne me retourne
aucun site.
En fait, je crée un SPSite en passant l'url du serveur
Sharepoint, car le site WSS par défaut a pour url celle-ci.

Du coup, cette méthode tente de lister les "sous-sites" de
ce site.

Or je voudrais lister les sites (même si je sais que dans
le cas présent nous n'en avons qu'un mais c'est pour
prévoir la présence d'autres sites sur ce meme serveur
plus tard) de ce serveur pour un utilisateur donné.

En fait, il semblerait que je ne puisse pas executer la
priopriété AllWebs si je ne suis pas un user ayant les
droits d'administrateur...

Autre chose qui est liée, c'est que je ne sais pas comment
utiliser une classe avec une identité différente du user
loggé/authentifié.
Car je pense que pour le moment mes objets s'executent
avec l'identité du user et si celui-ci ne dispose pas de
droits suffisants, il ne pourra pas utiliser certaines
méthodes qui utilisent elles-meme des méthodes de
Microsoft.Sharepoint réservées aux admins.

-----Message d'origine-----
C'est un classique en WSS :)

Essayez la methode GetSubwebsForCurrentUser du spweb en


cours

n'hesitez pas à partager vos dev avec les








communautés comme sur code-sources ou sharePoint-france :
plus de source sera en ligne plus l'avenire de WSS
seras "Que Du Bonheur"

--
Renaud COMTE [MVP]
-------------------------------
http://www.clubSPS.org
http://blog.spsclerics.com/
-------------------------------


"DELCROIX Seb" a écrit :

Re,

J'ai identifié la source de mon problème.
Elle vient d'une méthode de la classe SPFileManager,




qui
tente de lister tous les sites WSS d'un serveur




Sharepoint.

Or, apparemment, quand le user n'a pas accès Ã




certains
sites WSS, cette méthode lève une exception.

Il me faut donc connaître pour un user quels sont les
sites WSS auxquels il a accès.

Connaissez-vous une façon efficace d'obtenir cela?

Merci.
>-----Message d'origine-----
>Bonjour,
>
>Voila, j'ai développé une application web utilisant




des
>classes Sharepoint afin de modifier par lot les
propriétés
>de documents contenus dans des bibliothèques




Sharepoint.
>
>Cette application est composée de deux pages web :
>- default.aspx
>- generatedForm.aspx
>
>ainsi que de deux classes SPFileManager.cs et
>SPProfileManager.cs
>
>L'application se situe dans le dossier :
>......web server extensions60
>TEMPLATESBatchProfileUpdater.
>
>Etant admin local du serveur sur lequel j'ai




développée
>cet appli, je n'ai jamais eu de problème de




sécurité, ni
>d'authentification.
>Celle-ci étant en mode Windows.
>
>Or les users n'ayant pas les privilièges d'admin




doivent
>s'identifier à la moindre utilisation d'une méthode




d'un
>objet instancié à partir des deux classes citées




plus
haut.
>Et un malheur n'arrivant jamais seul, ils ont beau
>s'identifier correctement, Sharepoint ne les reconnait
pas
>et leur propose d'envoyer une demande d'accès Ã
>l'administrateur du site.
>
>OR, cette appli n'est pas réellement intégrée dans




le
>site, on y acccède par :



http://nom_serveur/_layouts/batchprofileupdater/default.as
p
>x
>
>Quelqu'un aurait-il une idée concernant la




résolution de
>ce problème?
>Dois-je procéder à qqch de particulier concernant




mes
deux
>classes, ou l'appli, sur le serveur?
>
>Merci.
>.
>



.