Toon posts:

Permissions instellen met vbs script

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ben 2 uur aan het zoeken geweest op internet en mijn "script gui cd" maar vind nergens een voorbeeld voor het het instellen van de security op ntfs files en folders.

Ik wil graag via vbs script

Ben bezig met scripts te maken voor het aanmaken van gebruikers wat verder goed lukt.


var01 = WScript.Arguments.Item(0)
var02 = WScript.Arguments.Item(1)

'AANMAKEN GEBRUIKER

Set objOU = GetObject("LDAP://OU="& var02 &",ou=sso,dc=domein,dc=org")
Set objUser = objOU.Create("User", "cn="& var01 &"")
objUser.Put "sAmAccountName", ""& var01 &""
objUser.Put "profilepath","d:\profile\"& var01 &""
objUser.Put "scriptpath","Gebruiker.bat"
objUser.Put "userPrincipalName",""& var01 &""
objUser.Put "homedrive","H"
objUser.Put "homedirectory","\\server01\users$\%username%$"
objUser.SetInfo


'ÁKTIEF MAKEN GEBRUIKER

Const ADS_UF_ACCOUNTDISABLE = 2

Set objUser = GetObject("LDAP://cn="& var01 &",OU="& var02 &",ou=sso,dc=domein,dc=org")
intUAC = objUser.Get("userAccountControl")

If intUAC AND ADS_UF_ACCOUNTDISABLE Then
objUser.Put "userAccountControl", intUAC XOR ADS_UF_ACCOUNTDISABLE
objUser.SetInfo
End If

  • Brahiewahiewa
  • Registratie: Oktober 2001
  • Laatst online: 30-09-2022

Brahiewahiewa

boelkloedig

Als je 't persé zelf via script wilt zetten, moet je op zoek gaan naar XCACLS.VBS; da's een script van 153695 bytes wat microsoft ooit heeft uitgebracht om een bug in XCACLS.EXE tijdelijk te adresseren. Als je dat script te pakken krijgt zul je zien dat het zetten can permissies bere ingewikkeld is: SIDs, ACLs en ACEs ophalen, converteren naar minstens drie verschillende formats, op de juiste wijze sorteren en dan weer converteren en wegschrijven.
Om je script kleiner te houden dan 4000 regels, zou ik er voor kiezen om XCACLS.EXE aan te roepen
code:
1
2
Set WshShell = WScript.CreateObject( "WScript.Shell" )
Set objExec = WSHShell.exec ( "XCACLS \\server01\user$\" & var01 & " /G " & var01 & ": F;F" )
En dan nog wat dingetjes doen om eventuele errors af te vangen, maar die mag je zelf uitzoeken.

QnJhaGlld2FoaWV3YQ==


Verwijderd

Topicstarter
Hartelijk bedankt, was helemaal verkeerd aan het zoeken, kan nu weer verder.

;) _/-\o_

  • paulhekje
  • Registratie: Maart 2001
  • Laatst online: 30-04 18:30
xcacls.exe heeft wat nadelen op windows 2000: inheritance settings worden niet altijd goed geplaatst. Als je na aanpassing met xcacls de security settings opvraagt krijg je dan foutmeldingen.
(maar misschien werkt de vbs-versie wel goed)
Een tool die in ieder geval goed werkt is setacl.exe:
http://setacl.sourceforge.net/

[ Voor 17% gewijzigd door paulhekje op 08-03-2004 08:59 ]

|=|=|=||=|=|=||=|=|=| http://www.vanwijck.com |=|=|=||=|=|=||=|=|=||=|=|=||=|=|=||=|=|=||=|=|=|


  • Brahiewahiewa
  • Registratie: Oktober 2001
  • Laatst online: 30-09-2022

Brahiewahiewa

boelkloedig

paulhekje schreef op 08 maart 2004 @ 08:00:
xcacls.exe heeft wat nadelen op windows 2000: inheritance settings worden niet altijd goed geplaatst. Als je na aanpassing met xcacls de security settings opvraagt krijg je dan foutmeldingen.
(maar misschien werkt de vbs-versie wel goed)
[...]
Daar is inderdaad tijdelijk die xcacls.vbs voor uitgebracht. De versie van xcacls.exe uit de resource kit van windows 2003 doet 't wel goed en ook op windows 2000 en NT4
paulhekje schreef op 08 maart 2004 @ 08:00:
Een tool die in ieder geval goed werkt is setacl.exe:
http://setacl.sourceforge.net/
Het leuke van deze tool is dat er een setacl.ocx bij zit; zo kun je 'm rechtstreeks aanroepen vanuit VBScript. Je moet dan wel die setacl.ocx registreren (regsrv32 setacl.ocx) wat meteen het nadeel aangeeft: je script werkt dan alleen op machines waar die setacl.ocx geregistreerd is.

[ Voor 32% gewijzigd door Brahiewahiewa op 08-03-2004 09:17 . Reden: toevoeg ]

QnJhaGlld2FoaWV3YQ==


Verwijderd

Topicstarter
SetACL.exe -on "C:\my dir" -ot file -actn ace
-ace "n:domain1\user1;p:change"

Sets 'change' permissions on the directory 'c:\my dir' for user 'user1' in domain 'domain1'.

Hoe krijg ik dit in een vbs script ?

Verwijderd

Scripting doen we in Windows Operated Systems :)

PNS -> WOS
Pagina: 1