Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

ActiveDirektory per LotusSript in eine Notes-DB einlesen

Mitglied: cvoigt

cvoigt (Level 1) - Jetzt verbinden

04.01.2007, aktualisiert 19.02.2007, 4032 Aufrufe, 3 Kommentare

Hallo Admins,

möchte in einer Notes-DB User-Daten (Gruppenzugehörigkeit) aus der ActiveDirektory auslesen. Wie geht dass?

Mit VB-Script bekomme ich es hin.
01.
'Kleines Beispielscript mit Bildschirmausgabe
02.
'Wichtig mit cscript ausführen
03.
Set ado = CreateObject("ADODB.Connection")
04.
ado.Provider = "ADSDSOObject"
05.
ado.Open
06.
 
07.
 
08.
strBase   =  "<LDAP://dc=.....dc=DE>;"
09.
 
10.
strFilter = "(&(objectclass=user)(objectcategory=person));"
11.
strAttrs  = "name,sAMAccountName,sn,givenName,telephoneNumber,mail,FAG-UserDrives,FAG-UserPrinters,homeDrive,homeDirectory,profilePath;"
12.
strScope  = "subtree"
13.
 
14.
Set objectList = ado.Execute(strBase & strFilter & strAttrs & strScope)
15.
 
16.
While Not objectList.EOF
17.
  For Each Field in objectList.Fields
18.
     If i=0 Then
19.
	     strZeile = Field.Value
20.
     Else
21.
	     strZeile = strZeile & vbtab & Field.Value
22.
     End If
23.
     i = i+1
24.
  Next
25.
  WScript.Echo strZeile
26.
  objectList.MoveNext
27.
  strZeile = ""
28.
  i = 0
29.
Wend
30.
WScript.Echo "Fertig ..."
31.
 
32.
Wscript.sleep 20*1000
Aber ich weiß nicht, wie ich es von Notes aus tun kann.
Mit "OLE Classes" habe ich bisher nicht gearbeitet.

Wer kann mir hier einen Denkanstoß geben, wie ich vorgehen muß bzw. welche Klassen ich nutzen muß und wie ich nicht Notes-Klassen (OLE Classes) einbinde.

Vielen Dank.
Mitglied: AndreasHoster
29.01.2007 um 13:16 Uhr
Aber ich weiß nicht, wie ich es von Notes aus tun kann.
Genauso wie Du es im Posting drinstehen hast:
CreateObject arbeitet in Notes nämlich identisch wie CreateObject in VBS. (wscript.echo muß man aber noch anpassen, den Rest kannst Du aber einfach so in einen LotusScript Agenten übernehmen)

Das Einzige, worauf man aufpassen muß, wenn man server-basierte Agenten nimmt:
Der Account unter dem der Server läuft, muß die benötigten Rechte haben, z.B. lesend aufs AD zugreifen dürfen.
Und die verwendeten OLE Klassen müssen auf dem Server vorhanden sein.
Bitte warten ..
Mitglied: cvoigt
19.02.2007 um 11:40 Uhr
Funktioniert irgendwie nicht:

ich habe folgendes Script in einem Notes-Agenten stehen:
01.
Sub Initialize
02.
	Set objADO = CreateObject("ADODB.Connection")
03.
	objADO.Provider = "ADSDSOObject"
04.
	objADO.Open
05.
	
06.
	strBase   =  "<LDAP://dc=<i>[Domäne]</i>,dc=DE>;"	
07.
	strFilter = "(&(objectclass=user)(objectcategory=person));"
08.
	strAttrs  = "name,sAMAccountName,sn,givenName,telephoneNumber,mail,FAG-UserDrives,FAG-UserPrinters,homeDrive,homeDirectory,profilePath;"
09.
	strScope  = "subtree"
10.
	
11.
	Set objectList = objADO.Execute(strBase & strFilter & strAttrs & strScope)
12.
	
13.
	While Not objectList.EOF
14.
		Forall Field In objectList.Fields
15.
			If i=0 Then
16.
				strZeile = Field.Value
17.
			Else
18.
				strZeile = strZeile & Chr(10) & Field.Value
19.
			End If
20.
			i = i+1
21.
		End Forall
22.
		Print strZeile
23.
		objectList.MoveNext
24.
		strZeile = ""
25.
		i = 0
26.
	Wend
27.
	Print "Fertig ..."	
28.
End Sub
Mit Print müssten mir eigentlich die Werte in der Statuszeile angezeigt werden. Aber leider beendet das Script ohne Fehlermeldung und gibt keine Daten aus. Statt des Print sollen die Daten zukünftig in Dokumente geschrieben werden, aber solange noch nicht mal mit Print die Daten ankommen, brauche ich mich darum gar nicht erst kümmern.

Was mache ich falsch?

Danke für die Hilfe.
Bitte warten ..
Mitglied: AndreasHoster
19.02.2007 um 13:06 Uhr
Ich habs mal im LotusScript-Debugger laufen lassen, das Problem ist die ForAll Schleife.
objectList.Fields wird nicht als Collection erkannt, sondern nur als Standardobjekt, deswegen geht es erst gar nicht in die ForAll Schleife.

Aber statt ForAll über alle Felder kann man die Felder einzeln abfragen:
strZeile = objectList.Fields("name") für den Namen, strZeile = objectList.Fields("sAMAccountName") etc.
Bitte warten ..
Ähnliche Inhalte
Datenbanken
ORACLE DB Abfrage
Frage von MarabuntaDatenbanken5 Kommentare

Hallo, ich habe folgende Tabelle: Jetzt brauche ich eine Abfrage, um das vorletzte Datum auszugeben. Vorher: Zwischenstand: In den ...

Windows 10

RuntimeError429ActiveXCompomentcan not create Objekt

Frage von Fitzel69Windows 102 Kommentare

Hallo zusammen Anbei folgende Information Ich habe ein Laptop mit Windows 10 64 bit neu installiert. Office 2016 + ...

Datenbanken

Europa Länder DB in Webseite einfügen ? Woher die DB ?

Frage von bob777Datenbanken8 Kommentare

HI Bastle gerabe an einer Seite CMS da kann man dann per Hand alle Länder einfügen ich brauche aber ...

Vmware

ESXi Host not responding

gelöst Frage von chhadmVmware6 Kommentare

Hallo zuasmmen, wir haben unseren Server_Rack neu verkabelt und muss nun danach feststellen, dass unter SMware jetzt ein Host ...

Neue Wissensbeiträge
Humor (lol)
Administrator.de Perlen
Tipp von DerWindowsFreak2 vor 4 TagenHumor (lol)6 Kommentare

Hallo, Heute beim stöbern auf dieser Seite bin auf folgenden Thread aus dem Jahre 2006 gestossen: Was meint ihr? ...

Erkennung und -Abwehr
OpenSSH-Backdoor Malware erkennen
Tipp von Frank vor 4 TagenErkennung und -Abwehr

Sicherheitsforscher von Eset haben 21 Malware-Familien untersucht. Die Malware soll Hintertüren via OpenSSH bereitstellen, so dass Angreifer Fernzugriff auf ...

iOS
WatchChat für Whatsapp
Tipp von Criemo vor 8 TageniOS5 Kommentare

Ziemlich coole App für WhatsApp User in Verbindung mit der Apple Watch. Gibts für iOS sowohl als auch für ...

iOS
IOS hat nen Cursor!
Tipp von Criemo vor 8 TageniOS5 Kommentare

Nette Funktion im iOS. iPhone-Mauszeiger aktivieren „Nichts ist nerviger, als bei einem Tippfehler zu versuchen, den iOS-Cursor an die ...

Heiß diskutierte Inhalte
Samba
Windows 10 Client in Samba-Domäne hinzufügen scheitert
Frage von diwaffmSamba29 Kommentare

Hi Leute, ich habe einen Samba Server in der Version 4.9.3 auf einer OpenSuse Maschine laufen. Damit sind momentan ...

Windows Server
Kleine Umfrage: Windows Server Desktop oder Core?
Frage von doomfreakWindows Server22 Kommentare

Hey :) Ich wollte mal eine kleine Umfrage hier starten. Ich bin schon etwas länger auf dieser Seite hier ...

Batch & Shell
CMD-Fenster nach Task schließen
gelöst Frage von Hyperlink.93Batch & Shell16 Kommentare

Hallo, ich habe ein Skript was über einen Task bei jeder User Anmeldung läuft. Der Task startet eine CMD ...