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

gelöst SID in Variable auslesen

Mitglied: cookie

cookie (Level 1) - Jetzt verbinden

17.11.2006, aktualisiert 14:15 Uhr, 10921 Aufrufe, 8 Kommentare

Hallo zusammen.

Ich möchte gerne die SID eines Benutzers, welchen ich vorher in eine Variable geschriben habe auslesen. Wie mache ich das am besten? Ich sollte die SID des Benutzers haben, damit ich in der Registry die richtigen Einträge setzen kann, da ich Remotemässig mit einem anderen Installationsbenutzer komme, aber etwas in die Registry des angemeldeten Benutzers schreiben muss.

Besten dank für eure Hilfe.
Mitglied: MCSE-Cheffe
17.11.2006 um 12:14 Uhr
Hi,

hier ein WMI Script.

Für dieses Script sind Adminrechte Vorraussetzung auf dem Rechner


Const wbemFlagReturnImmediately = &h10
Const wbemFlagForwardOnly = &h20

arrComputers = Array("PC01") ' Hier den Namen oder die IP eintragen es gehen auch mehrere mit Komma getrennt

For Each strComputer In arrComputers

Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2")
Set colItems = objWMIService.ExecQuery("SELECT * FROM Win32_UserAccount", "WQL", _
wbemFlagReturnImmediately + wbemFlagForwardOnly)

For Each objItem In colItems
WScript.Echo "Name: " & objItem.Name
WScript.Echo "SID: " & objItem.SID
Next

Next


Gruß MCSE_Cheffe
Bitte warten ..
Mitglied: Biber
17.11.2006 um 13:20 Uhr
Moin cookie,

für eine Batch-Alternative brauchst Du zwar keine Admin-Rechte, aber eines der ??GetSID-Tools.

Mit den beiden bekanntesten liefe es so, wenn man/frau unterstellt:
- die Utilities sind auf %util%[ = z.B. set "util=\\utilserver\utils" abgelegt.
- der gesuchte User steht in %theUser%
- die SID soll in %theSID% gespeichert werden

a) GetSID.exe aus dem M$-Ressource-Kit [-------dazu wird auf den %logonserver% zurückgegriffen----]

im Batch:
01.
.... 
02.
for /f "skip=2 tokens=7" %%i in ('%util%\getsid %logonserver% %theUser% %logonserver% %theUser%') do set "theSID=%%i"
b) psGetSid.exe vom SysInternals.com [-------auch dazu wird auf den %logonserver% zurückgegriffen----]
01.
.... 
02.
for /f %%i in ('%util%\psgetsid %logonserver% %theUser% ^2^>nul^|find "S-"') do set "theSID=%%i"
Gruß
Biber
Bitte warten ..
Mitglied: cookie
17.11.2006 um 13:23 Uhr
Hallo Biber.

Besten dank. Das sieht genau nach dem aus, was ich suche. Aber wieso brauche es die variable %logonserver%? das hab ich noch nicht ganz durchblickt.
besten dank.
Bitte warten ..
Mitglied: Biber
17.11.2006 um 13:34 Uhr
Moin cookie,

die variable %logonserver% sollte es ohnehin auf Deinem und jedem anderen M$-Rechner geben.
Bitte überprüf mal am CMD-Prompt
01.
Set logonserver
Nur bei M$-Drex-Utilitily, wo schon die Syntax so aussieht wie normaler ein Kindergeburtstag oder ein Karnevalslied brauchst Du den %logonserver$ wirklich. Siehe GetSID-Syntax auf M$-techNet

Bei psgetSID eigentlich nicht. Da kannst Du auch alternativ diese Syntax verwenden
01.
 psGetSiD deineDomain\derUsername 
ABER: wenn Du keinen %logonserver% angibst, wird die SID der aktuellen Maschine (also die SID auf DEINEM Rechner) ermittelt.
Und die ist sicherlich ungleich der SID in der Domäne.

Aber, however. eine %logonserver%-Variable ist bei M$ sogar auf Nicht-Domain-Rechnern verfügbar seit W2k. [*seufz* Wunderwelt Windows...]
Die beiden oberen Oneliner und die PsGetSID-Alternative hier unten sollten überall funktionieren.

Gruß
Biber
Bitte warten ..
Mitglied: cookie
17.11.2006 um 13:44 Uhr
Hallo Biber.

Wenn ich das nun ausführen will (variable theuser und util sind definiert) kommt jedesmal %%i is syntaktisch an dieser Stelle nicht verarbeitbar.

for /f %%i in ('%util%\psgetsid %logonserver% %theUser% ^2^>nul^|find "S-"') do set "theSID=%%i"
"%%i" ist syntaktisch an dieser Stelle nicht verarbeitbar.

Woran könnte das liegen?

Besten dank.
Bitte warten ..
Mitglied: Biber
17.11.2006 um 13:55 Uhr
Probier es schrittweise vorher am CMD-Prompt.

Start->Ausführen->cmd.
01.
> psGetSid %logonserver% %theuser% 
02.
[....Ausgabe...] 
03.
 
04.
(=13:53:19  D:\temp=) 
05.
>for /f %i in ('psgetsid %logonserver% %username% ^2^>nul^|find "S-"') do @echo set sid=%i 
06.
set sid=S-1-5-21-8915387-466359577-720635935-14711 
07.
 
08.
(=13:53:44  D:\temp=)
und wenn das klappt, diesen Befehl mit zwei "%%" vor der Zählvariablen i statt einem "%" in den Batch stellen. Und das ECHO vor dem SET rausnehmen.

Gruß
Biber
Bitte warten ..
Mitglied: cookie
17.11.2006 um 14:09 Uhr
Biber du bist genial

vielen dank.
Bitte warten ..
Mitglied: Biber
17.11.2006 um 14:15 Uhr
Dann verschiebe ich diesen Thread mal von "Entwicklung" nach "Batch & Shell", setze ihn auf "gelöst" und "geschlossen" ...
und wünsche ein schönes und baldiges Wochenende

Biber
Bitte warten ..
Ähnliche Inhalte
Batch & Shell

SID per Script auslesen und als Variable einlesen

gelöst Frage von tzabbi55Batch & Shell9 Kommentare

Hallo liebe Administratoren, heute schreibe ich mein ersten Post hier. Ich sitze derzeit an einem kleinen Script um bestimmte ...

Java

Mit Java SID des angemeldeten Benutzers auslesen und in Variable schreiben

gelöst Frage von reissaus73Java2 Kommentare

Wer kann mir bei folgenden Problem helfen. Wie kann man die SID des angemeldeten Users in Java auslesen und ...

Batch & Shell

Teil einer Variablen auslesen

gelöst Frage von mondfelder69Batch & Shell7 Kommentare

Hallo habe folgendes Problem: Ich möchte mit folgender Batch alle xls Dateien in xlsx konvertieren. Das funktioniert auch wunderbar, ...

Batch & Shell

Mehrere Ordnernamen auslesen und in eine Variable schreiben

gelöst Frage von schmithoBatch & Shell5 Kommentare

Hallo zusammen, ich versuche verzweifelt eine Lösung eines Problems zu finden, wie ich den Namen mehrere Ordner in eine ...

Neue Wissensbeiträge
Windows Server
Erneutes Release von WS2019 und Win10 v1809
Tipp von IT-Pro vor 21 StundenWindows Server3 Kommentare

Hi, nachdem der Windows Server 2019 und Windows 10 in der Version 1809 aufgrund von verschwinden von Dateien nach ...

CPU, RAM, Mainboards
Spectre Update Tool für ältere PCs
Information von sabines vor 1 TagCPU, RAM, Mainboards6 Kommentare

Mit Hilfe eines Tools wird der betreffende PC permanent von einem USB Stick gestartet, der ein passendes Microcode Update ...

Windows 10
Windows 10 Oktober 2018 Update: Es ist wieder da
Tipp von Bowsette vor 1 TagWindows 101 Kommentar

Ein neuer Versuch von Microsoft das Windows 10 Oktober 2018 Update, auch bekannt als 1809, an den Mann zu ...

Windows Server

Windows Server 2016: Achtung - ab heute gibt es wieder Express Updates

Information von kgborn vor 1 TagWindows Server1 Kommentar

Kurze Info für Administratoren, die Windows Server 2016 per WSUS/SCCM mit Updates betanken. Ab heute gibt es für Windows ...

Heiß diskutierte Inhalte
Windows Server
Windows Server 2016 Lizenzierung - 7 Hyper V VMs
Frage von staybbWindows Server18 Kommentare

Hallo zusammen, wir haben zwei HP Server gekauft mit jeweils pro Server 2 CPUs à 10 Cores. Also insgesamt ...

Batch & Shell
Ordnernamen mit String aus Ziffern-Zahlenkombination erstellen
Frage von MmarKussBatch & Shell16 Kommentare

Hallo zusammen, ich habe ein etwas komplexeres Problem, welches ich selbst mittels einer Batch-Datei lösen will / muss, da ...

Windows Server
Lohnt sich eine Domäne für uns?
Frage von BowsetteWindows Server12 Kommentare

Hallo, ich arbeite in einem kleinen Unternehmen mit mehr als 5 und weniger als 10 Mitarbeitern, also Small Business ...

Windows Server
AD Password Reminder Mail
Frage von TeutoneWindows Server10 Kommentare

Hallo liebe Leute, ich habe vor langer Zeit einmal ein Password Reminder Mail Script erstellt, welches nun nicht mehr ...