none
Login Script por grupo e usuário. RRS feed

Respostas

  • Amigo,

             Tente o script em bat abaixo, ele tem que ser adaptado a sua necessidade. Se o seu ambiente for muito grande informe, pois esse fica inviável para uso.

    @echo off
    net user %username% /domain >%username%.log

    :VENDAS
    find /C /I "*VENDAS" %username%.log > nul
    if not "%errorlevel%"=="0" call :FINANCEIRO
    if "%errorlevel%"=="0" net use \\servidor\dados\vendas
    :FINANCEIRO
    find /C /I "*FINANCEIRO" %username%.log > nul
    if not "%errorlevel%"=="0" call :FINANCEIRO
    if "%errorlevel%"=="0" net use \\servidor\dados\financeiro

    Echo Mapeando home de %username%
    net use \\servidor\usuários\%username%

    Echo Mapeando unidade de rede.
    if not "%username%"=="joão" call :PEDRO
    if "%errorlevel%"=="joão" net use \\servidor\dados\vendas\projetos
    :PEDRO
    if not "%username%"=="pedro" call :MARIA
    if "%username%"=="pedro" net use \\servidor\dados\vendas\projetos
    Leonardo Sousa
    segunda-feira, 14 de dezembro de 2009 11:54

Todas as Respostas

  • Felipe,

    Segue abaixo um exemplo de script em que ele ira mapear o drive conforme o grupo que o usuario faz parte.

    Script:

    On Error Resume Next

    Set objSysInfo = CreateObject("ADSystemInfo")
    Set objNetwork = CreateObject("Wscript.Network")

    strUserPath = "LDAP://" & objSysInfo.UserName
    Set objUser = GetObject(strUserPath)

    For Each strGroup in objUser.MemberOf
        strGroupPath = "LDAP://" & strGroup
        Set objGroup = GetObject(strGroupPath)
        strGroupName = objGroup.CN
        Wscript.Echo objUser.MemberOf

        Select Case strGroupName
            Case "Financeiro"
                objNetwork.MapNetworkDrive "Z:", "
    \\SERVER\SHARE\Financeiro"
           
            Case "RH"
                objNetwork.MapNetworkDrive "Z:", "
    \\SERVER\SHARE
    \RH"

            Case "Producao"
                'objNetwork.MapNetworkDrive "Z:", "
    \\SERVER\SHARE
    \Producao"

            Case "Vendas"
                objNetwork.MapNetworkDrive "Z:", "
    \\SERVER\SHARE
    \Vendas"
        End Select
    Next

    Esse script nao ira funcionar em clientes W9x. Qualquer problema posta ai.

     

    abs,

     

    Wagner

    domingo, 18 de março de 2007 20:38
  • Olá,

     

    Isso eu já tenho, quero que seja feito o mapeamento também por usuário. Não estou achando.

    Flw

    terça-feira, 20 de março de 2007 11:27
  • Felipe,

    Segue abaixo um exemplo de script em que ele ira mapear o drive conforme o grupo que o usuario faz parte.

    Script:

    On Error Resume Next

    Set objSysInfo = CreateObject("ADSystemInfo")
    Set objNetwork = CreateObject("Wscript.Network")

    strUserPath = "LDAP://" & objSysInfo.UserName
    Set objUser = GetObject(strUserPath)

    For Each strGroup in objUser.MemberOf
        strGroupPath = "LDAP://" & strGroup
        Set objGroup = GetObject(strGroupPath)
        strGroupName = objGroup.CN
        Wscript.Echo objUser.MemberOf

        Select Case strGroupName
            Case "Financeiro"
                objNetwork.MapNetworkDrive "Z:", "
    \\SERVER\SHARE\Financeiro"
           
            Case "RH"
                objNetwork.MapNetworkDrive "Z:", "
    \\SERVER\SHARE
    \RH"

            Case "Producao"
                'objNetwork.MapNetworkDrive "Z:", "
    \\SERVER\SHARE
    \Producao"

            Case "Vendas"
                objNetwork.MapNetworkDrive "Z:", "
    \\SERVER\SHARE
    \Vendas"
        End Select
    Next

    Esse script nao ira funcionar em clientes W9x. Qualquer problema posta ai.

     

    abs,

     

    Wagner


    Esse escript é Batch? Caso não seja, você conhece algum script em Batch que realize esse mesmo processo?

    Abraço!
    quinta-feira, 3 de dezembro de 2009 15:38
  • Felipe,

    Segue abaixo um exemplo de script em que ele ira mapear o drive conforme o grupo que o usuario faz parte.

    Script:

    On Error Resume Next

    Set objSysInfo = CreateObject("ADSystemInfo")
    Set objNetwork = CreateObject("Wscript.Network")

    strUserPath = "LDAP://" & objSysInfo.UserName
    Set objUser = GetObject(strUserPath)

    For Each strGroup in objUser.MemberOf
        strGroupPath = "LDAP://" & strGroup
        Set objGroup = GetObject(strGroupPath)
        strGroupName = objGroup.CN
        Wscript.Echo objUser.MemberOf

        Select Case strGroupName
            Case "Financeiro"
                objNetwork.MapNetworkDrive "Z:", "
    \\SERVER\SHARE\Financeiro"
           
            Case "RH"
                objNetwork.MapNetworkDrive "Z:", "
    \\SERVER\SHARE
    \RH"

            Case "Producao"
                'objNetwork.MapNetworkDrive "Z:", "
    \\SERVER\SHARE
    \Producao"

            Case "Vendas"
                objNetwork.MapNetworkDrive "Z:", "
    \\SERVER\SHARE
    \Vendas"
        End Select
    Next

    Esse script nao ira funcionar em clientes W9x. Qualquer problema posta ai.

     

    abs,

     

    Wagner


    Esse escript é Batch? Caso não seja, você conhece algum script em Batch que realize esse mesmo processo?

    Abraço!
    Fabio, boa tarde.


    Esse script não é um batch file. É um VBS -  Visual Basic Script.
    No seu caso, vc tem necessidade que seja um batch file?

    Estamos aguardando!

    []s,

    " Qm tem boca vai a roma, meu fogão tem 6 e não saiu da cozinha ainda"
    quinta-feira, 3 de dezembro de 2009 16:22
  • Boa noite Marcellus

    Sim teria que ser um bat file, porém, consegui configura um script em bat que deu certo e está atendendo a minha necessidade no momento, mas caso tenha um scritp em bat que realize essas funções citada a cima, me ajudaria muito.

    obrigado.



    sexta-feira, 11 de dezembro de 2009 21:46
  • Amigo,

             Tente o script em bat abaixo, ele tem que ser adaptado a sua necessidade. Se o seu ambiente for muito grande informe, pois esse fica inviável para uso.

    @echo off
    net user %username% /domain >%username%.log

    :VENDAS
    find /C /I "*VENDAS" %username%.log > nul
    if not "%errorlevel%"=="0" call :FINANCEIRO
    if "%errorlevel%"=="0" net use \\servidor\dados\vendas
    :FINANCEIRO
    find /C /I "*FINANCEIRO" %username%.log > nul
    if not "%errorlevel%"=="0" call :FINANCEIRO
    if "%errorlevel%"=="0" net use \\servidor\dados\financeiro

    Echo Mapeando home de %username%
    net use \\servidor\usuários\%username%

    Echo Mapeando unidade de rede.
    if not "%username%"=="joão" call :PEDRO
    if "%errorlevel%"=="joão" net use \\servidor\dados\vendas\projetos
    :PEDRO
    if not "%username%"=="pedro" call :MARIA
    if "%username%"=="pedro" net use \\servidor\dados\vendas\projetos
    Leonardo Sousa
    segunda-feira, 14 de dezembro de 2009 11:54
  • Amigo,

             Tente o script em bat abaixo, ele tem que ser adaptado a sua necessidade. Se o seu ambiente for muito grande informe, pois esse fica inviável para uso.

    @echo off
    net user %username% /domain >%username%.log

    :VENDAS
    find /C /I "*VENDAS" %username%.log > nul
    if not "%errorlevel%"=="0" call :FINANCEIRO
    if "%errorlevel%"=="0" net use \\servidor\dados\vendas
    :FINANCEIRO
    find /C /I "*FINANCEIRO" %username%.log > nul
    if not "%errorlevel%"=="0" call :FINANCEIRO
    if "%errorlevel%"=="0" net use \\servidor\dados\financeiro

    Echo Mapeando home de %username%
    net use \\servidor\usuários\%username%

    Echo Mapeando unidade de rede.
    if not "%username%"=="joão" call :PEDRO
    if "%errorlevel%"=="joão" net use \\servidor\dados\vendas\projetos
    :PEDRO
    if not "%username%"=="pedro" call :MARIA
    if "%username%"=="pedro" net use \\servidor\dados\vendas\projetos
    Leonardo Sousa

    Leonardo,

    Esse script é interessante, porém, o meu ambiente tem 360 usuários ficaria meu penoso configurar por esse meio de associação... caso tenha uma script em BAT quer trate esses usuário de forma automática tipo enves de usuario varia essas mesmas funções por grupo me interessaria, caso não tenha irei utilizar esse mesmo.

    Obrigado.

    • Editado Fábio R. Couto terça-feira, 15 de dezembro de 2009 16:51 A crescentar mais detalhes a pergunta
    terça-feira, 15 de dezembro de 2009 14:46
  • Leo, consegui configurar um script que atenda minha necessidade.

    Não é exatamente o que eu queria, porém, no momento está suprindo. Obrigado!

    ________________________________________________________________________________________

    @ echo off
    echo.
    echo Sincronizando Data\Hora com o Domínio.
    echo.
    Net time \\192.168.1.1 /yes /set
    echo.
    echo Data - hora atualizados!
    rem pause

    echo -----------------------------------------------------------------------
    echo Mapenado Unidades de Rede
    echo -----------------------------------------------------------------------
    if exist "F:\" (goto netG) else net use F: \\srv291\Backup

    :netG
    if exist "G:\" (goto neth) else net use G: \\Srv291\Instalar

    :netH
    if exist "H:\" (goto netI) else rem net use H: \\SRV291\Sistemas

    :netI
    if exist "I:\" (goto netJ) else net use I: \\DBFinanceiro\Gervend2000

    :netJ
    if exist "J:\" (goto netK) else net use J: \\DBFinanceiro\Cadastro

    :netK
    if exist "K:\" (goto netL) else net use K: \\DBFinanceiro\Donwload

    :netL
    if exist "L:\" (goto netM) else net use L: \\DBFinanceiro\Cadcheq

    :netM
    if exist "M:\" (goto netN) else net use M: \\DBFinanceiro\Cheqdev

    :netN
    if exist "N:\" (goto netO) else net use N: \\DBFinanceiro\DMP

    :netO
    if exist "O:\" (goto netP) else net use O: \\srv291\Departamentos

    :netP
    if exist "P:\" (goto netQ) else rem net use P: \\srvxxx\PROSOFT

    :netQ
    if exist "Q:\" (goto netR) else net use Q: \\DBFinanceiro\Publicos

    :netR
    if exist "R:\" (goto netS) else rem net use R: \\srvxxx\CadCheq

    :netS
    if exist "S:\" (goto netT) else rem net use S: \\srvxxx\Sistemas

    :netT
    if exist "T:\" (goto netU) else rem net use T: \\srvxxx\CheqDev

    :netU
    if exist "U:\" (goto AtuaMill) else rem net use U: \\srvxxx\Gervend2000

    echo -----------------------------------------------------------------------
    echo Mapeamento OK!
    echo -----------------------------------------------------------------------

    :AtuaMill

    rem pause

    rem -----------------------------------------------------------------------
    rem Tratando diretório Millnium
    rem -----------------------------------------------------------------------

    if exist c:\Millenium\Vendas (goto DirVenOK) else goto CriarDirVenOK

    :DirVenOK
    echo.
    echo -----------------------------------------------------------------------
    echo Pasta Milenium vendas OK!
    echo -----------------------------------------------------------------------
    goto AtuaDirVenok


    :CriarDirVenOK
    echo.
    echo -----------------------------------------------------------------------
    echo Diretório Vendas não encontrado em C:\millenium\Vendas!
    echo Criando Diretório...
    md c:\Millenium\Vendas
    echo Diretório Criado com Exito!
    echo -----------------------------------------------------------------------

    rem pause

    :AtuaDirVenok
    echo.
    echo -----------------------------------------------------------------------
    echo Atualizando Diretório Vendas...
    echo -----------------------------------------------------------------------

    rem pause

    rem -----------------------------------------------------------------------
    rem Tratando atualização do Diretorio Millenium Vendas
    rem -----------------------------------------------------------------------

    xcopy /D /S /E "H:\Vendas\*.*" "C:\Millenium\Vendas" /Y

    echo -----------------------------------------------------------------------
    echo Diretório Vendas Atualizado...
    echo -----------------------------------------------------------------------

    rem Pause

    rem -----------------------------------------------------------------------
    rem Final Tratando atualização do Diretorio Millenium Vendas
    rem -----------------------------------------------------------------------

    if exist "c:\Millenium\Estoque" (goto DirEstOK) else goto CriarDirEstoOK

    :DirEstOK
    echo -----------------------------------------------------------------------
    echo Pasta Millenium Estoque OK!
    echo -----------------------------------------------------------------------

    goto AtuaDirEst

    :CriarDirEstoOK
    echo.
    echo -----------------------------------------------------------------------
    echo Diretório Estoque não encontrado em C:\millenium\Estoque!
    echo Criando Diretório...
    md c:\Millenium\Estoque
    echo Diretório Criado com Exito!
    echo -----------------------------------------------------------------------

    :AtuaDirEst

    echo -----------------------------------------------------------------------
    echo Atualizando Diretótio Estoque
    echo -----------------------------------------------------------------------

    rem pause

    rem -----------------------------------------------------------------------
    rem Tratando atualização do Diretorio Millenium WMS
    rem -----------------------------------------------------------------------

    Xcopy /D /S /E "H:\Estoque\*.*" "C:\Millenium\Estoque" /Y

    echo -----------------------------------------------------------------------
    echo Diretório Estoque Atualizado...
    echo -----------------------------------------------------------------------

    rem -----------------------------------------------------------------------
    rem Final Tratando atualização do Diretorio Millenium WMS
    rem -----------------------------------------------------------------------

    echo.
    echo -----------------------------------------------------------------------
    echo Diretório Millenium Vendas / WMS Atualizados com Exito!
    echo -----------------------------------------------------------------------
    rem pause
    ________________________________________________________________________________________

    Obrigado galera.

    • Sugerido como Resposta Fábio R. Couto quarta-feira, 9 de fevereiro de 2011 17:35
    • Não Sugerido como Resposta Fábio JrModerator sexta-feira, 13 de janeiro de 2012 15:21
    quarta-feira, 9 de fevereiro de 2011 17:35