Elemento identity (Esquema de configuración de ASP.NET)
Actualización: noviembre 2007
Configura la identidad de la aplicación Web. Este elemento se puede declarar en cualquier nivel de la jerarquía del archivo de configuración.
Nota
Esta sintaxis de ejemplo incluye una contraseña para mostrar cómo funciona la sintaxis. En sus aplicaciones, es recomendable que utilice una aplicación de contraseña segura.
Elemento <configuration>
Elemento system.web (Esquema de configuración de ASP.NET)
Elemento identity (Esquema de configuración de ASP.NET)
<identity impersonate="true|false"
userName="domain\username"
password="<secure password>"/>
Atributos y elementos
Las siguientes secciones describen atributos, elementos secundarios y elementos primarios.
Atributos
Atributo |
Descripción |
||||||
---|---|---|---|---|---|---|---|
Impersonate |
Atributo requerido. Especifica si se utiliza la suplantación del cliente en cada solicitud. Este atributo puede tener uno de los valores siguientes:
|
||||||
Password |
Atributo opcional. Especifica la contraseña que se va a utilizar, si el atributo impersonate es true. Para obtener información sobre cómo almacenar credenciales de proceso de trabajo cifradas en el Registro, vea el atributo userName. |
||||||
userName |
Atributo opcional. Especifica el nombre de usuario que se va a utilizar, si el atributo impersonate es true. Este atributo y el atributo password se almacenan en texto no cifrado en el archivo de configuración. Aunque Microsoft Internet Information Services (IIS) no transmite los archivos .config como respuesta a una solicitud de agente de usuario, los archivos .config se pueden leer por otros medios. Por ejemplo, por un usuario autenticado con las credenciales apropiadas en el dominio que contiene el servidor. Por motivos de seguridad, el atributo identity admite el almacenamiento de los atributos userName y password cifrados en el Registro. Las credenciales deben tener el formato REG_BINARY y deben estar cifradas con las funciones de cifrado de la API de protección de datos (DPAPI) de Microsoft Windows 2000 y Windows XP. Para obtener más información, vea "Comentarios" y "Ejemplo", más adelante en este mismo tema. |
Elementos secundarios
Ninguno.
Elementos primarios
Elemento |
Descripción |
---|---|
configuration |
Especifica el elemento raíz 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 la sección de configuración de ASP.NET. |
Comentarios
Para cifrar el nombre de usuario y la contraseña, y almacenarlos en el Registro, establezca los atributos userName y password del modo siguiente.
userName="registry:HKLM\Software\AspNetProcess,Name"password="registry:HKLM\Software\AspNetProcess,Pwd"
La parte de la cadena situada entre la palabra clave registry y la coma indica el nombre de la clave del Registro que ASP.NET abre. La parte situada detrás de la coma contiene un nombre de valor de cadena único en el que ASP.NET lee las credenciales. La coma es imprescindible y las credenciales deben estar almacenadas en el subárbol HKLM. Si el formato de configuración no es correcto, ASP.NET no iniciará el proceso de trabajo y seguirá la ruta de acceso al código de error de creación de la cuenta actual.
Las credenciales deben tener el formato REG_BINARY, que contiene el resultado de una llamada a la función CryptProtectData de la API de Windows. Puede crear las credenciales cifradas y almacenarlas en el Registro con Aspnet_setreg.exe, que utiliza CryptProtectData para el cifrado. Para descargar Aspnet_setreg.exe, junto con el código fuente y la documentación de Microsoft Visual C++, vaya al sitio Web de ASP.NET y busque "aspnet_setreg".
Se recomienda configurar el acceso a la clave que almacena las credenciales cifradas de modo que sólo se conceda acceso a Administrators y a SYSTEM. Dado que la clave la leerá el proceso de ASP.NET que se ejecuta como SYSTEM, establezca los siguientes permisos:
Administrators:F
SYSTEM:F
CREATOR OWNER:F
ProcessAccount:R
De este modo, se obtienen dos líneas de defensa para ayudar a proteger los datos:
Los permisos ACL requieren que la identidad que tiene acceso a los datos sea Administrator.
Un atacante debe ejecutar código en el servidor (la API CryptUnprotectData) para recuperar las credenciales de la cuenta.
Configuración predeterminada
El siguiente elemento identity predeterminado no se configura explícitamente en el archivo Machine.config o en el archivo Web.config raíz. Sin embargo, es la configuración predeterminada que la aplicación devuelve.
<identity impersonate="false" userName="" password="" />
Información de elemento
Controlador de la sección de configuración |
|
Miembro de configuración |
|
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) 5.0, 5.1 ó 6.0 .NET Framework 1.0, 1.1 ó 2.0 Microsoft Visual Studio 2003 o Visual Studio 2005 |
Vea también
Tareas
Cómo: Bloquear los valores de configuración de ASP.NET
Conceptos
Información general sobre la configuración de ASP.NET
Controles de servidor Web ASP.NET y funciones del explorador
Proteger la configuración de ASP.NET
Escenarios de configuración de ASP.NET
Referencia
Elemento system.web (Esquema de configuración de ASP.NET)
Otros recursos
Archivos de configuración de ASP.NET
Opciones de configuración de ASP.NET