Jump to content

Erstellung von Benutzerverzeichnissen


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Recommended Posts

Hallo da draußen!

 

Ich suche eine Möglichkeit, freigegebene Windowsverzeichnisse für Domänenbenutzer automatisch anzulegen.

 

Das soll folgendermaßen aussehen: Jeder kennt ja die Möglichkeit beim Anlegen eines ADS-Users autoamtisch ein freigegebenes Homeverzeichnis erzeugen zu lassen, auf das der Benutzer exklusiven Zugriff hat. Ich würde gerne auf ähnliche Weise für jeden neuen Benutzer ein weiteres Verzeichnis erzeugen lassen, das ebenfalls automatisch freigegeben wird und auf das der Benutzer exklusiven Schreibzugriff hat und auf das alle Benutzer einer bestimmten Gruppe lesenden Zugriff haben.

 

Ich denke es würde reichen, wenn ich wüßte, wie man beim Anlegen eines Benutzers ein Skript ausführen kann. Hinter die einzelnen Anweisungen käme ich dann schon :-)

Link to comment
Original geschrieben von olei

Da fällt mir so spontan nur etwas fürs login-Script ein:

 

if not exist x:\verzeichnisname\%username% mkdir x:\verzeichnisname\%username%

...

 

Möglicherweise gibts noch elegantere Lösungen?

 

Naja, Eleganz ist relativ. Hauptsache es funktioniert. Aber würde das hier überhaupt funktionieren? Immerhin werden Login-Skripts doch mit den Rechten des Benutzers ausgeführt und der dürfte das Verzeichnis selbst doch garnicht anlegen (sondern nur der Administrator).

Link to comment

Hallo,

 

wird vielleicht soetwas gesucht?

 



c:
cd\

set homedrive=d:
set profildrive=d:

set filename=c:\createuser.txt
:loop
set /a skip+=1
echo %skip%
call :testeof
call :works
rem pause
goto loop


:testeof
for /f "tokens=1 skip=%skip% delims=;" %%a in (%filename%) do set end=%%a & goto out
:out
if %end% equ Dateiende exit
goto :eof




:works
call :fetchline
call :createname
call :creategroup
call :createdir
call :createuser
call :credentials
call :setpassw
goto :eof

:createname
set username=%surname%%firstname:~0,1%
set newuser=%username: =%
set fullname=%surname%,%firstname%
set fullname=%fullname: =%
set comment=%group%
set password=%password:	=%
set password=%password: =%
set newpassw=%password%
goto :eof

:fetchline
for /f "tokens=1-4 skip=%skip% delims=;" %%a in (%filename%) do (
set group=%%a
set firstname=%%b
set surname=%%c 
set password=%%d
goto :eof
)

:creategroup
if not exist d:\%group% md d:\%group%
net group %group%
if errorlevel 1 net group %group% /add
goto :eof

:createdir
if not exist %profildrive%\%group%\%newuser%Profil md %profildrive%\%group%\%newuser%Profil
if not exist %homedrive%\%group%\%newuser%Home md %homedrive%\%group%\%newuser%Home
goto :eof

:createuser
net user %newuser%
if %errorlevel%"==0" goto :eof

net user %newuser% /add
net user %newuser% /fullname:%fullname% 
net user %newuser% /comment:%comment%
net user %newuser% /active:yes
net user %newuser% /expires:never
net user %newuser% /profilepath:\\1fs-lubeca\%newuser%profil$
net user %newuser% /scriptpath:login m
net user %newuser% /homedir:\\1fs-lubeca\%group%
net user %newuser% /passwordchg:yes
net user %newuser% /passwordreq:no

echo | net user %newuser% *


rem pause
net group %group% %newuser% /add
rem net group LT-NLL %newuser% /add
rem net group Benutzer %newuser% /add
rem pause
goto :eof

:credentials
net share %newuser%profil$=d:\%group%\%newuser%Profil /Y
rem pause
net share %newuser%home$=d:\%group%\%newuser%home /Y
cacls d:\%group%\%newuser%Profil /e /g %newuser%:f
cacls d:\%group%\%newuser%Home /e /g %newuser%:f
cacls d:\%group%\%newuser%Profil /e /g Administratoren:f
cacls d:\%group%\%newuser%Home /e /g Administratoren:f
cacls d:\%group%\%newuser%Home /e /g Dozenten:f
cacls d:\%group%\%newuser%Profil /e /r %group%
cacls d:\%group%\%newuser%Home /e /r %group%

rem pause
goto :eof

:setpassw
echo | net user %newuser% %newpassw%
goto :eof

Link to comment
Original geschrieben von olei

Soweit hatte ich gar nicht gedacht. :rolleyes:

 

Könnte man nicht ein Verzeichnis erstellen, in dem der Ersteller Vollzugriff und die Authentifizierten Benutzer Lesezugriff haben und darin die User-Ordner anlegen?

 

Könnte funktionieren. Dann wäre allerdings die Möglichkeit gegeben, daß der Benutzer beliebige weitere Verzeichnisse erzeugt. Und das würde ich doch unbedingt verhindern wollen.

Link to comment

@Jordy:

 

Die Geschichte mit den Zugriffsrechten im übergeordneten Verzeichnis funktioniert nicht - zumindest habe ich das nicht hinbekommen. Die scriptbasierte Lösung ist eindeutig besser - vielen Dank an lefg :) ich habe mir den Script erstmal auf "Halde" gelegt, falls ich mal Verlegenheit kommen sollte, ein ähnliches Problem lösen zu müssen.

Link to comment

Hi,

 

habe deine Frage noch nicht gesehen und ein ähnliches Problem.

 

Das erzeugen der Homedirs ist einfacher und ohne script zu erreichen.

Im AD rechtsklick auf den User. Anschliessend auf Profile.

Hier kannst du das loginscript und das Home angeben.

 

In der Vorbereitung musst du ein Verzeichnis schaffen.

Bsp: d:\homedirs dies freigeben und mit den nötigen Rechten versehen -- und genau da habe ich mein Problem --

 

Anschliessend in die Zeile für Basisverzeichnis den Pfad \\homedirs\%username% eingeben. Nach übernehmen wird hier der Username automatisch eingesetzt (am besten du machst dir einen Dummyuser mit allen Einstellungen zum kopieren für neue)

 

Das Homedir für den User wird automatisch beim ersten login des users angelegt.

 

Jetzt zu meinem Problem mit den Berechtigungen. In den MS Wälzern ist nur davon die rede unter Berechtigungen der Freigabe Jeder durch Domänenbenutzer zu ersetzen und auf Vollzugriff zu stellen.

 

Leider haut das bei mir nicht immer hin.

Fakt ist das der User auf alle Homedirs zugriff hat und das ist falsch.

Ich kann zwar von Hand die Vererbung anschl. entfernen, aber hier habe ich im Vorfeld einen Denkfehler.

 

Aber welchen, doch dein Problem dürfte gelöst sein.

 

 

Andreas

Link to comment
Original geschrieben von andipc

Leider haut das bei mir nicht immer hin.

Fakt ist das der User auf alle Homedirs zugriff hat und das ist falsch.

Ich kann zwar von Hand die Vererbung anschl. entfernen, aber hier habe ich im Vorfeld einen Denkfehler.

 

Aber welchen, doch dein Problem dürfte gelöst sein.

 

Hm. Also, bei mir werden die Rechte auf die Home-Verzeichnis beim Anlegen des Homes (durch AD) automatisch gesetzt. Wenn das Verzeichnis schon existiert, wird nachgefragt, ob die Rechte angepaßt werden sollen. Wenn die Rechte auf deine Homes also nicht stimmen, hast du sie nachträglich überschrieben. Und dann mußt du sie per Hand wieder korrigieren.

 

Aber nicht daß hier Mißverständnisse Aufkommen: ich bin nach wie vior auf der Suche nach einer einfacheren Lösung für MEIN Problem :-)

Link to comment

am besten ist wenn ud auf dem server einen ordnern erstelltst mit dem usernamen, dann diesen freigibst und nur diesem user vollzugrif gibst...

 

dann erstellst du eine login.bat zum beispiel in die du dann ganz einfach das reinschreibst

 

net use ?: \\Server\username

 

das fragezeichen steht für den laufwerksbuchstaben, da kannst du jeden beliebigen eingeben, außer nartülich einen der schon verwendet wird..

 

nun speicherst du die datei am bestenin einem ordner der sich scripte nennt, den musst du freigeben und dem user lese berechtigung geben..

 

dann unter benutzer verwaltung einfach unter anmeldescript folgendes eingeben:

 

\\server\scripte\login

 

 

und nun gibt es ein laufwerk unter arbeitsplatz was mit diesem ordner auf dem server verbunden ist und nur der vollzugriff hat..

jeder andere könnte ihn so lesen noch, aber das ist ja nur eine berechtigungsfrage

 

 

so das kannst du jetzt für jeden benutzer machen. du kannst damit auch belibig viele erzeugen z.b.

 

net use k: \\Server\username

net use l: \\Server\public

net use m: \\Server\geschäftsführung

 

 

damit kann man auch bestimmten keuten bestimmte gemieinsamne ordner zuweisen..

 

mfg richman

Link to comment
Original geschrieben von richman

so das kannst du jetzt für jeden benutzer machen. du kannst damit auch belibig viele erzeugen z.b.

 

net use k: \\Server\username

net use l: \\Server\public

net use m: \\Server\geschäftsführung

 

 

damit kann man auch bestimmten keuten bestimmte gemieinsamne ordner zuweisen..

 

mfg richman

 

Klar. Aber das war garnicht das Problem. Es ging um die Frage, wie mand das Verzeichnis automatisch ERZEUGEN und mit Rechten versehen kann. Das Verfügbarmachen per Netzlaufwerk ist im Skript ist mir schon bekannt.

Link to comment
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...