dieboxershort
Goto Top

über CMD einen Local Benutzer anlegen Passwort darf nicht geändert werden und läft nie aus

ich möchte über CMD einen neune lokalen Benutzer anlegen, der in die Administors-Gruppe eingetragen wird und sein Passwort nicht verändern darf und das Passwort nie abläuft.

Hey,

also ich möchte über CMD einen neune lokalen Benutzer anlegen, der in die Administors-Gruppe eingetragen wird und sein Passwort nicht verändern darf und das Passwort nie abläuft.


Habe mir schon mal ein kleine Datei zurecht gelegt:

net user XXXX-admin 1234 /add /comment:"neune admin anlegen" /fullname:"XXXX-admin" /expires:NEVER /Passwordchg:no
net localgroup "Administrators" "PSIS-admin" /add


Das funktioniert soweit auch bloß der Hacken bei "Passwort never expires" wird nicht gesetzt.


Hat jemand eine Idee?

Danke schonmal im vorraus ;)

Content-Key: 160994

Url: https://administrator.de/contentid/160994

Printed on: April 18, 2024 at 08:04 o'clock

Member: Biber
Biber Feb 17, 2011 at 10:06:43 (UTC)
Goto Top
Moin DatBoxershort,

willkommen im Forum.
Über CMD und mit net.exe kannst du nur unter Windows Benutzer anlegen, nicht unter Linux & Unix.
Vielleicht liegt es daran.
Abgesehen davon bezieht sich das "/expires:NEVER" auf den Account, nicht auf das Passwort.
Falls du so etwas mal unter Windows machen musst. Über die Suchfunktion findest du Antwort.

Und in den FAQ steht, was wir von "Danke schonmal im vorraus" halten.

Grüße
Biber
Member: DieBoxershort
DieBoxershort Feb 17, 2011 at 10:30:31 (UTC)
Goto Top
Es ist ein Windows Rechner.
Ok gibt es ein Befehl womit ich einstellen kann dass das Passowrt nie abläuft?

Gruß
Member: Wuckel
Wuckel Feb 17, 2011 at 10:34:26 (UTC)
Goto Top
hallo,

versuch es mal mit dem VBS script
über CMD kenne ich keine möglichkeiten


Const ADS_UF_DONT_EXPIRE_PASSWD = &H10000

Set wshshell = CreateObject("WScript.Shell")
Set ObjEnv = WshShell.Environment("Process")
COMPUTERNAME = ObjEnv("COMPUTERNAME")

Set objUser = GetObject("WinNT://" & Computername & "/BENUTZERNAME")

If Not objUser.UserFlags AND ADS_UF_DONT_EXPIRE_PASSWD Then
objPasswordNeverExpireFlag = objUser.UserFlags XOR ADS_UF_DONT_EXPIRE_PASSWD
objUser.Put "userFlags", objPasswordNeverExpireFlag
objUser.SetInfo
End If


Grüße
Member: Skyemugen
Skyemugen Feb 17, 2011 at 10:52:04 (UTC)
Goto Top
Zitat von @DieBoxershort:
Es ist ein Windows Rechner.

Aloha,

nun dann warst du wohl unter Tabletten *g* als du den Bereich
Startseite > Betriebssysteme > Linux & Unix > Userverwaltung > Frage
ausgewählt hast. Aber macht ja nichts, da unser Biberle schonmal die FAQ erwähnt hat, wirst du beim Lesen so oder so dafür stoßen.

Aber da mir zum Thema selbst auch nichts weiter einfällt als der Thread bei google (klick mich), verabschiede ich mich auch erstmal aus dem Thread

greetz André
Member: bastla
bastla Feb 17, 2011 at 12:08:29 (UTC)
Goto Top
Hallo DieBoxershort und willkommen im Forum!

Nur mal so nebenbei eine Frage: Wie willst Du einen Admin davon abhalten, die Einstellungen seines Kontos ("darf Passwort nicht ändern") zu bearbeiten?

[OT]
Und in den FAQ steht, was wir von "Danke schonmal im vorraus" halten.
... und das sogar, wenn's nur mit einem "r" geschrieben wäre ... face-wink
[/OT]

Grüße
bastla
Member: Biber
Biber Feb 17, 2011 at 13:20:45 (UTC)
Goto Top
Und auch von mir eine Folgefrage:

Wenn denn das Passwort nicht geändert werden darf laut Parameter /Passwordchg:no ....

Wieso sollten die Redmonder PraktikantInnen so deppert sein, in diesem Fall automatisch ein Passwort-Ablaufdatum von beispielsweise "17.Frühling 2012" als Default zu setzen?

Grüße
Biber
Member: DieBoxershort
DieBoxershort Feb 17, 2011 at 13:23:30 (UTC)
Goto Top
mit VBS-script habe ich noch nie geschaft probier das aber gern mal aus.

So habe dazu aber 1-2 Fragen.

In der Zeile: "COMPUTERNAME = ObjEnv("COMPUTERNAME")" soll ich da meinen Computer namen einfügen genau so wie beim :"Set objUser = GetObject("WinNT:" & Computername & "/BENUTZERNAME") den Computername und den Benutzername umden es sich handelt?

bei mir würde das Script dann ja praktisch so aussehen :

Const ADS_UF_DONT_EXPIRE_PASSWD = &H10000

Set wshshell = CreateObject("WScript.Shell")
Set ObjEnv = WshShell.Environment("Process")
PC1 = ObjEnv("PC1")

Set objUser = GetObject("WinNT:
" & PC1 & "/XXXX-admine")

If Not objUser.UserFlags AND ADS_UF_DONT_EXPIRE_PASSWD Then
objPasswordNeverExpireFlag = objUser.UserFlags XOR ADS_UF_DONT_EXPIRE_PASSWD
objUser.Put "userFlags", objPasswordNeverExpireFlag
objUser.SetInfo
End If


"
Member: bastla
bastla Feb 17, 2011 at 13:32:21 (UTC)
Goto Top
Hallo DieBoxershort!
soll ich da meinen Computer namen einfügen genau so wie beim ...
Genauso wenig wie beim ...

Das Script holt sich den Namen selbst und verwendet ihn dann auch - was allerdings unter Luxus fällt, da auch schon
Const ADS_UF_DONT_EXPIRE_PASSWD = &H10000
Benutzer = "XXXX-admine" 'nur hier Anpassung vornehmen  
Set objUser = GetObject("WinNT://./" & Benutzer)  

If Not objUser.UserFlags AND ADS_UF_DONT_EXPIRE_PASSWD Then
    objPasswordNeverExpireFlag = objUser.UserFlags XOR ADS_UF_DONT_EXPIRE_PASSWD
    objUser.Put "userFlags", objPasswordNeverExpireFlag  
    objUser.SetInfo
End If
genügen sollte ...

Grüße
bastla

[Edit]
Set objUser = GetObject("WinNT://" & Benutzer)
war dann doch etwas sehr kurz - ist oben ergänzt
[/Edit]