我有 3 个不同的 Windows 用户组。每个组都需要映射一个特定的驱动器,该驱动器是该组独有的。有没有办法让 x 组每次连接时都映射到 y 驱动器?
如果我把一些东西放到启动项中,那将需要大量的手动工作。如果可能的话,我需要为每个用户组设置一些东西。
如果这不可行,还有其他选择吗?
再次感谢您的帮助!Eric
答案1
尝试组策略首选项。这些为网络驱动器映射提供了相当轻松的支持,并且可以设置为仅适用于特定组,您只需为每个组创建一个 GPP。然后,您可以将每个组的任何其他自定义设置捆绑到同一个组策略对象中。
答案2
为驱动器映射创建组策略。如果所有用户共享一个公共 OU,则可以将其应用于该 OU,否则,将其设为域的全局 GPO。
驱动器映射位于“用户配置”>“首选项”>“Windows 设置”>“驱动器映射”下
为每个位置创建新的驱动器映射。创建每个驱动器映射时,在驱动器属性的“常用”选项卡中,选中“项目级定位”旁边的框,然后单击“定位...”按钮。您可以创建适用于某个组的规则,然后浏览每个驱动器适用的组,并将其仅应用于它应该出现的组。这样,您可以在单个组策略中创建所有驱动器映射,该组策略将适用于每个用户,但仅在需要时才应用。不会应用不必要的驱动器,也不需要编写额外的脚本。
答案3
我是老派(非常老派)。所以我按照您在登录脚本中要求的方式操作。我在安装时使用 VBS,然后执行此操作...基本上是检查组成员身份,然后根据该用户是否在该组中映射驱动器。这样,它就是一个单一脚本,如果用户不属于该组,它就会跳过映射。
' Create objects and extract strGroup values
Set objNetwork = CreateObject("WScript.Network")
Set objUser = CreateObject("ADSystemInfo")
Set CurrentUser = GetObject("LDAP://" & objUser.UserName)
strGroup = LCase(Join(CurrentUser.MemberOf))
'Map Quickbooks
if instr(strGroup, lcase("Quickbooks")) then
wscript.echo "Quickbooks User.. Mapping Q Drive"
objNetwork.MapNetworkDrive "q:", "\\server\quickbooks"
wcsript.echo "Quickbooks Mapping Completed"
end if