CredReadDomainCredentialsA-Funktion (wincred.h)
Die CredReadDomainCredentials-Funktion liest die Domänenanmeldeinformationen aus dem Anmeldeinformationssatz des Benutzers. Bei dem verwendeten Anmeldeinformationssatz handelt es sich um den Satz, der der Anmeldesitzung des aktuellen Tokens zugeordnet ist. Für das Token darf die SID des Benutzers nicht deaktiviert sein.
Syntax
BOOL CredReadDomainCredentialsA(
[in] PCREDENTIAL_TARGET_INFORMATIONA TargetInfo,
[in] DWORD Flags,
[out] DWORD *Count,
[out] PCREDENTIALA **Credential
);
Parameter
[in] TargetInfo
Zielinformationen, die den Zielserver identifizieren. Mindestens eines der Namensmember darf nicht NULL sein: NetbiosServerName, DnsServerName, NetbiosDomainName, DnsDomainName oder DnsTreeName.
[in] Flags
Flags, die den Vorgang der Funktion steuern.
Das folgende Flag ist definiert:
CRED_CACHE_TARGET_INFORMATION
Speichern Sie targetInfo für einen späteren Lesevorgang mithilfe von CredGetTargetInfo zwischen.
[out] Count
Anzahl der im Anmeldeinformationsarray zurückgegebenen Anmeldeinformationen.
[out] Credential
Zeiger auf ein Array von Zeigern auf Anmeldeinformationen. Die spezifischsten vorhandenen Anmeldeinformationen, die mit TargetInfo übereinstimmen, werden zurückgegeben. Wenn Anmeldeinformationen verschiedener Typen (z. B. CRED_TYPE_DOMAIN_PASSWORD und CRED_TYPE_DOMAIN_CERTIFICATE Anmeldeinformationen) vorhanden sind, wird einer jedes Typs zurückgegeben. Wenn eine Verbindung mit dem benannten Ziel hergestellt werden soll, werden diese spezifischen Anmeldeinformationen verwendet.
Nur die von TargetInfo angegebenen Anmeldeinformationstypen. CredTypes-Array wird zurückgegeben. Das zurückgegebene Anmeldeinformationsarray wird in derselben Reihenfolge wie targetInfo sortiert. CredTypes-Array. Das heißt, Authentifizierungspakete geben einen bevorzugten Anmeldeinformationstyp an, indem sie ihn weiter oben in TargetInfo angeben. CredTypes-Array. Wenn TargetInfo. CredTypeCount ist null, das Anmeldeinformationsarray wird in der folgenden sortierten Reihenfolge zurückgegeben:
- CRED_TYPE_DOMAIN_CERTIFICATE
- CRED_TYPE_DOMAIN_PASSWORD
Der zurückgegebene Puffer ist ein einzelner zugeordneter Block. Alle im Puffer enthaltenen Zeiger sind Zeiger auf Speicherorte innerhalb dieses einzelnen zugeordneten Blocks. Der einzelne zurückgegebene Puffer muss durch Aufrufen von CredFree freigegeben werden.
Rückgabewert
Die Funktion gibt TRUE bei Erfolg und FALSE bei Einem Fehler zurück. Die GetLastError-Funktion kann aufgerufen werden, um einen spezifischeren status Code abzurufen. Die folgenden status Codes können zurückgegeben werden:
- ERROR_INVALID_PARAMETER
Keiner der Benennungsparameter wurde angegeben.
- ERROR_NOT_FOUND
Es gibt keine Anmeldeinformationen, die den angegebenen Benennungsparametern entsprechen.
- ERROR_NO_SUCH_LOGON_SESSION
Die Anmeldesitzung ist nicht vorhanden, oder dieser Anmeldesitzung ist kein Anmeldeinformationssatz zugeordnet. Netzwerkanmeldungssitzungen verfügen nicht über einen zugeordneten Anmeldeinformationssatz.
- ERROR_INVALID_FLAGS
Für den Flags-Parameter wurde ein ungültiges Flag angegeben.
Hinweise
Diese Funktion gibt die spezifischsten Anmeldeinformationen zurück, die den Benennungsparametern entsprechen. Wenn für instance Anmeldeinformationen vorhanden sind, die mit dem Namen des Zielservers übereinstimmen, und anmeldeinformationen, die dem Namen der Zieldomäne entsprechen, werden nur die serverspezifischen Anmeldeinformationen zurückgegeben. Dies sind die Anmeldeinformationen, die verwendet werden.
Die folgende Liste gibt die Reihenfolge (von der spezifischsten bis zur geringsten Spezifischen) der zurückgegebenen Anmeldeinformationen an, wenn mehrere übereinstimmen:
- Der Zielname der Anmeldeinformationen hat das Format <DfsRoot>\<DfsShare> und ist eine genaue Übereinstimmung mit TargetName.
- Eine genaue Übereinstimmung für dnsServerName.
- Eine genaue Übereinstimmung mit NetBIOSServerName.
- Eine genaue Übereinstimmung für TargetName.
- Eine Übereinstimmung des DnsServerName mit den Anmeldeinformationen des Wildcardservers. Wenn mehrere Wildcardserveranmeldeinformationen übereinstimmen, werden die Anmeldeinformationen mit dem längeren TargetName verwendet. Das heißt, anmeldeinformationen für *.example.microsoft.com werden anstelle von Anmeldeinformationen für *.microsoft.com verwendet.
- Eine genaue Übereinstimmung von DnsDomainName mit einem Wildcard-Domänenanmeldeinformationen im Format <DnsDomainName>\*.
- Eine genaue Übereinstimmung des NetBIOSDomainName mit einer Platzhalter-Domänenanmeldeinformation im Format <NetBIOSDomainName>\*
- Die Anmeldeinformationen mit dem Namen CRED_SESSION_WILDCARD_NAME.
- Die Anmeldeinformationen mit dem Namen "*".
Wenn der Wert des Type-Elements der durch den Credentials-Parameter angegebenen CREDENTIAL-StrukturCRED_TYPE_DOMAIN_EXTENDED ist, muss im Zielnamen ein Namespace angegeben werden. Diese Funktion kann nur eine Anmeldeinformation des angegebenen Typs zurückgeben.
Diese Funktion kann mehrere Anmeldeinformationen dieses Typs zurückgeben, aber CRED_TYPE_DOMAIN_EXTENDED können nicht mit anderen Typen im CredTypes-Member der CREDENTIAL_TARGET_INFORMATION-Struktur gemischt werden, die durch den TargetInfo-Parameter angegeben wird.
Hinweis
Der wincred.h-Header definiert CredReadDomainCredentials als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht Codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows XP [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2003 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | wincred.h |
Bibliothek | Advapi32.lib |
DLL | Advapi32.dll |
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für