Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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

User Account erstellen, User umbenennen, Passwort setzten...

Frage Entwicklung VB for Applications

Mitglied: caschopl

caschopl (Level 1) - Jetzt verbinden

03.08.2012, aktualisiert 11:18 Uhr, 4900 Aufrufe, 9 Kommentare

Hallo,
ich weiß dass sind gleich viele Dinge auf einmal. Aber ich würde das eben gerne in einem Scrip lösen, wenn möglich.
Also jetzt nochmal langsam....

1) Ich möchte einen lokalen Benutzer erstellen und das Passwort setzten.
2) Dann möchte ich den lokalen Administrator umbenennen und das Passwort ebenfalls ändern.
3) und dann soll noch ein AD-Gruppe der Gruppe der lokalen Administratoren hinzugefügt werden.

1 und 2 funktionieren soweit ganz gut, aber ich weiß natürlich, dass es ein Sicherheitsrisiko ist, ein Passwort in ein VBS zu schreiben. Hier wäre ich über eine Tipp froh, ob es soetwas wie ne PW Abfrage gibt.....

mit Punkt 3 habe ich leider so mein Problem, es will irgendwie nicht klappen.

Schon jetzt danke für lesen und für evtl Tipps und Lösungen.

Carsten


Hier mal mein Script:


Const ADS_UF_DONT_EXPIRE_PASSWD = &h10000

strUser = "Support"
strPass = "XXXXXXX"

sOldUser = "Administrator"
sNewUser = "Master"

Set WshNetwork = WScript.CreateObject("WScript.Network")

' create Support User
strComputer = WshNetwork.ComputerName
Set colAccounts = GetObject("WinNT://" & strComputer & "")
Set objUser = colAccounts.Create("user", strUser)
objUser.SetPassword strPass
objUser.SetInfo
Set objGroup = GetObject("WinNT://" & strComputer & "/Administrators,group")
Set objUser = GetObject("WinNT://" & strComputer & "/" & strUser & ",user")
objGroup.Add(objUser.ADsPath)

objUserFlags = objUser.Get("UserFlags")
objPasswordExpirationFlag = objUserFlags OR ADS_UF_DONT_EXPIRE_PASSWD
objUser.Put "userFlags", objPasswordExpirationFlag
objUser.SetInfo

' rename Administrator into Master

sComputerName = "." ' use "." for local computer
Set colUsers = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" _
& sComputerName & "\root\cimv2").ExecQuery _
("select Name from Win32_UserAccount where name = '" & sOldUser & "'")
If colUsers.Count > 0 Then
For Each oUser In colUsers
iRC = oUser.Rename(sNewUser)
If iRC = 0 Then
WScript.Echo "User renamed"
Else
WScript.Echo "Rename method returned ERROR # " & iRC
End if
Next
Else
WScript.Echo "No user found"
End If

'Passwort von Master (lokaler Admin) ändern
Set objUser = GetObject("WinNT://" & strComputer & "/Master, user")
objUser.SetPassword "XXXXXXX"
objUser.SetInfo

'Gruppe der lokalen Admingruppe hinzufügen
Set objUser = GetObject("WinNT://" & strComputer & "Domain\Gruppe, Administratoren")


Set oShell = WScript.CreateObject("WScript.Shell")
WScript.Echo "Done!"
Mitglied: Penny.Cilin
03.08.2012 um 11:27 Uhr
Halli Hallo Hallöle,

zu Punkt 3: Dies tut ein simpler Einzeiler auf der Commandshell:
net group <administratorengruppenname> /ADD <hinzufügende gruppe> /DOMAIN 

Gruss Penny


P.S. Auch die anderen beiden Punkte könnte man mit einem Batch erledigen, man kann es auch mittels VB-Skript oder Powershell machen.
Bitte warten ..
Mitglied: caschopl
03.08.2012 um 11:30 Uhr
Hi Penny,
den simpler Einzeiler auf der Commandshell kenne ich,
aber ich würde das ganze eben gerne automatisiert in einer Batch oder per VB machen.

Gruss C.
Bitte warten ..
Mitglied: Penny.Cilin
03.08.2012 um 11:39 Uhr
Ja und, Du kannst doch den simplen Einzeiler in eine Batch verpacken. Dun musst nur die Platzhalter entsprechend anpassen, evtl. mit set /p <variable> und dann ab die Post.

Ob in dem Skript nun VB-Code, Powershell, oder Commands drin stehen ist doch egal. Hauptsache es tut was es soll.


Gruss Penny.
Bitte warten ..
Mitglied: caschopl
03.08.2012 um 11:44 Uhr
Aber wie ist das mit dem erstellen und umbenennen der User und die Sache mit dem Passwort?
Sorry bin nicht so fit im batch bzw. script erstellen. Habe das obige Script hier gefunden.

Gruss C.
Bitte warten ..
Mitglied: Penny.Cilin
03.08.2012 um 12:44 Uhr
Also das Passwort kann man setzen mit
 net user <benutzername> <password> /DOMAIN 
Wobei benutzername und passwort die platzhalter sind, und sinngemäß ersetzt werden müssen.
Der Parameter /DOMAIN benötigst du, wenn es sich um eine Domäne handelt.

Dieser befehl erstellt auch ein Benutzerkonto und vergibt auch gleich das Passwort.

Schau Dir mal den Befehl net help user an.


Man schon sehr viel via Commandline und Batches machen. Unter anderem Bastla und einige weitere haben da schon sehr viel geholfen. Schau mal hier rein.

Hier findest Du einiges, was Du verwenden kannst.


Gruss Penny.
Bitte warten ..
Mitglied: Carsten84
03.08.2012 um 14:16 Uhr
Punkt 3 kannst du auch mit einer GPO erschlagen....
Bitte warten ..
Mitglied: caschopl
03.08.2012 um 15:05 Uhr
Hallo C Sebald,
ich weiß. Aber wie schon gesagt, Script wäre mir lieber. Und dann ist ja auch noch die Passwort Geschichte.

Trotzdem Danke.

C.
Bitte warten ..
Mitglied: DerWoWusste
03.08.2012 um 16:15 Uhr
Hi.

Erzähl mal, wie das Skript gestartet werden soll, damit klar wird
A) warum das Kennwort ein Problem darstellt
B) warum das Skript den GPOs vorgezogen wird (GPOs machen das in Sekunden und sicher - sowohl 1,2 als auch 3).

PS: net group und net localgroup sind etwas Verschiedenes.
Bitte warten ..
Mitglied: caschopl
03.08.2012, aktualisiert um 17:22 Uhr
Hi,
also das ganze ist ein Prozess mit mehreren Schritten und einer davon ist eben das erstellen und umbenennen der User mit PW ändern und dann das hinzufügen der Gruppen.

zu a) weil das PW im Skript oder der Batch in Klarschrift seht......

vielleicht noch etwas zum Hintergrund.
Unsere Superuser (in verschiedenen Ländern) gehen uns bei der Installation von neuer Hardware zur Hand. Diese wissen aber nur das "Support" User Passwort und nicht das PW vom Administrator (dann Master), daher sollte das natürlich nicht in einem Scrip stehen.....

Wir sind hier noch am Anfang mit AD, GPO´s, Installationsabläufe, etc, da wir von Novell umstellen und dort vieles über ZEN geregelt wurde müssen wir einiges umplanen. Bestimmt gibt es für mein Problem eine einfache Lösung mit GPO´s aber die müssen wir erst noch für uns finden......

Gruß
C.
Bitte warten ..
Neuester Wissensbeitrag
Ähnliche Inhalte
Server
gelöst Ubuntu: ftp user erstellen und Zugriff auf Webseite geben (7)

Frage von laster zum Thema Server ...

Netzwerkgrundlagen
IPsec - .conf und .secret erstellen aus Gruppe und User (20)

Frage von MaxMLe zum Thema Netzwerkgrundlagen ...

Windows Server
MSSQL 2012 User erstellen mit gewissen Berechtigungen (1)

Frage von rabo001 zum Thema Windows Server ...

Heiß diskutierte Inhalte
Hardware
Laptop ins Salzwasser gefallen (18)

Frage von Marcel94 zum Thema Hardware ...

Switche und Hubs
LAG zwischen Cisco SG300 und Dlink DGS1100 herstellen - wie? (13)

Frage von White-Rabbit2 zum Thema Switche und Hubs ...

Hardware
Lenovo Yoga 500 über angeschlossene USB Tastatur booten (13)

Frage von thomasreischer zum Thema Hardware ...

CPU, RAM, Mainboards
Hardware Fragen (12)

Frage von xaver-2 zum Thema CPU, RAM, Mainboards ...