IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SharePoint .NET Discussion :

Droits d'accès sur les Items d'une Liste


Sujet :

SharePoint .NET

  1. #1
    Membre habitué
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2007
    Messages
    236
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Février 2007
    Messages : 236
    Points : 194
    Points
    194
    Par défaut Droits d'accès sur les Items d'une Liste
    Bonjour,

    Je souhaite savoir si on peut définir des droits d'accès sur chaque Item d'une liste sharepoint. Existe t il des champs par défaut pour chaque item pour désigner les lecteurs et les modificateurs ?

    Merci

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    1 519
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 1 519
    Points : 1 663
    Points
    1 663
    Par défaut
    Oui c'est possible. Il suffit d'aller dans le menu déroulant de l'item puis cliquer sur Gérer les autorisations.

  3. #3
    Membre averti

    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    184
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 184
    Points : 447
    Points
    447
    Par défaut
    Attention, cela est possible, mais trés complexe côté admin par la suite!
    A déconseiller, donc, par défaut...

    N'est il pas envisageable de "regrouper" les élements dans des répertoires, où tu peux aussi gérer des autorisations...

    Il y a aussi l'approche avec les filtres (=[ME]), qui permet de contourner le pb (mais pas l'aspect confidentiel..)

    D.

  4. #4
    Membre habitué
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2007
    Messages
    236
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Février 2007
    Messages : 236
    Points : 194
    Points
    194
    Par défaut
    Bonjour,

    Merci pour vos réponses, mais je n'ai pas très bien compris l'approche des filtres. Avez vous un exemple ?
    En fait, je voulais gérer ces autorisations par code, c'est faisable ? Par exemple, lorsque un utilisateur veut ouvrir un item, le code vérifie s'il a les droits d'ouverture.

  5. #5
    Membre expérimenté
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    1 519
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 1 519
    Points : 1 663
    Points
    1 663
    Par défaut
    Pour le filtre il faut que tu crées un affichage Mes éléments par exemple sur lequel tu mets un filtre du type Créé par = [Utilisateur actif] et cet affichage ne montrera que les éléments créés par l'utilisateur connecté.

    Oui tu peux gérer les autorisations par code mais tu n'as pas besoin de tester si l'utilisateur a les droits quand tu ouvres l'élément vu que c'est sharepoint qui le fait.

  6. #6
    Membre habitué
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2007
    Messages
    236
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Février 2007
    Messages : 236
    Points : 194
    Points
    194
    Par défaut
    Bonjour, vous avez dit que SharePoint gère les autorisations seuls. Mais, en fait, je veux modifier les droits pour chaque Item, du coup lorsque l'utilisateur veut visualiser un Item, le code teste si l'utilisateur courant à le droit d'ouvrir ou non.
    Bon j'ai eu l'idée de créer un EventHandler, comment vous trouvez cette solution ?

  7. #7
    Membre chevronné

    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 760
    Points : 2 050
    Points
    2 050
    Par défaut
    Salut,
    tu n'as nullement besoin de gérer les autorisations au niveau de ton code.
    SP le gère tout seul. Comment fait-il ? lorsqu'un utilisateur exécute ton code, SP récupère l'utilisateur connecté, et exécute ton code dans le contexte de l'utilisateur connecté. de cette facon, si il a l'autorisation d'effectuer une action, SP exécutera ton code, sinon, il plantera... Attention donc à bien gérer les exceptions.

  8. #8
    Membre habitué
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2007
    Messages
    236
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Février 2007
    Messages : 236
    Points : 194
    Points
    194
    Par défaut
    Bonsoir,
    D'accord mais comment je peux faire çà ? Mon code il doit se situer ou ? commet j'appelle mon code (via une feature ?)

    Merci de m'indiquer même les démarches en gros.

  9. #9
    Membre chevronné

    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 760
    Points : 2 050
    Points
    2 050
    Par défaut
    Ton code est déclenché au moment ou il doit l'être...

    si ton code est une webpart, il est déclenché au moment ou un utilisateur utilise ta wp, et avec les autorisations de l'utilisateur utilisant ta wp.

    si ton code est un event handler, par ex de type itemadded, il est déclenché au moment ou un utilisateur ajoute un nouvel élément, et avec les infos de l'utilisateur ayant déclenché l'événement.

    etc...

  10. #10
    Membre habitué
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2007
    Messages
    236
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Février 2007
    Messages : 236
    Points : 194
    Points
    194
    Par défaut
    Merci , mais c'est que je voulais dire au début : je développerai un eventhandler.
    J'ai une autre question : est ce qu'il y a un event pour gérer l'ouverture d'un item c'est généralement l'ouverture de la page displayItem.aspx ou ViewItem.aspx ?

    Pour la modification et la suppression il y a un évènement associé mais la visualisation j'ai pas trouvé.

  11. #11
    Membre chevronné

    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 760
    Points : 2 050
    Points
    2 050
    Par défaut
    Non ce genre d'event n'existe pas.

  12. #12
    Membre expérimenté
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    1 519
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 1 519
    Points : 1 663
    Points
    1 663
    Par défaut
    Dans ton event handler tu dois briser l'héritage des droits puis les recréer avec ton code.

  13. #13
    Membre habitué
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2007
    Messages
    236
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Février 2007
    Messages : 236
    Points : 194
    Points
    194
    Par défaut
    Bonjour,

    Comment je peux briser l'héritage ? Dans ce cas je peux gérer la visulation des Items ?
    Vous avez un exemple de code SVP ?

  14. #14
    Expert éminent sénior

    Avatar de Philippe Vialatte
    Homme Profil pro
    Architecte technique
    Inscrit en
    Juillet 2004
    Messages
    3 029
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juillet 2004
    Messages : 3 029
    Points : 12 465
    Points
    12 465
    Par défaut
    salut,

    bon, d'abord, pour recentrer la question, tu veux mettre a jour automatiquement les droits des documents de ta liste ? Parce que des messages precedents, jái du mal a voir ton besoin "fonctionnel"

    Cote code, fais un coup de Google sur BreakRoleInheritance et SPRoleAssignment, cela devrait resoudre 70% de tes questions

    Pour un bout de code (parce que je suis sympa...), tu peux t'inspireer de ce bout de coe, qui fait sur les dossiers ce que tu veux faire sur les documents (enleve l'heritage des droits, et donne a l'user courant les droits d'admin...)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    web.AllowUnsafeUpdates = true;
     
                        SPListItem folderItem = web.GetFolder(folder.UniqueId).Item;
     
                        SPRoleDefinition roleDefinition = web.RoleDefinitions.GetByType(SPRoleType.Administrator);
                        SPRoleAssignment roleAssignment = new SPRoleAssignment((SPPrincipal)currentUser);
                        roleAssignment.RoleDefinitionBindings.Add(roleDefinition);
     
                        if (!folderItem.HasUniqueRoleAssignments) {
                            folderItem.BreakRoleInheritance(true);
                        }
                        // we need to set AllowUnsafeUpdates back to true, as the BreakRoleInheritance
                        // call resets it to false
                        web.AllowUnsafeUpdates = true;
                        folderItem.RoleAssignments.Add(roleAssignment);
                        folderItem.Update();
    je peux gérer la visulation des Items ?
    tu veux dire la visualisation ?
    L'affichage des items se fera en fonction des droits de ton utilisateur. Si il a des droits sur l'item, il le verra, sinon, il ne le verra pas...

  15. #15
    Membre habitué
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2007
    Messages
    236
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Février 2007
    Messages : 236
    Points : 194
    Points
    194
    Par défaut
    Bonjour,

    Merci vraiment pour votre aide, en fait la visualisation c'est l'affichage d'un Item.
    Donc si j'ai bien compris, il faut que je change les roles (SPRoleAssigenemnt) ?

  16. #16
    Membre expérimenté
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    1 519
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 1 519
    Points : 1 663
    Points
    1 663
    Par défaut
    Oui c'est ça et l'utilisateur ne verra que les éléments sur lequel il a au moins un droit en lecture.

  17. #17
    Membre habitué
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2007
    Messages
    236
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Février 2007
    Messages : 236
    Points : 194
    Points
    194
    Par défaut
    D'accord, mais est ce que je peux appliquer ça pour la modification et le suppresion des Items, ou bien je dois passer par un eventHandler

  18. #18
    Membre expérimenté
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    1 519
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 1 519
    Points : 1 663
    Points
    1 663
    Par défaut
    Avec ton eventhandler tu peux donner les droits en lecture, modification et suppression ou autre comme tu le souhaites.

  19. #19
    Membre habitué
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2007
    Messages
    236
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Février 2007
    Messages : 236
    Points : 194
    Points
    194
    Par défaut
    Bonjour,

    Je pense que l'event handler gère la modification et la suppression mais je n'ai pas trouvé un type d'évènement qui traite la visualisation (lecture). Bon l'idée que j'ai, c'est deux créer 2 event handlers pour modifier et supprimer, concernant la lecture je metterai le code que vous m'avez montré qui permet de casser les anciens droits et de les remplacer. Comment vous trouvez l'idée ?

  20. #20
    Membre expérimenté
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    1 519
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 1 519
    Points : 1 663
    Points
    1 663
    Par défaut
    Je vois pas pourquoi faire en 2 fois ce que tu peux faire en une seule...
    Si t'arrives à mettre les droits en modification et suppression y a pas de raison que tu saches pas le faire en lecture...

Discussions similaires

  1. droit d'acces sur les onglets d'un workspace
    Par rems67 dans le forum SharePoint
    Réponses: 5
    Dernier message: 21/04/2008, 08h42
  2. [2K5] Droits d'accès sur les tables; via une stored procedure
    Par cavo789 dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 18/04/2008, 06h57
  3. [TSE]Droits d'accès sur les imprimantes
    Par Aegnor dans le forum Windows Serveur
    Réponses: 1
    Dernier message: 04/09/2007, 22h05
  4. [Infobulle]sur les item d'une liste déroulante
    Par mamiberkof dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 24/05/2007, 11h31
  5. Droits d'accès sur les fichiers
    Par billbocquet dans le forum API, COM et SDKs
    Réponses: 2
    Dernier message: 11/01/2006, 11h24

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo