Avatar billede kennith Nybegynder
13. december 2005 - 22:25 Der er 31 kommentarer og
1 løsning

Sæt rettighedder på hjemme mappen

Dette er en vidre bygning af http://www.eksperten.dk/spm/671836. Når brugernes hjemmebibliotek bliver oprettet skulle det gerne være sådan at det kun er brugeren selv og admin der har lov at kigge i den.
Avatar billede killerclown Nybegynder
13. december 2005 - 22:45 #1
Så er vi der igen gamle dreng :o)

1 spm :

Bliver scriptet afviklet fra en Xp maskine ?
Avatar billede kennith Nybegynder
13. december 2005 - 22:49 #2
Nope det vil blive afviklet fra en server (2003)
Avatar billede killerclown Nybegynder
13. december 2005 - 22:50 #3
ok ... Det er også i orden :o)
Ser lige på sagen
Avatar billede killerclown Nybegynder
13. december 2005 - 22:57 #4
Jeg skal lige høre dig noget andet.....
Umiddelbart burde det KUN være administratorer samt system og creatorowner, der har rettigheder på de mapper, der oprettes der.
Hvis der er flere, skal du lige fjerne domain users fra security på selve usermappen. Kan det passe, at du har users eller sådan noget stående der ?
/Killer
Avatar billede kennith Nybegynder
13. december 2005 - 22:59 #5
nu er det her kun en test server jeg har sat op men ja det har jeg
Avatar billede killerclown Nybegynder
13. december 2005 - 23:02 #6
hmmmmm ...
Det er nemmerlig ikke så godt, da mapperne, der oprettes derunder nok nedarver denne setting. Derfor kan du ikke fjerne dem.
Avatar billede kennith Nybegynder
13. december 2005 - 23:04 #7
Jeg har lige rettet det så det kun er de 3 du nævner, når jeg kører scriptet så tilføjer det selv users til de forskellige mapper
Avatar billede kennith Nybegynder
13. december 2005 - 23:06 #8
Og det er administrator der står som ejer af de ny oprettede bruger mapper
Avatar billede killerclown Nybegynder
13. december 2005 - 23:06 #9
huh ?
Selvom users ikke står på den ovenliggende mappe ?
Avatar billede kennith Nybegynder
13. december 2005 - 23:07 #10
sorry min fejl ved ikke lige hvad jeg havde fået lavet users havde sneget sig ind igen
Avatar billede killerclown Nybegynder
13. december 2005 - 23:08 #11
hehe .... Windows' veje er sommetider uransalige :p
Avatar billede kennith Nybegynder
13. december 2005 - 23:09 #12
tjaa eller også er jeg en spade *GG*
Avatar billede killerclown Nybegynder
13. december 2005 - 23:13 #13
Så kommer der lige en lidt ændret udgave af scriptet :

Læg mærke til, at vi nu instantierer shelle objektet også, så vi kan afvikle cmd kommandoer.
Desuden har jeg puttet lidt ekstra ind efter der hvor mappen dannes
Prøv den lige en gang :o)


TextXL = "c:\brugere.xls"
    Set shell = WScript.CreateObject("WScript.Shell")
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set oXL = WScript.CreateObject("EXCEL.application")
    oXL.Visible = True
    oXL.workbooks.open TextXL
    oXL.sheets("Ark1").Activate
    oXL.ActiveSheet.range("A2").Activate
    WScript.Echo  oXL.activecell.Value
    root = "dc=killerclown,dc=dk"
    oXL.activecell.offset(1, 0).Activate
    Do While oXL.activecell.Value <> ""     
        OU = oXL.activecell.offset(0, 6).Value
        Set oOU=GetObject("LDAP://OU=" & OU & "," & root)
        Set u = oOU.Create("User", "cn=" & oXL.activecell.offset(0, 1).Value & " " & oXL.activecell.offset(0, 2).Value)
        DisplayNavn = oXL.activecell.offset(0, 1).Value + " " + oXL.activecell.offset(0, 2).Value
        u.Put "sAMAccountName", oXL.activecell.offset(0, 0).Value
        u.Put "givenName", oXL.activecell.offset(0, 1).Value
        u.Put "sn", oXL.activecell.offset(0, 2).Value
        u.Put "userPrincipalName", oXL.activecell.offset(0, 0).Value & "@killerclown.dk"'UPN DOMÆNE
        u.Put "homeDrive", "Y:"
        u.Put "homeDirectory", "\\server\homedir\" & oXL.activecell.offset(0, 0).Value
        u.Put "displayName", DisplayNavn
        u.SetInfo
        U.SetPassword oXL.activecell.offset(0, 4).Value
        U.AccountDisabled = False
        u.setinfo
        dialinok = oXL.activecell.offset(0, 8).Value
        If UCase(dialinok) = "JA" Then       
            U.MsNPAllowDialin = True
            else
            U.MsNPAllowDialin = False
        End If
        U.SetInfo
        Set u = Nothing
        If Not fso.folderexists("\\poffis1\users$\" & oXL.activecell.offset(0, 0).Value) Then
        fso.createfolder("\\poffis1\users$\" & oXL.activecell.offset(0, 0).Value)
        End If
  '      WScript.Sleep 50000
'      strfjernrettighed = "%comspec% /c cacls \\poffis1\users$\" & oXL.activecell.offset(0, 0).Value & " /E /R killerclown\users"
'shell.run strfjernrettighed,0,True
strrettighed = "%comspec% /c cacls \\poffis1\users$\" & oXL.activecell.offset(0, 0).Value & " /E /G " & oXL.activecell.offset(0, 0).Value & ":F"
shell.run strrettighed,0,True

        oXL.activecell.offset(1, 0).Activate
    Loop
oXL.application.quit
Wscript.Echo    "Færdig !!!!"

strrettighed = "%comspec% /c cacls \\poffis1\users$\" & oXL.activecell.offset(0, 0).Value & " /E /G " & oXL.activecell.offset(0, 0).Value & ":F"
shell.run strrettighed,0,True


TextXL = "c:\userlist.xls"
    Set shell = WScript.CreateObject("WScript.Shell")
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set oXL = WScript.CreateObject("EXCEL.application")
    oXL.Visible = True
    oXL.workbooks.open TextXL
    oXL.sheets("Ark1").Activate
    oXL.ActiveSheet.range("A2").Activate
    WScript.Echo  oXL.activecell.Value
    root = "dc=testdom,dc=local"
    oXL.activecell.offset(1, 0).Activate
    Do While oXL.activecell.Value <> ""     
        OU = oXL.activecell.offset(0, 6).Value
        Set oOU=GetObject("LDAP://OU=" & OU & "," & root)
        Set u = oOU.Create("User", "cn=" & oXL.activecell.offset(0, 1).Value & " " & oXL.activecell.offset(0, 2).Value)
        DisplayNavn = oXL.activecell.offset(0, 1).Value + " " + oXL.activecell.offset(0, 2).Value
        u.Put "sAMAccountName", oXL.activecell.offset(0, 0).Value
        u.Put "givenName", oXL.activecell.offset(0, 1).Value
        u.Put "sn", oXL.activecell.offset(0, 2).Value
        u.Put "userPrincipalName", oXL.activecell.offset(0, 0).Value & "@testdom.local"'UPN DOMÆNE
        u.Put "homeDrive", "Y:"
        u.Put "homeDirectory", "\\server\homedir\" & oXL.activecell.offset(0, 0).Value
        u.Put "displayName", DisplayNavn
        u.SetInfo
        U.SetPassword oXL.activecell.offset(0, 4).Value
        U.AccountDisabled = False
        u.setinfo
        dialinok = oXL.activecell.offset(0, 8).Value
        If UCase(dialinok) = "JA" Then       
            U.MsNPAllowDialin = True
            else
            U.MsNPAllowDialin = False
        End If
        U.SetInfo
        Set u = Nothing
        If Not fso.folderexists("\\server\homedir\" & oXL.activecell.offset(0, 0).Value) Then
        fso.createfolder("\\server\homedir\" & oXL.activecell.offset(0, 0).Value)
        End If
        strrettighed = "%comspec% /c cacls \\server\homedir\" & oXL.activecell.offset(0, 0).Value & " /E /G " & oXL.activecell.offset(0, 0).Value & ":F"
        shell.run strrettighed,0,True
        oXL.activecell.offset(1, 0).Activate
    Loop
oXL.application.quit
Wscript.Echo    "Færdig !!!!"
Avatar billede killerclown Nybegynder
13. december 2005 - 23:13 #14
Ja, det var flot !!!
to sekunder .. kører min eget domæne samtidig :):):):)
Avatar billede killerclown Nybegynder
13. december 2005 - 23:14 #15
Der kom den så :

TextXL = "c:\userlist.xls"
    Set shell = WScript.CreateObject("WScript.Shell")
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set oXL = WScript.CreateObject("EXCEL.application")
    oXL.Visible = True
    oXL.workbooks.open TextXL
    oXL.sheets("Ark1").Activate
    oXL.ActiveSheet.range("A2").Activate
    WScript.Echo  oXL.activecell.Value
    root = "dc=testdom,dc=local"
    oXL.activecell.offset(1, 0).Activate
    Do While oXL.activecell.Value <> ""     
        OU = oXL.activecell.offset(0, 6).Value
        Set oOU=GetObject("LDAP://OU=" & OU & "," & root)
        Set u = oOU.Create("User", "cn=" & oXL.activecell.offset(0, 1).Value & " " & oXL.activecell.offset(0, 2).Value)
        DisplayNavn = oXL.activecell.offset(0, 1).Value + " " + oXL.activecell.offset(0, 2).Value
        u.Put "sAMAccountName", oXL.activecell.offset(0, 0).Value
        u.Put "givenName", oXL.activecell.offset(0, 1).Value
        u.Put "sn", oXL.activecell.offset(0, 2).Value
        u.Put "userPrincipalName", oXL.activecell.offset(0, 0).Value & "@testdom.local"'UPN DOMÆNE
        u.Put "homeDrive", "Y:"
        u.Put "homeDirectory", "\\server\homedir\" & oXL.activecell.offset(0, 0).Value
        u.Put "displayName", DisplayNavn
        u.SetInfo
        U.SetPassword oXL.activecell.offset(0, 4).Value
        U.AccountDisabled = False
        u.setinfo
        dialinok = oXL.activecell.offset(0, 8).Value
        If UCase(dialinok) = "JA" Then       
            U.MsNPAllowDialin = True
            Else
            U.MsNPAllowDialin = False
        End If
        U.SetInfo
        Set u = Nothing
        If Not fso.folderexists("\\server\homedir\" & oXL.activecell.offset(0, 0).Value) Then
        fso.createfolder("\\server\homedir\" & oXL.activecell.offset(0, 0).Value)
        End If
        strrettighed = "%comspec% /c cacls \\server\homedir\" & oXL.activecell.offset(0, 0).Value & " /E /G " & oXL.activecell.offset(0, 0).Value & ":F"
        shell.run strrettighed,0,True
        oXL.activecell.offset(1, 0).Activate
    Loop
oXL.application.quit
Wscript.Echo    "Færdig !!!!"
Avatar billede kennith Nybegynder
13. december 2005 - 23:20 #16
Kanon fedt det er testet og det kører endnn engang tak og smid lige et svar så du kan få nogle flere velfortjente point

Kennith
Avatar billede killerclown Nybegynder
13. december 2005 - 23:21 #17
hehe ...
mange tak :)
Avatar billede kennith Nybegynder
13. december 2005 - 23:23 #18
bliver nok nødt til at se noget mere på det scripting på et tidspunkt men syntes jeg har lidt meget om ørene for tiden. Er lige startet på MCSE
Avatar billede kennith Nybegynder
13. december 2005 - 23:26 #19
eneste bemærkning er at det er administrator der står som owner det er ikke noget du skal gøre noget ved det betyder ikke noget i denne sammenhæng men er blot en bemærkning hvis nu andre skulle finde på at bruge dette lille stykke værktøj

Kennith
Avatar billede killerclown Nybegynder
13. december 2005 - 23:27 #20
Ja, så har du da nok, at rive i et stykke tid.
Man kan gøre næsten alt med vbs. Det er bl.a. derfor jeg valgte at specialisere mig på det. mulighederne er ubegrænsede så længe man har de rigtige værktøjer installeret på  maskinen, der afvikler dem.

Jeg er avsvarlig for integrationen mellem vores personaledatabase og AD på mit arbejde, og har efterhånden fået det 100% automatiseret inkl oprettelse af exchange mailboxe rettelse og tilføjelse af primære amtp adresser m.v.

Det er læææækert :o)
Avatar billede killerclown Nybegynder
13. december 2005 - 23:28 #21
m.h.t. owner delen, mener jeg også den kan fikses .
Giv mig lige 2 min.
Avatar billede kennith Nybegynder
13. december 2005 - 23:30 #22
ja for den det er sådan vi kan li´ det jo mere vi kan få lavet uden at lave noget jo bedre *GG*
Avatar billede kennith Nybegynder
13. december 2005 - 23:37 #23
manner der gik lige et lys op for mig. Jeg har tit spekuleret over hvorfor control access through remote policy var nedtonet i nogen af de systemer jeg har pillet ved tiltrods for at det var 2003. I starten troede jeg det var fordi IAS ikke var inde men jeg lavede fornylig en server som havde det og alligevel var den nedtonet. Nu har jeg lige hævet mit functionlevel på den test server jeg havde lavet til dette formål for lige at se med dial in og vupti så blev den pludselig også en mulighed.
Avatar billede killerclown Nybegynder
13. december 2005 - 23:38 #24
jaaarh :o)
Den tog også rø... på mig ;)
Avatar billede kennith Nybegynder
13. december 2005 - 23:38 #25
åbenlyst når man lige får tænkt sig om en ekstra gang da det jo netop er en del af 2003 tsk tsk nå man skal lære så længe man lever.
Avatar billede killerclown Nybegynder
13. december 2005 - 23:40 #26
hehe ... yup :o)

P.s. for, at kunne ændre ownership på mapperne, skal du bruge SUBINACL
Den skal godt nok downloades, men skulle gøre "the trick" Jeg tester den lige selv
Avatar billede kennith Nybegynder
13. december 2005 - 23:42 #27
når du nu har rodet så meget med det har du nogen erfaring med at få credentials ført over...hmm dårlig formulering, men når man har en bruger med f.eks. en xp home og gerne vil give dem mulighed for at tilgå fælles- og egne mapper i domainet er det noget man kan scripte sig ud af med vbs også??
Avatar billede killerclown Nybegynder
13. december 2005 - 23:53 #28
hmmmm ..
Det der med home ed. på domains er vist ikke noget man umiddelbart kan, så vidt jeg husker. Men jag kan da undersøge det hos MS.

Du får lige et link til subinacl her :
http://www.microsoft.com/downloads/details.aspx?FamilyID=e8ba3e56-d8fe-4a91-93cf-ed6985e3927b&displaylang=en

Jeg har lige testet på mit eget dom, og det spiller :o)
Skal lige ryge, så kigger jeg på, at få det til, at spille i scriptet :o)
Avatar billede kennith Nybegynder
13. december 2005 - 23:55 #29
Kanon jeg har allerede hentet og installeret subinacl ;)
Avatar billede kennith Nybegynder
14. december 2005 - 00:11 #30
Nu bliver jeg nødt til at overgive mig jeg har et voldsomt søvnunderskud for den sidste uge. Men jeg tjekker da lige om du har postet noget når jeg står op.

endnu engang tak for din hjælp

Kennith
Avatar billede killerclown Nybegynder
14. december 2005 - 00:12 #31
np du !
sov godt
Avatar billede killerclown Nybegynder
14. december 2005 - 00:40 #32
ok.. Så ser det ud til, at det spiller.
Jeg har sat en sleep ind i linie 39. Dette gjorde jeg fordi enten er min AD for sløv eller også fordi jeg genbrugte initialer hele tiden. I hvert tilfælde dukkede guid'en op i stedet for brugernavne en gang i mellem når man kiggede i security. Det gør scriptet lidt langsommere, men du kan sansynligvis bare fjerne linien, da det ikke burde ske for dig :o)

TextXL = "c:\userlist.xls"
    Set shell = WScript.CreateObject("WScript.Shell")
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set oXL = WScript.CreateObject("EXCEL.application")
    oXL.Visible = True
    oXL.workbooks.open TextXL
    oXL.sheets("Ark1").Activate
    oXL.ActiveSheet.range("A2").Activate
    WScript.Echo  oXL.activecell.Value
    root = "dc=testdom,dc=local"
    oXL.activecell.offset(1, 0).Activate
    Do While oXL.activecell.Value <> ""     
        OU = oXL.activecell.offset(0, 6).Value
        Set oOU=GetObject("LDAP://OU=" & OU & "," & root)
        Set u = oOU.Create("User", "cn=" & oXL.activecell.offset(0, 1).Value & " " & oXL.activecell.offset(0, 2).Value)
        DisplayNavn = oXL.activecell.offset(0, 1).Value + " " + oXL.activecell.offset(0, 2).Value
        u.Put "sAMAccountName", oXL.activecell.offset(0, 0).Value
        u.Put "givenName", oXL.activecell.offset(0, 1).Value
        u.Put "sn", oXL.activecell.offset(0, 2).Value
        u.Put "userPrincipalName", oXL.activecell.offset(0, 0).Value & "@testdom.local"
        u.Put "homeDrive", "Y:"
        u.Put "homeDirectory", "\\server\homedir\" & oXL.activecell.offset(0, 0).Value
        u.Put "displayName", DisplayNavn
        u.SetInfo
        U.SetPassword oXL.activecell.offset(0, 4).Value
        U.AccountDisabled = False
        u.setinfo
        dialinok = oXL.activecell.offset(0, 8).Value
        If UCase(dialinok) = "JA" Then       
            U.MsNPAllowDialin = True
            Else
            U.MsNPAllowDialin = False
        End If
        U.SetInfo
        Set u = Nothing
        If Not fso.folderexists("\\server\homedir\" & oXL.activecell.offset(0, 0).Value) Then
        fso.createfolder("\\server\homedir\" & oXL.activecell.offset(0, 0).Value)
        End If       
WScript.Sleep 10000
strrettighed = "%comspec% /c cacls \\server\homedir\" & oXL.activecell.offset(0, 0).Value & " /E /G " & oXL.activecell.offset(0, 0).Value & ":F"
shell.run strrettighed,0,True
strsubinacl = "%comspec% /c ""C:\Program Files\Windows Resource Kits\Tools\subinacl.exe"" /file \\server\homedir\" & oXL.activecell.offset(0, 0).Value & " /setowner=" & oXL.activecell.offset(0, 0).Value
shell.run strsubinacl,0,True
        oXL.activecell.offset(1, 0).Activate
    Loop
oXL.application.quit
Wscript.Echo    "Færdig !!!!"

/Killer
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester