Fonction CredGetTargetInfoA (wincred.h)
La fonction CredGetTargetInfo récupère toutes les informations de nom de cible connues pour l’ordinateur cible nommé. Cette opération est exécutée localement et n’a pas besoin de privilège particulier. Les informations retournées sont censées être passées aux fonctions CredReadDomainCredentials et CredWriteDomainCredentials . Les informations ne doivent pas être utilisées à d’autres fins.
Les packages d’authentification calculent TargetInfo lors de la tentative d’authentification auprès d’un TargetName. Les packages d’authentification mettent en cache ces informations cibles pour les rendre disponibles pour CredGetTargetInfo. Par conséquent, les informations de la cible ne seront disponibles qu’à partir d’une tentative récente d’authentification d’un TargetName.
Les packages d’authentification qui ne sont pas dans le processus LSA peuvent mettre en cache un TargetInfo pour une récupération ultérieure par CredGetTargetInfo en appelant CredReadDomainCredentials avec l’indicateur CRED_CACHE_TARGET_INFORMATION.
Syntaxe
BOOL CredGetTargetInfoA(
[in] LPCSTR TargetName,
[in] DWORD Flags,
[out] PCREDENTIAL_TARGET_INFORMATIONA *TargetInfo
);
Paramètres
[in] TargetName
Pointeur vers une chaîne terminée par null qui contient le nom de l’ordinateur cible pour lequel les informations doivent être récupérées.
[in] Flags
Indicateurs contrôlant le fonctionnement de la fonction. L’indicateur suivant peut être utilisé :
CRED_ALLOW_NAME_RESOLUTION
Si aucune information cible ne peut être trouvée pour la résolution de noms TargetName est effectuée sur TargetName pour la convertir en d’autres formulaires. S’il existe des informations cibles pour l’un de ces autres formulaires, elles sont retournées. Actuellement, seule la résolution de noms DNS est effectuée.
Cela est utile si l’application n’appelle pas de package d’authentification directement. L’application peut passer le TargetName à une autre couche de logiciels pour s’authentifier auprès du serveur, et cette couche de logiciel peut résoudre le nom et passer le nom résolu au package d’authentification. Par conséquent, il n’y aura aucune information cible pour le TargetName d’origine.
[out] TargetInfo
Pointeur vers une mémoire tampon de bloc allouée unique pour contenir les informations de la cible. Au moins l’un des membres retournés de TargetInfo ne sera pas NULL. Tous les pointeurs contenus dans la mémoire tampon sont des pointeurs vers des emplacements au sein de ce bloc alloué unique. La mémoire tampon retournée unique doit être libérée en appelant CredFree.
Valeur retournée
La fonction retourne TRUE en cas de réussite et FALSE en cas d’échec. La fonction GetLastError peut être appelée pour obtenir un code status plus spécifique. Le code status suivant peut être retourné :
- ERROR_NOT_FOUND
Les informations cibles pour le serveur nommé ne sont pas disponibles.
Remarques
Notes
L’en-tête wincred.h définit CredGetTargetInfo en tant qu’alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. La combinaison de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows XP [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2003 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | wincred.h |
Bibliothèque | Advapi32.lib |
DLL | Advapi32.dll |