Exportar (0) Imprimir
Expandir todo

WebPartManager.IsAuthorized (Método)

Determina si se puede agregar un control WebPart u otro control de servidor a una página.

Nombre Descripción
WebPartManager.IsAuthorized (WebPart) Realiza los pasos iniciales para determinar si un control tiene autorización para ser agregado a una página.
WebPartManager.IsAuthorized (Type, String, String, Boolean) Realiza los pasos finales para determinar si un control tiene autorización para ser agregado a una página.

La característica de flexibilidad de los elementos Web es la capacidad de agregar controles de servidor a páginas Web en tiempo de ejecución. Existen varios escenarios comunes en los que se puede agregar un control de servidor (que puede ser un control WebPart personalizado, un control de servidor personalizado, un control de usuario o un control ASP.NET).

En los siguientes escenarios comunes, el conjunto de controles de elementos Web intenta agregar controles de servidor a una página y se llama al método IsAuthorized para obtener autorización:

  • Cuando un control de servidor se agrega declarándolo en el formato de una página Web dentro de una zona WebPartZoneBase.

  • Cuando un control de servidor se agrega a una zona mediante programación.

  • Cuando un usuario importa un control de servidor a un catálogo de controles de elementos Web.

  • Cuando un control de servidor existente se carga del almacén de datos de personalización.

  • Cuando un control de servidor se agrega a un control DeclarativeCatalogPart para que esté disponible en un catálogo de controles de servidor.

En cada escenario donde se agregan controles, se llama al método IsAuthorized a fin de comprobar que se han cumplido todos los criterios de autorización para permitir que se agregue un control. Cuando un control tiene autorización, se agrega normalmente, tal como se agregaría si no hubiera ningún escenario de filtrado. Cuando un control no tiene autorización, el conjunto de controles de elementos Web puede responder de varias maneras, dependiendo del contexto. Al agregar un elemento no autorizado, el conjunto de controles puede producir un error que no se notifica (si no es necesario informar al usuario), mostrar un mensaje de error o agregar una instancia de la clase UnAuthorizedWebPart como marcador de posición. Este objeto marcador de posición, que indica que se ha excluido un control no autorizado, no es visible en la página, pero se puede ver en el código fuente de la página.

El factor determinante de si un control tiene autorización es el filtro de autorización. Un filtro de autorización es una característica del conjunto de controles de elementos Web que permite a los desarrolladores excluir de una página los controles que no cumplen los criterios especificados.

Para crear un escenario de filtrado, los desarrolladores deben hacer dos cosas. En primer lugar, deben asignar un valor de cadena (que puede ser arbitrario) a la propiedad AuthorizationFilter de cada control WebPart que vayan a utilizar en el escenario. También pueden asignar un valor a esta propiedad para otros tipos de controles de servidor que no sean WebPart, ya que si dichos controles se colocan en zonas WebPartZoneBase, se ajustan con un control GenericWebPart en tiempo de ejecución y este último hereda la propiedad AuthorizationFilter.

El segundo paso necesario para crear un escenario de filtrado es reemplazar el método IsAuthorized(Type,String,String,Boolean) o crear un controlador para el evento AuthorizeWebPart. En estos métodos, un desarrollador puede comprobar la propiedad AuthorizationFilter y, si el valor indica que el control no se debe autorizar, asegurarse de que el método IsAuthorized devuelve un valor de false.

NotaNota:

Para obtener ejemplos de código y una descripción de cómo configurar un escenario de filtrado personalizado mediante el método IsAuthorized, vea los temas de las sobrecargas del método.

Adiciones de comunidad

AGREGAR
Mostrar:
© 2014 Microsoft