Inherits Cloud

Loving Microsoft Cloud, specially Office 365

Trust Levels en ASP.NET y Sharepoint

Los que trabajamos con Sharepoint, sobre todo si empezamos con el 2003, quién más o quién menos hemos acudido alguna vez a algún webpart de codeplex, o de los grandes Carlos Segura o Gustavo Vélez.

En muchas ocasiones, para que el webpart funcionase, teníamos que cambiar el Trust level del web.config, y ponerlo a FULL:


Este atributo define las políticas de CAS (Code Access Security), que viene a ser, el qué puede hacer el código fuente de una aplicación.

En asp.net, por defecto, todo corre en modo Full, si no se indica lo contrario, pero Sharepoint define sus propios niveles de confianza, y esto hace que algunas operaciones no estén permitidas.

La siguiente tabla resume las características de cada Trust level que viene con asp.net.

Nivel Características
Full Control total !! puedes formatear el disco duro desde una aspx… mola, eh? 🙂
High

Puedes hacer casi de todo, pero no puedes:

  • Llamar a código no manejado (por ejemplo las APIs de Win32)
  • Llamar a serviced components (COM+)
  • Escribir en el visor de eventos
  • Acceder a colas de MSMQ
  • Acceder a fuentes de datos ODBC, OLEDB…
Medium

Este es el nivel que te encontrarás en la mayoría de aplicaciones asp.net de los proveedores de hosting, ya que te permite bastante control dentro del directorio de tu aplicación, pero no te deja salir de ahí. No puedes:

  • File I/O fuera del directorio de la aplicación.
  • Acceder al registro
  • Hacer llamadas en red o web services (usando el namespace System.Net, por ejemplo)

Respecto a las llamadas en red, si sería posible algunas de ellas, siempre que se defina un valor para el atributo “originUrl”, que permite definir una URL (o patrón de URL) a la que se permitiría hacer llamadas en red (por ejm usar el WebRequest).

Low

Sólo permite operaciones de lectura dentro de tu directorio. No puedes:

Minimal Podrás sumar 2+2 y poco más 😉

En el caso de Sharepoint, además existen 2 niveles más:

  • WSS_Minimal
  • WSS_medium

Que están descritos en: http://msdn.microsoft.com/en-us/library/cc768613.aspx

Las políticas de seguridad se pueden personalizar, editando los ficheros de configuración que las definen. Dicho ficheros, vienen referenciados en el web.config:


Por ejemplo, si accedemos a:

C:WindowsMicrosoft.NETFrameworkv2.0.50727CONFIG

veremos los ficheros .config referenciados en el XML anterior, y aunque no es tarea sencilla, podríamos editarlos y personalizarlos a nuestras necesidades.

Nada más, espero haber aclarado un poco este tema y las restricciones de cada nivel de confianza.

Saludos!!.

1 Comentario

  1. :O muy bueno, sirve mucho y

    “Full Control total !! puedes formatear el disco duro desde una aspx… mola, eh? :)” la rompe jaja 🙂 muy buena

Deja un comentario

Tu dirección de correo electrónico no será publicada.

*

© 2017 Inherits Cloud

Tema por Anders NorenArriba ↑