ADS_AUTHENTICATION_ENUM-Enumeration (iads.h)
Die ADS_AUTHENTICATION_ENUM-Enumeration gibt Authentifizierungsoptionen an, die in ADSI für die Bindung an Verzeichnisdienstobjekte verwendet werden. Wenn Sie IADsOpenDSObject oder ADsOpenObject zum Binden an ein ADSI-Objekt aufrufen, geben Sie mindestens eine der Optionen an. Im Allgemeinen verfügen verschiedene Anbieter über unterschiedliche Implementierungen. Die hier dokumentierten Optionen gelten für die von Microsoft bereitgestellten Anbieter, die im ADSI SDK enthalten sind. Weitere Informationen finden Sie unter ADSI-Systemanbieter.
Syntax
typedef enum __MIDL___MIDL_itf_ads_0000_0000_0018 {
ADS_SECURE_AUTHENTICATION = 0x1,
ADS_USE_ENCRYPTION = 0x2,
ADS_USE_SSL = 0x2,
ADS_READONLY_SERVER = 0x4,
ADS_PROMPT_CREDENTIALS = 0x8,
ADS_NO_AUTHENTICATION = 0x10,
ADS_FAST_BIND = 0x20,
ADS_USE_SIGNING = 0x40,
ADS_USE_SEALING = 0x80,
ADS_USE_DELEGATION = 0x100,
ADS_SERVER_BIND = 0x200,
ADS_NO_REFERRAL_CHASING = 0x400,
ADS_AUTH_RESERVED = 0x80000000
} ADS_AUTHENTICATION_ENUM;
Konstanten
ADS_SECURE_AUTHENTICATION Wert: 0x1 Fordert die sichere Authentifizierung an. Wenn dieses Flag festgelegt ist, verwendet der WinNT-Anbieter NT LAN Manager (NTLM), um authentifizieren sie den Client. Active Directory verwendet Kerberos und möglicherweise NTLM, um den Client zu authentifizieren. When Benutzername und Kennwort sind NULL, ADSI wird mithilfe der Sicherheit an das Objekt gebunden. Kontext des aufrufenden Threads, der entweder der Sicherheitskontext des Benutzerkontos ist, unter dem die -Anwendung wird ausgeführt oder des Clientbenutzerkontos, das der aufrufende Thread darstellt. |
ADS_USE_ENCRYPTION Wert: 0x2 Erfordert, dass ADSI die Verschlüsselung für den Datenaustausch über das Netzwerk verwendet. Hinweis Diese Option wird vom WinNT-Anbieter nicht unterstützt. |
ADS_USE_SSL Wert: 0x2 Der Kanal wird mit Secure Sockets Layer (SSL) verschlüsselt. Active Directory erfordert, dass das Zertifikat Server zur Unterstützung von SSL installiert werden. Wenn dieses Flag nicht mit dem ADS_SECURE_AUTHENTICATION-Flag und dem Die angegebenen Anmeldeinformationen sind NULL, die Bindung wird anonym ausgeführt. Wenn dieses Flag wird mit dem ADS_SECURE_AUTHENTICATION-Flag kombiniert, und die angegebenen Anmeldeinformationen sind NULL, dann werden die Anmeldeinformationen des aufrufenden Threads verwendet. Hinweis Diese Option wird vom WinNT-Anbieter nicht unterstützt. |
ADS_READONLY_SERVER Wert: 0x4 Ein beschreibbarer Domänencontroller ist nicht erforderlich. Wenn Ihre Anwendung nur Daten aus Active liest oder abfragt Verzeichnis, sollten Sie dieses Flag verwenden, um die Sitzungen zu öffnen. Dies ermöglicht es der Anwendung, die Vorteile von Read-Only DCs (RODCs). In Windows Server 2008 versucht ADSI, eine Verbindung mit Read-Only DCs (RODCs) oder schreibbaren DCs herzustellen. Diese ermöglicht die Verwendung eines RODC für den Zugriff und ermöglicht die Ausführung der Anwendung in einem Branch- oder Umkreisnetzwerk. (auch als DMZ, demilitarisierte Zone und überprüftes Subnetz bezeichnet), ohne dass eine direkte Verbindung mit einem erforderlich ist beschreibbarer DC. Weitere Informationen zur Programmierung für DIE RODC-Kompatibilität finden Sie unter Anwendungskompatibilitätshandbuch für schreibgeschützte Domänencontroller. |
ADS_PROMPT_CREDENTIALS Wert: 0x8 Dieses Flag wird nicht unterstützt. |
ADS_NO_AUTHENTICATION Wert: 0x10 Fordern Sie keine Authentifizierung an. Die Anbieter können versuchen, den Client als anonymen Benutzer an die Zielobjekt. Der WinNT-Anbieter unterstützt dieses Flag nicht. Active Directory stellt eine Verbindung zwischen der Client und das Zielobjekt, führen jedoch keine Authentifizierung aus. Das Festlegen dieses Flags bedeutet, dass angefordert wird. eine anonyme Bindung, die alle Benutzer als Sicherheitskontext angibt. |
ADS_FAST_BIND Wert: 0x20 Wenn dieses Flag festgelegt ist, versucht ADSI nicht, die objectClass abzufragen. und macht daher nur die Basisschnittstellen verfügbar, die von allen ADSI-Objekten anstelle des vollständigen Objekts unterstützt werden. Unterstützung. Ein Benutzer kann diese Option verwenden, um die Leistung in einer Reihe von Objektbearbeitungen zu erhöhen, die nur Methoden der Basisschnittstellen. ADSI überprüft jedoch nicht, ob eines der angeforderten Objekte tatsächlich vorhanden ist. auf dem Server vorhanden. Weitere Informationen finden Sie unter Schnelle Bindungsoptionen für Batchschreib-/Änderungsvorgänge. Diese Option ist auch für die Bindung an Nicht-Active Directory-Verzeichnisdienste nützlich, z. B. Exchange 5.5. Wobei die objectClass-Abfrage fehlschlägt. |
ADS_USE_SIGNING Wert: 0x40 Überprüft die Datenintegrität. Das ADS_SECURE_AUTHENTICATION-Flag muss ebenfalls festgelegt werden. , um die Signatur zu verwenden. Hinweis Diese Option wird vom WinNT-Anbieter nicht unterstützt. |
ADS_USE_SEALING Wert: 0x80 Verschlüsselt Daten mit Kerberos. Das ADS_SECURE_AUTHENTICATION-Flag muss ebenfalls festgelegt werden. , um eine Versiegelung zu verwenden. Hinweis Diese Option wird vom WinNT-Anbieter nicht unterstützt. |
ADS_USE_DELEGATION Wert: 0x100 Ermöglicht ADSI das Delegieren des Benutzersicherheitskontexts, der zum Verschieben von Objekten zwischen Domänen erforderlich ist. |
ADS_SERVER_BIND Wert: 0x200 Wenn ein Active Directory-DNS-Servername im LDAP-Pfad übergeben wird, erzwingt dies eine A-Eintragssuche und Umgeht beim Auflösen des Hostnamens jede SRV-Datensatzsuche. Hinweis Diese Option wird vom WinNT-Anbieter nicht unterstützt. |
ADS_NO_REFERRAL_CHASING Wert: 0x400 Geben Sie dieses Flag an, um die Verweisverfolgung für die Lebensdauer der Verbindung zu deaktivieren. Aber auch dann, wenn dieses Flag angegeben ist, lässt ADSI weiterhin die Einstellung des Empfehlungs-Verfolgungsverhaltens für die Containerenumeration zu, wenn festgelegt Verwenden von ADS_OPTION_REFERRALS in ADS_OPTION_ENUM (wie unter Containerenumeration dokumentiert) mit Empfehlungs-Verfolgung IADsObjectOptions::SetOption) Und Separate Suche (wie in dokumentiert Empfehlungssuche mit IDirectorySearch). Hinweis Diese Option wird vom WinNT-Anbieter nicht unterstützt. |
ADS_AUTH_RESERVED Wert: 0x80000000 Reserviert. |
Hinweise
Das flag ADS_SECURE_AUTHENTICATION kann in Kombination mit anderen Flags wie ADS_READONLY_SERVER, ADS_PROMPT_CREDENTIALS, ADS_FAST_BIND usw. verwendet werden.
Serverlose Bindung bezieht sich auf einen Prozess, bei dem ein Client versucht, an ein Active Directory-Objekt zu binden, ohne explizit einen Active Directory-Server in der Bindungszeichenfolge anzugeben. Dies ist möglich, da der LDAP-Anbieter auf die Locatordienste von Windows angewiesen ist, um den besten Domänencontroller (DC) für den Client zu finden. Der Client muss jedoch über ein Konto auf dem Active Directory-Domänencontroller verfügen, um die Serverlose Bindungsfunktion nutzen zu können, und der von einer serverlosen Bindung verwendete DC befindet sich immer in der Standarddomäne. d. h. die Domäne, die dem aktuellen Sicherheitskontext des Threads zugeordnet ist, der die Bindung ausführt.
Da VBScript keine Daten aus einer Typbibliothek lesen kann, erkennen VBScript-Anwendungen die oben definierten symbolischen Konstanten nicht. Verwenden Sie stattdessen die numerischen Konstanten, um die entsprechenden Flags in Ihren VBScript-Anwendungen festzulegen. Um die symbolischen Konstanten als gute Programmierpraxis zu verwenden, schreiben Sie explizite Deklarationen solcher Konstanten, wie hier in Ihrer Visual Basic Scripting Edition-Anwendung.
Beispiele
Das folgende Codebeispiel zeigt, wie Sie mithilfe von IADsOpenDSObject ein Objekt auf fabrikam mit sicherer Authentifizierung für den WinNT-Anbieter öffnen.
Const ADS_SECURE_AUTHENTICATION = 1
Dim dso As IADsOpenDSObject
Dim domain As IADsDomain
Set dso = GetObject("WinNT:")
Set domain = dso.OpenDSObject("WinNT://Fabrikam", vbNullString, vbNullString, ADS_SECURE_AUTHENTICATION)
Das folgende Codebeispiel zeigt, wie das ADS_SECURE_AUTHENTICATION-Flag mit ADsOpenObject zum Überprüfen des als "JeffSmith" gebundenen Benutzers verwendet wird. Der Benutzername kann das UPN-Format "JeffSmith@Fabrikam.com" aufweisen, sowie das Distinguished Name Format: "CN=JeffSmith,DC=Fabrikam,DC=COM".
IADs *pObject = NULL;
HRESULT hr;
hr = ADsOpenObject(_bstr_t("LDAP://CN=JeffSmith, DC=fabrikam, DC=com"),
NULL,
NULL,
ADS_SECURE_AUTHENTICATION,
IID_IADs,
(void**) &pObject);
if (hr != S_OK)
{} // Handle open object errors here.
else
{} // Object was retrieved, continue processing here.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows Vista |
Unterstützte Mindestversion (Server) | Windows Server 2008 |
Kopfzeile | iads.h |