Estructura COAUTHINFO (wtypesbase.h)

Contiene la configuración de autenticación usada al realizar una solicitud de activación remota desde el equipo cliente al equipo servidor.

Sintaxis

typedef struct _COAUTHINFO {
  DWORD          dwAuthnSvc;
  DWORD          dwAuthzSvc;
  LPWSTR         pwszServerPrincName;
  DWORD          dwAuthnLevel;
  DWORD          dwImpersonationLevel;
  COAUTHIDENTITY *pAuthIdentityData;
  DWORD          dwCapabilities;
} COAUTHINFO;

Miembros

dwAuthnSvc

Servicio de autenticación que se va a usar. Para obtener una lista de valores, consulte Constantes de servicio de autenticación. Use RPC_C_AUTHN_NONE si no se requiere autenticación. RPC_C_AUTHN_WINNT es el valor predeterminado y también se admite RPC_C_AUTHN_GSS_KERBEROS.

dwAuthzSvc

Servicio de autorización que se va a usar. Para obtener una lista de valores, consulte Constantes de autorización. Para usar el servicio de autenticación NT, especifique RPC_C_AUTHZ_NONE.

pwszServerPrincName

Nombre principal del servidor que se va a usar con el servicio de autenticación. Si usa RPC_C_AUTHN_WINNT, el nombre principal debe ser NULL.

dwAuthnLevel

Nivel de autenticación que se va a usar. Para obtener una lista de valores, consulte Constantes de nivel de autenticación.

A partir de Windows Server 2003, las activaciones remotas usan el nivel de autenticación predeterminado especificado en el parámetro CoInitializeSecuritydwAuthnLevel . En versiones anteriores de Windows, RPC_C_AUTHN_LEVEL_CONNECT siempre se usaba para el nivel de seguridad a menos que se especificara explícitamente otro nivel.

dwImpersonationLevel

Nivel de suplantación que se va a usar. Para obtener una lista de valores, consulte Constantes de nivel de suplantación. Este valor debe ser RPC_C_IMP_LEVEL_IMPERSONATE o superior.

pAuthIdentityData

Puntero a una estructura COAUTHIDENTITY que establece una identidad de cliente no predeterminada. Si este parámetro es NULL, se usa la identidad real del cliente. Los valores de los miembros de estructura son específicos del servicio de autenticación. Este valor debe ser NULL si dwAuthnSvc no especifica el protocolo de autenticación de red NTLMSSP o Kerberos se usa como servicio de autorización.

dwCapabilities

Indica funcionalidades adicionales de este proxy. Actualmente, este miembro debe ser EOAC_NONE (0x0) o RPC_C_QOS_CAPABILITIES_MUTUAL_AUTH (0x1). Use RPC_C_QOS_CAPABILITIES_MUTUAL_AUTH si se requiere Kerberos.

Comentarios

Si pAuthInfo en COSERVERINFO se establece en NULL, Snego se usará para negociar un servicio de autenticación que funcionará entre el cliente y el servidor. Sin embargo, se puede especificar una estructura COAUTHINFO que no sea NULL para que pAuthInfo satisfaga cualquiera de las siguientes necesidades:

  • Para especificar una identidad de cliente diferente para las activaciones remotas del equipo. La identidad especificada se usará para la comprobación de permisos de inicio en el servidor en lugar de la identidad del cliente real.
  • Para especificar que Kerberos, en lugar de NTLMSSP, se usa para la activación remota de la máquina. Una identidad de cliente no predeterminada puede o no especificarse.
  • Para solicitar la activación no segura.
  • Para especificar un servicio de autenticación propietario.
Especificar una estructura COAUTHINFO permite que las activaciones de DCOM funcionen correctamente con proveedores de seguridad distintos de NTLMSSP. También puede especificar información de seguridad adicional usada durante las activaciones remotas para la interoperabilidad con implementaciones alternativas de DCOM.

Si establece dwAuthzSvc, pwszServerPrincName, dwImpersonationLevel o dwCapabilities en valores incorrectos y llama a CoGetClassObject o CoCreateInstanceEx, estas funciones no devuelven E_INVALIDARG ni un error similar. Los valores predeterminados se usan en lugar de los valores incorrectos.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 2000 Professional [aplicaciones de escritorio | Aplicaciones para UWP]
Servidor mínimo compatible Windows 2000 Server [aplicaciones de escritorio | Aplicaciones para UWP]
Encabezado wtypesbase.h (include WTypes.h)

Consulte también

COSERVERINFO