SharePoint 2013: ¿Se puede usar un SPSecurityTrimmedControl en una aplicación?

Pues la respuesta es que sí como veremos en este artículo. Para utilizar SPSecurityTrimmedControl en una aplicación seguimos los siguientes pasos:

  • En Visual Studio 2012 (VS 2012) creamos un proyecto de aplicación para SharePoint 2013.
  • En el asistente de configuración, elegimos como opción de hosting “SharePoint-hosted”.
image image
  • A través del explorador de soluciones, editamos la página por defecto de la aplicación (“Default.aspx”) y añadimos un control de tipo SPSecurityTrimmedControl configurado para qué únicamente se muestre el contenido de la etiqueta <div> si el usuario que accede a la aplicación tiene el permiso ManageLists.
   1:  <asp:Content ContentPlaceHolderID="PlaceHolderMain" runat="server">
   2:   
   3:      <SharePoint:SPSecurityTrimmedControl ID="SPSecurityTrimmedControlSPApp" PermissionsString="ManageLists" runat="server"> 
   4:          <div>
   5:          <p id="message">
   6:              <!-- The following content will be replaced with the user name when you run the app - see App.js -->
   7:              initializing...
   8:          </p>
   9:      </div>
  10:  </SharePoint:SPSecurityTrimmedControl>
  11:  </asp:Content>

.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, “Courier New”, courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }

  • Desplegamos la aplicación y procedemos a probarla con distintos usuarios.
  • Si el usuario tiene permisos de colaboración, verá el mensaje sin problemas.
  • En cambio, si el usuario es de tipo “Visitante” y por lo tanto sin el permiso “ManageLists”, no verá el mensaje que muestra la aplicación.
image image image

Referencias sobre SPSecurityTrimmedControl