Compartir a través de


Elemento deny para authorization (Esquema de configuración de ASP.NET)

Agrega a la asignación de reglas de autorización una regla de autorización que niega el acceso a un recurso.

<deny 
  users="comma-separated list of users"
  roles="comma-separated list of roles"
/>

Atributos y elementos

En las secciones siguientes se describen los atributos, los elementos secundarios y los elementos primarios.

Atributos

Atributo

Descripción

users

El atributo String es obligatorio.

Lista de nombres de usuario, separados por comas, a los que se deniega el acceso al recurso. El signo de interrogación (?) indica que se deniega el acceso a usuarios anónimos y el asterisco (*) indica que se deniega el acceso a todas las cuentas de usuario.

roles

Atributo String requerido.

Lista separada por comas que indica las funciones a las que se deniega el acceso.

verbs

Atributo String opcional.

Lista separada por comas que indica los métodos de transmisión HTTP a los que se concede acceso al recurso.

Los verbos que se registran en ASP.NET son GET, HEAD, POST y DEBUG.

Elementos secundarios

Ninguno.

Elementos primarios

Elemento

Descripción

configuration

Especifica el elemento raíz necesario de cada archivo de configuración que utilizan las aplicaciones basadas en Common Language Runtime y .NET Framework.

system.web

Especifica el elemento raíz de los valores de configuración de ASP.NET de un archivo de configuración y contiene elementos de configuración que configuran las aplicaciones Web ASP.NET y controlan el comportamiento de las aplicaciones.

authorization

Configura la autorización para una aplicación Web. El elemento authorization controla el acceso del cliente a los recursos de direcciones URL. Este elemento puede declararse en cualquier nivel (equipo, sitio, aplicación, subdirectorio o página).

Comentarios

El elemento deny agrega a la asignación de reglas de autorización almacenadas en el elemento authorization una regla de autorización que deniega el acceso a un recurso.

El elemento authorization configura la autorización para una aplicación Web, controlando el acceso del cliente a los recursos de direcciones URL. Para los atributos que son obligatorios puede utilizar el atributo users o roles, o ambos.

En tiempo de ejecución, el módulo de autorización recorre en iteración los elementos allow y deny, empezando por el archivo de configuración más local hasta que encuentra la primera regla de acceso adecuada para una cuenta de usuario específica. Después, el módulo de autorización concede o niega el acceso a un recurso de direcciones URL dependiendo de si la primera regla de acceso encontrada es una regla allow o deny. La regla de la autorización predeterminada es <allow users="*"/>. Así, de forma predeterminada y si no se configura de otra forma, se concede el acceso.

Para facilitar la implementación, se admite el punto (.) como notación de acceso directo para el equipo actual. Esto permite prefijar cada usuario o rol con una secuencia de punto y barra diagonal inversa (.\), como se indica a continuación.

<allow roles=".\roleName"/>
<allow users=".\userName"/>

En tiempo de ejecución, las secuencias de punto y barra diagonal inversa (.\) se sustituyen por secuencias "nombreMáquinaLocal\". La sustitución sólo se lleva a cabo si se utiliza una identidad de Windows con la solicitud. Con ello se evitan conflictos en caso de que las secuencias de punto y barra diagonal inversa (.\) se utilicen en roles arbitrarios con entidades de seguridad personalizadas.

Dado que el elemento authorization no representa una colección, no hay elementos secundarios clear o remove. Para borrar las asignaciones de reglas de la autorización, utilice los métodos Clear y Remove definidos por la clase AuthorizationRuleCollection.

Ejemplo

En el ejemplo de código siguiente se muestra cómo conceder acceso a todos los miembros de la función Admins y denegárselo a todas las demás cuentas de usuario.

<configuration>
  <system.web>
    <authorization>
      <allow roles="admins"/>
      <deny users="*"/>
    </authorization>
  </system.web>
</configuration>

Información de elemento

Controlador de la sección de configuración

AuthorizationSection

Miembro de configuración

AuthorizationRuleCollection

Ubicaciones configurables

Machine.config

Web.config del nivel raíz

Web.config del nivel de aplicaciones

Web.config del nivel de directorio virtual o físico

Requisitos

Microsoft Internet Information Services (IIS) versión 5.0, 5.1 ó 6.0

.NET Framework versión 1.0, 1.1 ó 2.0

Microsoft Visual Studio 2003 o Visual Studio 2005

Vea también

Tareas

Cómo: Configurar directorios concretos mediante la configuración de la ubicación

Cómo: Bloquear los valores de configuración de ASP.NET

Referencia

Elemento authorization (Esquema de configuración de ASP.NET)

Elemento allow para autorización (Esquema de configuración de ASP.NET)

Elemento configuration (Esquema de configuración general)

Elemento system.web (Esquema de configuración de ASP.NET)

Conceptos

Autorización de ASP.NET

Jerarquía de archivos y herencia de la configuración de ASP.NET

Proteger la configuración de ASP.NET

Escenarios de configuración de ASP.NET

Otros recursos

Administrar autorizaciones con roles

Opciones de configuración generales (ASP.NET)

Opciones de configuración de ASP.NET

Administración de sitios web ASP.NET

API de configuración de ASP.NET