Ich habe umfangreiche Nachforschungen zur Abfrage von LDAP-Servern angestellt, konnte diese jedoch bisher nicht umgehen. Bitten Sie daher Experten um Hilfe
Hintergrund: Ich habe einen Client, dessen LDAP-Server OnPremise ist (obwohl er öffentlich zugänglich ist), und ich habe einen SQL Server (2012 SE) in der Firewall. Die Kommunikation zwischen dem externen LDAP und dem internen SQL Server ist in Ordnung, da ich mich gegenseitig anpingen kann. Ich habe auch ein Remotedomänenkonto erstellt und dieses Konto beim Erstellen eines Verbindungsservers auf SQL Server verwendet. Ich habe auch unseren internen Domänencontroller mit Domänenvertrauensbeziehung. Jetzt habe ich 2 Verbindungsserver mit dem Domänenkonto erstellt, konnte jedoch LDAP-Server weder intern noch extern abfragen. Ich hoffe das macht Sinn. Wie auch immer, hier sind die Definitionen meines Verbindungsservers und die Fehler, die ich erhalte
[Gelöst] Verbindungsserver mit einem internen LDAP-Server : Dies wurde mithilfe von [email protected] anstelle von domain / ADuser behoben
USE [master]
GO
EXEC master.dbo.sp_addlinkedserver @server = N'ADSI', @srvproduct=N'Active
Directory Service Interfaces', @provider=N'ADSDSOObject',
@datasrc=N'adsdatasource'
EXEC master.dbo.sp_addlinkedsrvlogin
@rmtsrvname=N'ADSI',@useself=N'False',@locallogin=NULL,
@rmtuser=N'Domain/ADUser',@rmtpassword='########'
Error:
Nachricht 7321, Ebene 16,
Status 2, Zeile 1 Beim Vorbereiten der Abfrage "SELECT * FROM 'LDAP: //Domain.com/OU=Accounts,DC=Domain,DC=com' --WHERE objectClass = 'User ist ein Fehler aufgetreten '"zur Ausführung gegen den OLE DB-Provider" ADSDSOObject "für den Verbindungsserver" ADSI ".
Verbindungsserver mit einem externen LDAP-Server
USE [master]
GO
EXEC master.dbo.sp_addlinkedserver @server = N'ADSIE', @srvproduct=N'Active
Directory Service Interfaces', @provider=N'ADSDSOObject',
@datasrc=N'CustomerIPAdress'
EXEC master.dbo.sp_addlinkedsrvlogin
@rmtsrvname=N'ADSI',@useself=N'False',@locallogin=NULL,
@rmtuser=N'Domain/ADUser',@rmtpassword='########'
Error:
Meldung 7399, Ebene 16, Status 1, Zeile 1 Der OLE DB-Anbieter "ADsDSOObject" für den Verbindungsserver "ADSIE" hat einen> Fehler gemeldet. Der Anbieter gibt an, dass der Benutzer nicht berechtigt war, den Vorgang auszuführen. Nachricht 7321, Ebene 16, Status 2, Zeile 1 Beim Vorbereiten der Abfrage "SELECT * FROM 'LDAP: // Kunden-IP-Adresse' WHERE objectClass = 'User'" zur Ausführung gegen den OLE DB-Anbieter "ADsDSOObject" für den Verbindungsserver ist ein Fehler aufgetreten > "ADSIE".
Jede Hilfe wäre dankbar. Vielen Dank im Voraus.
Antworten:
Was in Ihrer zweiten Fehlermeldung am meisten auffällt, ist die folgende Meldung:
Dies sagt mir, dass der Benutzer in Ihrer Verbindungsserverkonfiguration keinen Zugriff auf den AD / LDAP-Server hat, um diese Abfrage auszuführen. Hier sind meine ADSI-Konfigurationen zusammen mit einer Beispielabfrage. Möglicherweise müssen Sie Ihr SA-Team einbeziehen, um sicherzustellen, dass das auf Ihrem Verbindungsserver konfigurierte Konto über den richtigen Zugriff auf die Abfrage von AD / LDAP verfügt.
Hier ist ein Beispiel für die Verwendung des ADSI-Verbindungsservers mit openquery. Sie müssen jedoch die OU-Struktur und die Domänenstruktur von AD kennen, bevor Sie die LDAP-Verbindungszeichenfolge erstellen.
HINWEIS: Ich habe den DC-Namen in der LDAP-Zeichenfolge aus Sicherheitsgründen geändert, aber Sie sollten in der Lage sein, sich ein Bild zu machen.
quelle