Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

[VBS] Netwerkshare via VBS

Pagina: 1
Acties:
  • 327 views

  • michael21
  • Registratie: December 2006
  • Laatst online: 18-11 12:48
Voor de meeste hier waarschijnlijk een peulenschilletje maar voor mij is dit hogere school scripting.

De situatie is dat ik twee verschillende windows domeinen heb een kantoor en een fabrieksnetwerk. Vanaf het kantoornetwerk moeten er twee shares gemaakt worden naar het fabrieksnetwerk, dit gebeurd met een specifiek gebruikersnaam en wachtwoord. Alleen moeten niet alle gebruikers deze share hebben, alleen de gebruikers die in een bepaalde active directory groep zitten. Ik heb het nu wel werkend voor alle gebruikers maar dit is dus niet de bedoeling, hieronder het script:


VBScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
dim server, cn, username, wshnetwork
Set Cn = CreateObject("Wscript.Shell")
Set wshNetwork = CreateObject("WScript.Network")
Set wshnetwork = WScript.CreateObject("WScript.Network")
UserName = UCASE(WSHNetwork.UserName)
domain = LCase(Cn.ExpandEnvironmentStrings("%userdomain%"))

Set adsDomainGroups = GetObject("WinNT://" & domain)
adsDomainGroups.Filter = Array("Group")

for each adsGroup in adsDomainGroups
    Group = UCase(adsgroup.name)
    If group = UCase("AD groep naam") then CheckGroup adsgroup.name, Username, "g:", "\\server\share"
    If group = UCase("AD groep naam") then CheckGroup adsgroup.name, Username, "x:", "\\server\share"
    If group = UCase("AD groep naam") then CheckGroup adsgroup.name, Username, "y:", "\\server\share"
    If group = UCase("AD groep naam") then CheckGroup adsgroup.name, Username, "s:", "\\server\share"
    If group = UCase("AD groep naam") then CheckGroup adsgroup.name, Username, "l:", "\\server\share"
    If group = UCase("AD groep naam") then CheckGroup adsgroup.name, Username, "m:", "\\server\share"
    If group = UCase("AD groep naam") then CheckGroup adsgroup.name, Username, "t:", "\\server\share"
    If group = UCase("AD groep naam") then CheckGroup adsgroup.name, Username, "w:", "\\server\share"
    
Next

UCase "AD groep naam"
Set objNetwork = WScript.CreateObject("WScript.Network")
strLocalDrive = "u:"
strRemoteShare = "\\server\share"
strPer = "FALSE"
strUsr = "Gebruikersnaam"
strPas = "Wachtwoord"
objNetwork.MapNetworkDrive strLocalDrive, strRemoteShare, strPer, strUsr, strPas
UCase "AD groep naam"
Set objNetwork = WScript.CreateObject("WScript.Network")
strLocalDrive = "v:"
strRemoteShare = "\\server\share"
strPer = "FALSE"
strUsr = "Gebruikersnaam"
strPas = "wachtwoord"
objNetwork.MapNetworkDrive strLocalDrive, strRemoteShare, strPer, strUsr, strPas

set adsuser = Nothing
set adsDomain = Nothing
 
sub CheckGroup(GroupName, UserName, Drive, unc)
    Set AdsGroup = GetObject("WinNT://"&domain&"/" & GroupName)
    Set ADSGROUPMEMBERSHIP = AdsGroup.Members()
    for each adsUser In adsgroupmembership
        If UCase(adsUser.name) = UserName Then MapDrive Drive, UNC

    Next
End Sub
 
Sub mapdrive (driveletter, UNCString)
    On Error Resume Next
    wshNetwork.MapNetworkDrive driveletter, Uncstring, false
    'WScript.Echo "Error: " &  Err.Description & "(" & driveletter & ")"
End Sub

Gewoon Michael


  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Sorry, maar dit is gewoon een "ik heb een script, 't doet niet wat ik wil, ik wil dat 't zus-en-zo-doet, *dump script*"-topic. Ofwel Kan iemand even...? / scriptrequest.

Open gerust een nieuw topic, maar laat dan wel graag even zien wat je al gezocht/gevonden hebt, wat je geprobeerd hebt, wat daar niet aan werkt(e), waarom dat je denkt dat dat zo is/was etc.

[ Voor 10% gewijzigd door RobIII op 19-12-2013 12:18 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Dit topic is gesloten.