Función CredReadDomainCredentialsA (wincred.h)
La función CredReadDomainCredentials lee las credenciales de dominio del conjunto de credenciales del usuario. El conjunto de credenciales usado es el asociado a la sesión de inicio de sesión del token actual. El token no debe tener deshabilitado el SID del usuario.
Sintaxis
BOOL CredReadDomainCredentialsA(
[in] PCREDENTIAL_TARGET_INFORMATIONA TargetInfo,
[in] DWORD Flags,
[out] DWORD *Count,
[out] PCREDENTIALA **Credential
);
Parámetros
[in] TargetInfo
Información de destino que identifica el servidor de destino. Al menos uno de los miembros de nomenclatura no debe ser null: NetbiosServerName, DnsServerName, NetbiosDomainName, DnsDomainName o DnsTreeName.
[in] Flags
Marcas que controlan la operación de la función.
Se define la marca siguiente:
CRED_CACHE_TARGET_INFORMATION
Almacene en caché targetInfo para una lectura posterior mediante CredGetTargetInfo.
[out] Count
Recuento de las credenciales devueltas en la matriz de credenciales de .
[out] Credential
Puntero a una matriz de punteros a las credenciales. Se devuelve la credencial existente más específica que coincide con el targetInfo de
Solo los tipos de credenciales especificados por el TargetInfo. Se devuelve la matriz CredTypes. La matriz de credenciales de
- CRED_TYPE_DOMAIN_CERTIFICATE
- CRED_TYPE_DOMAIN_PASSWORD
El búfer devuelto es un único bloque asignado. Los punteros contenidos en el búfer son punteros a ubicaciones dentro de este único bloque asignado. El único búfer devuelto debe liberarse llamando a CredFree.
Valor devuelto
La función devuelve TRUE si se ejecuta correctamente y FALSE en caso de error. Se puede llamar a la función getLastError
- ERROR_INVALID_PARAMETER
No se especificó ninguno de los parámetros de nomenclatura.
- ERROR_NOT_FOUND
No hay credenciales que coincidan con los parámetros de nomenclatura especificados.
- ERROR_NO_SUCH_LOGON_SESSION
La sesión de inicio de sesión no existe o no hay ningún conjunto de credenciales asociado a esta sesión de inicio de sesión. Las sesiones de inicio de sesión de red no tienen un conjunto de credenciales asociado.
- ERROR_INVALID_FLAGS
Se especificó una marca que no es válida para el parámetro Flags.
Observaciones
Esta función devuelve las credenciales más específicas que coinciden con los parámetros de nomenclatura. Por ejemplo, si hay una credencial que coincide con el nombre del servidor de destino y una credencial que coincide con el nombre de dominio de destino, solo se devuelve la credencial específica del servidor. Esta es la credencial que se usaría.
En la lista siguiente se especifica el orden (del más específico al menos específico) de la credencial que se devuelve si hay más de una coincidencia:
- El nombre de destino de credencial tiene el formato <DfsRoot>\<DfsShare>, y es una coincidencia exacta en el TargetName.
- Coincidencia exacta en el DnsServerName.
- Coincidencia exacta en elnetBIOSServerName de
. - Coincidencia exacta en TargetName.
- Coincidencia del DnsServerName con una credencial de servidor comodín. Si coincide con más de una credencial de servidor comodín, se usa la credencial con targetName más largo. Es decir, se usa una credencial para *.example.microsoft.com en lugar de una credencial para *.microsoft.com.
- Coincidencia exacta del DnsDomainName con una credencial de dominio comodín del formulario <DnsDomainName>\*.
- Coincidencia exacta del NetBIOSDomainName con una credencial de dominio comodín del formulario <NetBIOSDomainName>\*
- Credencial denominada CRED_SESSION_WILDCARD_NAME.
- La credencial denominada "*".
Si el valor del miembro type de
Esta función puede devolver varias credenciales de este tipo, pero CRED_TYPE_DOMAIN_EXTENDED no se puede mezclar con otros tipos del CredTypes miembro de la estructura de CREDENTIAL_TARGET_INFORMATION especificada por el parámetro TargetInfo.
Nota
El encabezado wincred.h define CredReadDomainCredentials como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutral de codificación con código que no es neutral de codificación puede dar lugar a errores de coincidencia que dan lugar a errores de compilación o tiempo de ejecución. Para obtener más información, vea Conventions for Function Prototypes.
Requisitos
Requisito | Valor |
---|---|
cliente mínimo admitido | Windows XP [solo aplicaciones de escritorio] |
servidor mínimo admitido | Windows Server 2003 [solo aplicaciones de escritorio] |
de la plataforma de destino de |
Windows |
encabezado de |
wincred.h |
biblioteca de |
Advapi32.lib |
DLL de |
Advapi32.dll |