• 活动目录管理中常用的脚本(二)


    二、映射网络路径(UPN)
    每个用户登陆时,自动映射网络驱动,这个目录只有该用户才能访问,其他用户包括Administrators Groups member也无法访问,主要让用户存放个人数据。
    如果这个用户是第一次登陆时,脚本将会为这个用户在
    “\\domainName\root\user datas\”路径中创建以用户名命名的目录。

    '==========================================================================
    '
    ' VBScript Source File -- Created with SAPIEN Technologies PrimalScript 4.0
    '
    ' NAME: auto map network directory to local z: driver
    '
    ' AUTHOR: Bona Shen
    ' DATE  : 2006-10-31
    '
    ' COMMENT: auto map network directory to local z: driver
    '
    '==========================================================================
    On Error Resume Next 

    dim 
    objNetwork
    Set objNetwork = CreateObject("Wscript.Network")

    Set colDrives = objNetwork.EnumNetworkDrives

    userName = getUserName

    sharedir=
    "\\domainName\root\user datas\" & username

    found=0

    For i = To colDrives.Count-Step 2
        
        
    If colDrives.Item(i + 1) = sharedir Then
       
            
    found = 1
            
    Exit For
        End If
        
    Next

    If 
    found=Then
       
    createUserFolder sharedir,username
             MapNext(sharedir)
     

    End If 

    'wshShell = Null
    objNetwork = Null 


    Function MapNext(strShare)
        
    For intDrive = 26 To Step -1
            
    If TryMapDrive(intDrive, strShare) Then 
                
    MapNext = Chr(intDrive + 64) & ":"
                
    Exit For
            End If
        Next
    End Function

    Function 
    TryMapDrive(intDrive, strShare)
        
    ' Convert number to drive letter and try mapping share to it
        ' will get an error if drive letter is in use
        
    Dim strDrive
        strDrive = Chr(intDrive + 
    64) & ":"
        
    On Error Resume Next
        
    objNetwork.MapNetworkDrive strDrive, strShare
        TryMapDrive = (Err.Number = 
    0)
    End Function    

    Sub 
    createUserFolder(folderpath,username)
    'create user floder
        
    Set objFSO = CreateObject("Scripting.FileSystemObject")
        
    If Not objFSO.FolderExists(folderpath) Then
            
    'WSH.Echo "create folder"
            
    objFSO.CreateFolder(folderpath)
            configPermission username,folderpath 
        
    End If 
        

    End Sub 

    Sub 
    configPermission(username,folderpath)
        
    Set wshShell = WScript.CreateObject("WScript.Shell")
        userdir=
    """"&folderpath&""""
        
    argu = userdir & " /G "& username &":f"
        
    wshShell.Run("cscript \\
    domainName\root\scripts\xcacls.vbs "& argu)
        wshShell = Null  
        
    End Sub 

    Function 
    getUserName
        getUserName = objNetwork.UserName
    End Function

    注:加载这个脚本时要创建GPO,设为用户级运行脚本。
  • 相关阅读:
    maven总结二: 常用标签及属性
    maven总结一: 常用命令
    SpringCloud集成Seata并使用Nacos做注册中心与配置中心
    Seata 分布式事务解决方案及特点
    mui 文件附件下载
    Mock学习记录
    postman 测试elasticsearch 导出json
    elasticsearch 整合spring cloud Alibaba nacos 配置文件
    Elasticsearch 多字段高亮分页查询 返回泛型List集合
    Elasticsearch 多字段高亮字段返回json
  • 原文地址:https://www.cnblogs.com/jssy/p/601527.html
Copyright © 2020-2023  润新知