Jump to content

Benutzergruppen anlegen / Remote freigabe


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

Empfohlene Beiträge

Hallo zusammen,

 

ich habe ein problem und konnte mit der sufu leider auch nichts finden.

 

Zuerst mal im allgemeinen: ich soll ein script erstellen, dass einen ordner erstellt, diesen als share freigibt ( der dann über ein netzlaufwerk erreichbar sein soll), eine benutzergruppe anlegt, die auf diesen ordner zugriff hat. das ganze soll auf einem adminserver remote ausgeführt werden.

 

das problem bei mir liegt im moment darin, dass ich nicht weiß wie genau ich die benutzergruppen erstellen kann. welche scriptsprache eignet sich am besten dafür ? ( vb, batch oder powershell wären gut ) hab leider auch beim googeln dazu nix gefunden.

 

außerdem klappt die freigabe des ordners bei mir über script nur lokal leider nicht remote und ich weiß nicht woran es liegen kann ( an berechtigungen imho nicht).

 

danke schonmal für eure hilfe

 

gruß

Link zu diesem Kommentar

also die freigabe an sich habe ich schon(powershell) läuft wenn ichs lokal freigebe aber sobald ich es remote ausführe macht ers net ( kleine anmerkung : das script schlummert seit 2 monaten vor sich hin und ist seit heute erst wieder aktuell geworden bin also auch nochnicht so auf der höhe ^^ )

 

hier mein bisheriger powershell code :

 

$strPfad = "\\evo00257\c$\daten\900_directory_name"

 

$Freigabedoll = "$"

 

$Comment = "Hier koennte ihre werbung stehen"

 

$strFreigabename ="900_directory_name$"

 

$Access = $Null

 

new-item $strPfad -Type "Directory"

 

$objFreigabe = [WmiClass]'Win32_Share'

 

$objErg = $objFreigabe.Create(

$strPfad,

$strFreigabename,

0, 10, $Comment,"",$Access

)

 

 

 

 

 

 

write-output $strFreigabename

write-output $objErg

write-output "ENDE"

Link zu diesem Kommentar

Hallo,

 

ich mache das mit "DOS"-Befehlen in einer Batch, ausgeführt wird die auf dem 1.DC der Domäne.

 

set filename=%1
set filename=%filename:"=%
set EduGroup=%filename:~15,-4%

for /f "tokens=1 delims=\" %%i in ("%EduGroup%") do set Edu=%%i

for /f "tokens=2 delims=\" %%i in ("%EduGroup%") do set Group=%%i

set domain=DC=1Lubeca,DC=loc

:create OU for Education
dsadd OU "OU=%Edu%,%domain%"

:create OU for Group
dsadd OU "OU=%Group%,OU=%Edu%,%domain%"


:create sec Group for Education
dsadd Group "CN=%Edu%,OU=%Edu%,%domain%"

:create sec Group for user
dsadd Group "CN=%Group%,OU=%Group%,OU=%Edu%,%domain%"

dsmod group "CN=%Edu%,OU=%Edu%,%domain%" -addmbr "CN=%Group%,OU=%Group%,OU=%Edu%,%domain%" 

set ProfilDrive=e:
set HomeDrive=e:

:GroupHome
set GroupHome=%HomeDrive%\%Edu%\%Group%

if not exist %GroupHome% md %GroupHome%
net share %Group%=%GroupHome% /grant:Jeder,full
cacls %GroupHome% /e /g %Group%:f
cacls %GroupHome% /e /g Dozenten:f
rem pause

if not exist %GroupHome%\1Aufgaben md %GroupHome%\1Aufgaben
cacls %GroupHome%\1Aufgaben /e /r %Group%
cacls %GroupHome%\1Aufgaben /e /g %Group%:r
cacls %GroupHome%\1Aufgaben /e /g Dozenten:f
rem pause

if not exist %GroupHome%\1Austausch md %GroupHome%\1Austausch
cacls %GroupHome%\1Austausch /e /g %Group%:f
cacls %GroupHome%\1Austausch /e /g Dozenten:f
rem pause


:loop
set /a skip+=1
echo %skip%
call :testeof
call :works
goto loop


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


:works
call :fetchline
call :CreateCanditateName
call :CreateUserFolder
call :CreateUser
call :Credentials
rem pause
goto :eof

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

:CreateCanditateName
set firstname=%firstname:ß=ss%
set firstname=%firstname:ä=ae%
set firstname=%firstname:ü=ue%
set firstname=%firstname:ö=oe%
set firstname=%firstname:Ä=Ae%
set firstname=%firstname:Ü=Ue%
set firstname=%firstname:Ö=Oe%
set firstname=%firstname: =%

set surname=%surname:ß=ss%
set surname=%surname:ä=ae%
set surname=%surname:ü=ue%
set surname=%surname:ö=oe%
set surname=%surname:Ä=Ae%
set surname=%surname:Ü=Ue%
set surname=%surname:Ö=Oe%
set surname=%surname: =%

set password=%password:ß=ss%
set password=%password:ä=ae%
set password=%password:ü=ue%
set password=%password:ö=oe%
set password=%password:Ä=Ae%
set password=%password:Ü=Ue%
set password=%password:Ö=oe%

set username=%surname%%firstname:~0,1%
set Candidate=%username: =%
set password=%password:	=%

set password=%firstname%



rem for /f "tokens=*" %%a in ('dsquery user -name %candidate% -o rdn') do if %%~a equ %candidate% set candidate=%candidate%1 
set candidate=%candidate: =%

rem echo %candidate%

rem pause

goto :eof

:CreateUserFolder
set UserProfil=%ProfilDrive%\%Edu%\%Group%\%Candidate%Profil
set UserHome=%HomeDrive%\%Edu%\%Group%\%Candidate%Home
if not exist %UserProfil% md %UserProfil%
if not exist %UserHome% md %UserHome%
rem pause
goto :eof

Link zu diesem Kommentar

Das gehört auch noch dazu.

 

:CreateUser
set UserString=CN=%Candidate%,OU=%Group%,OU=%Edu%,%domain%
dsadd user %UserString%
dsmod user %UserString% -pwd %password%
dsmod user %UserString% -fn %firstname%
dsmod user %UserString% -ln %surname%
dsmod user %UserString% -display %surname%,%firstname%
dsmod user %UserString% -disabled no
dsmod user %UserString% -pwdneverexpires yes
dsmod user %UserString% -profile \\%computername%\%Group%\%Candidate%Profil
dsmod user %UserString% -loscr login
dsmod user %UserString% -hmdir ""
dsmod user %UserString% -hmdrv ""
dsmod user %UserString% -canchpwd yes
dsmod user %UserString% -mustchpwd yes

set SecGroupString="CN=%Group%,OU=%Group%,OU=%Edu%,%domain%" 

dsmod group %SecGroupString% -addmbr %UserString%

rem pause
goto :eof

:Credentials
cacls %UserProfil% /e /g %Candidate%:f
cacls %UserHome% /e /g %Candidate%:f
cacls %UserProfil%\* /e /g %Candidate%:f
cacls %UserHome%\* /e /g %Candidate%:f
cacls %UserProfil% /e /g Dozenten:f
cacls %UserHome% /e /g Dozenten:f
cacls %UserProfil%\* /e /g Dozenten:f
cacls %UserHome%\* /e /g Dozenten:f
cacls %UserProfil% /e /r %Group%
cacls %UserHome% /e /r %Group%
cacls %UserProfil%\* /e /r %Group%
cacls %UserHome%\* /e /r %Group%
cacls %UserProfil% /e /r Jeder
cacls %UserHome% /e /r Jeder
subinacl /subdirectories %UserProfil% /setowner=%Candidate%
subinacl /subdirectories %UserHome% /setowner=%Candidate%
rem pause
goto :eof

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

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...