Magazine High tech

Utiliser le SPSecurityTrimmedControl dans Sharepoint

Publié le 16 février 2009 par Blogtech

image Le SPSecurityTrimmedControl est un WebControl présent dans le framework de sharepoint. Il permet d'afficher ou de cacher certaines parties de l'interface en fonction des permissions assignées à l'utilisateur connecté.

Le contenu peut être du code Html ou des contrôles Asp.Net.

Le SPSecurityTrimmedControl posséde un attribut "PermissionString" qui permet de définir là où les permissions requises pour afficher le contenu du contrôle.

C'est un contrôle idéal pour traiter la sécurité dans une master page ou dans  une page aspx, mais aussi dans vos webpart.

Les deux attributs principaux du contrôle sont :

  • PermissionString (requis)
    Définit les permissions requises pour afficher le contenu du contrôle.
  • PermissionMode(Optionnel)
    Définit le mode de traitement si plusieurs permissions ont été saisies. Les choix possibles sont : "PermissionMode.All" et "PermissionMode.Any"

SPSecurityTrimmedControl en "Asp.Net"

Le SPSecurityTrimmedControl est un "templated control", vous pouvez donc définir directement en ASP quels sont les contrôles qui seront affichés si l'utilisateur a les permissions requises.

Voici un exemple :

<SharePoint:SPSecurityTrimmedControl 
  PermissionsString="AddAndCustomizePages, ManageLists" 
  runat="server">
Vous pouvez voir ça car vous avez les permissions 
"AddAndCustomizePages" & "ManageLists" </SharePoint:SPSecurityTrimmedControl>

Le résultat sera le suivant :

image

SPSecurityTrimmedControl en C#

Voici un exemple d'utilisation dans du code C#. Le contrôle est défini dans le namespace "Microsoft.Sharepoint.WebControls"  (Microsoft.SharePoint.Dll)

Pour l'utiliser, il faut :

  1. Définir une instance de SPSecurityTrimmedControl
  2. Affecter les permissions.
  3. Définir les contrôles à afficher si l'utilisateur connecté a les permissions
  4. Ajouter les contrôles à la collection de contrôle du SPSecurityTrimmedControl.

Voici un exemple :

SPSecurityTrimmedControl stcEditItem= new SPSecurityTrimmedControl();
stcEditItem.Permissions = SPBasePermissions.EditListItems;

Literal litEditItem = new Literal();
litEditItem.Text = “My Content”;
stcEditItem.Controls.Add(litEditItem);
this.Controls.Add(stcEditItem);

Les permissions du SPSecurityTrimmedControl

Le SPSecurityTrimmedControl supporte toutes les permissions disponibles dans sharepoint.

En voici la liste :

List Permissions Site Permissions Personal Permissions

ManageLists
CancelCheckout
AddListItems
EditListItems
DeleteListItems
ViewListItems
ApproveItems
OpenItems
ViewVersions
DeleteVersions
CreateAlerts
ViewFormPages ManagePermissions
ViewUsageData
ManageSubwebs
ManageWeb
AddAndCustomizePages
ApplyThemeAndBorder
ApplyStyleSheets
CreateGroups
BrowseDirectories
CreateSSCSite
ViewPages
EnumeratePermissions
BrowseUserInfo
ManageAlerts
UseRemoteAPIs
UseClientIntegration
Open
EditMyUserInfo ManagePersonalViews
AddDelPrivateWebParts
UpdatePersonalWebParts

Référence :


Retour à La Une de Logo Paperblog

A propos de l’auteur


Blogtech 3 partages Voir son profil
Voir son blog

l'auteur n'a pas encore renseigné son compte l'auteur n'a pas encore renseigné son compte