estructura de RPC_HTTP_TRANSPORT_CREDENTIALS_A (rpcdce.h)
La estructura de RPC_HTTP_TRANSPORT_CREDENTIALS define credenciales adicionales para autenticarse en un servidor proxy RPC al usar RPC/HTTP.
Sintaxis
typedef struct _RPC_HTTP_TRANSPORT_CREDENTIALS_A {
SEC_WINNT_AUTH_IDENTITY_A *TransportCredentials;
unsigned long Flags;
unsigned long AuthenticationTarget;
unsigned long NumberOfAuthnSchemes;
unsigned long *AuthnSchemes;
unsigned char *ServerCertificateSubject;
} RPC_HTTP_TRANSPORT_CREDENTIALS_A, *PRPC_HTTP_TRANSPORT_CREDENTIALS_A;
Miembros
TransportCredentials
Puntero a una estructura de SEC_WINNT_AUTH_IDENTITY que contiene el nombre de usuario, el dominio y la contraseña del usuario.
Flags
Conjunto de marcas que se pueden combinar con el operador OR bit a bit.
AuthenticationTarget
Especifica el destino de autenticación.
Debe establecerse en uno o ambos de los valores siguientes:
NumberOfAuthnSchemes
Número de elementos de la matriz AuthnScheme .
AuthnSchemes
ServerCertificateSubject
Contiene una cadena opcional con el nombre principal de servidor esperado. El nombre principal tiene el mismo formato que el generado para RpcCertGeneratePrincipalName (consulte Nombres principales para obtener más información). Este miembro solo se usa cuando se usa SSL. En tales casos, el certificado de servidor se comprueba con el nombre principal generado. Si no coinciden, se devuelve un error. Este miembro permite a los clientes autenticar el proxy RPC.
Comentarios
Si el miembro TransportCredentials es NULL y el esquema de autenticación es NTLM, se usan las credenciales del usuario que ha iniciado sesión actualmente. Para evitar exponer las credenciales de usuario en la red a través de un hash lm débil, las credenciales de inicio de sesión de usuario solo se usan si una o ambas de las siguientes condiciones son verdaderas:
- El autor de la llamada solicitó el uso de SSL y usó el miembro ServerCertificateSubject . Este escenario garantiza que las credenciales están protegidas en tránsito y en el destino final, incluso si se usa un hash débil.
- La clave lncompatibilitylevel se establece en 2 o superior. Esto hace que el proveedor de seguridad NTLM emita o responda solo al hash NT seguro, no al hash lm débil. Además, se recomienda a los clientes que usen el nivel 3 o superior, lo que intentará NTLMv2.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows XP con SP1 [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server 2003 [solo aplicaciones de escritorio] |
Encabezado | rpcdce.h (include Rpc.h) |
Consulte también
RPC_HTTP_TRANSPORT_CREDENTIALS_V2
RPC_HTTP_TRANSPORT_CREDENTIALS_V3