Compartir a través de


IHttpUser (Interfaz)

Proporciona información específica de la solicitud sobre un usuario. Esta información incluye datos como credenciales y autorización basada en roles.

Sintaxis

class IHttpUser  

Métodos

En la tabla siguiente se enumeran los métodos expuestos por la IHttpUser interfaz .

Tema Descripción
DereferenceUser Disminuye el recuento de referencias internas del usuario.
GetAuthenticationType Devuelve el tipo de autenticación de solicitud.
GetImpersonationToken Devuelve el token de suplantación de usuario.
GetPassword Devuelve la contraseña de usuario.
GetPrimaryToken Devuelve el token de usuario principal.
GetRemoteUserName Devuelve el nombre de usuario remoto.
GetUserName Devuelve el nombre de usuario.
GetUserVariable Devuelve los datos de usuario personalizados por nombre.
IsInRole Devuelve un valor que indica si el usuario está autorizado para un rol con nombre.
ReferenceUser Incrementa el recuento de referencias internas del usuario.
SupportsIsInRole Devuelve un valor que indica si la compatibilidad con roles está habilitada para el usuario.

Clases derivadas

Esta interfaz no contiene clases derivadas.

Comentarios

Puede recuperar un IHttpUser puntero de un puntero IHttpContext llamando al método IHttpContext::GetUser . Para obtener acceso a estas interfaces, consulte Tutorial: Creación de un módulo HTTP de Request-Level mediante código nativo.

Ejemplo

En el ejemplo de código siguiente se muestra cómo crear un módulo HTTP que borra los encabezados de respuesta y el cuerpo y, a continuación, devuelve información de usuario al cliente como un documento XML.

El código anterior escribe XML similar al siguiente en el flujo de respuesta.

<?xml version="1.0" ?>  
<user   
    userName="DOMAIN\user"   
    remoteName=" DOMAIN\user"   
    passWord="[hidden]"   
    authType="Negotiate"   
    impersonationToken="valid"   
    primaryToken="valid"   
    supportsRoles="true"   
    isInRole="false"   
    userVariable="NULL" />  

El módulo debe exportar la función RegisterModule . Puede exportar esta función mediante la creación de un archivo de definición de módulo (.def) para el proyecto, o bien puede compilar el módulo mediante el /EXPORT:RegisterModule modificador . Para obtener más información, vea Tutorial: Creación de un módulo HTTP de Request-Level mediante código nativo.

Opcionalmente, puede compilar el código mediante la __stdcall (/Gz) convención de llamada en lugar de declarar explícitamente la convención de llamada para cada función.

Requisitos

Tipo Descripción
Remoto - IIS 7.0 en Windows Vista
- IIS 7.5 en Windows 7
- IIS 8.0 en Windows 8
- IIS 10.0 en Windows 10
Servidor - IIS 7.0 en Windows Server 2008
- IIS 7.5 en Windows Server 2008 R2
- IIS 8.0 en Windows Server 2012
- IIS 8.5 en Windows Server 2012 R2
- IIS 10.0 en Windows Server 2016
Producto - IIS 7.0, IIS 7.5, IIS 8.0, IIS 8.5, IIS 10.0
- IIS Express 7.5, IIS Express 8.0, IIS Express 10.0
Encabezado Httpserv.h

Consulte también

Interfaces principales de servidor web