Como “ignorar” o prompt de nome de usuário e senha no uso da rede

1

Eu tenho no momento um script logon.cmd, que estou usando para mapear unidades de rede para o perfil dos usuários. Parece assim:

::Onboarding
net use m: /delete
net use m: \BOB\onboarding 
::Bookings
net use n: /delete
net use n: \BOB\bookings 

::Accounts
net use j: /delete
net use j: \BOB\accounts 

Funciona bem até chegar a uma pasta que o usuário atual não pode acessar, em seguida, pede um nome de usuário e senha em vez de errar e continuar.

Notas: Este mesmo script costumava funcionar em outra rede Samba PDC, mas eu mudei para outro servidor (Still Samba PDC) e agora está quebrando.

Existe alguma maneira de ignorar o prompt de nome de usuário / senha e continuar?

    
por Mattisdada 16.10.2012 / 07:58

3 respostas

2

Nunca consegui encontrar uma solução finita para o problema. Mas um trabalho utilizável (mas muito hacky e impuro) está usando este comando:

::Helpdesk
copy /Y NUL "\BOB\helpdesk\.writable"
IF %ERRORLEVEL%==0 ( 
    del \BOB\helpdesk\.writable
    GOTO:ALLOWEDHELPDESK
 ) 

GOTO:SECT2
:ALLOWEDHELPDESK
net use k: /delete
net use k: \BOB\helpdesk 
:SECT2

::Onboarding
copy /Y NUL "\BOB\onboarding\.writable" 
IF %ERRORLEVEL%==0 ( 
    del \BOB\onboarding\.writable
    GOTO:ALLOWEDONBOARDING
 ) 

GOTO:SECT3
:ALLOWEDONBOARDING
net use m: /delete
net use m: \BOB\onboarding 
:SECT3

::Etc,etc,etc

Explicação básica: Ele verifica se uma pasta é gravável primeiro copiando um arquivo em branco .writable, se tiver êxito, ele executará o comando, se falhar, ignorará o comando e continuará.

Isto é puramente uma solução alternativa ...

    
por 26.10.2012 / 04:17
3

Estendendo a resposta de Mattisdada, esse script tornará um pouco mais fácil modificar qualquer mapeamento de unidade simplesmente adicionando, excluindo ou alterando as chamadas da função mapDrive . Além disso, essa função verifica o acesso de leitura chamando DIR (em vez de gravar o arquivo temporário) e mapeia adequadamente:

@ECHO off

setlocal
set SHARE=BOB
CALL:mapDrive K: helpdesk
CALL:mapDrive M: onboarding
CALL:mapDrive Z: watercooler
endlocal

net use
ECHO Mapping Complete. Thank You.
PAUSE&GOTO:EOF

:mapDrive
DIR \%SHARE%\%~2 > nul 2>&1
IF %ERRORLEVEL%==0 ( 
    net use %~1 /DELETE > nul 2>&1
    net use %~1 \%SHARE%\%~2
)
GOTO:eof
    
por 20.05.2014 / 10:01
1

Parece que descobri isso, acabei de digitar uma senha como um argumento de uso da rede, depois da pasta a ser mapeada, como abaixo:

.. net use t: \ BOB \ senha do helpdesk / PERSISTENTE: NÃO

não sabe exatamente por que funciona, já que não é a senha correta para o usuário, mas parece mapear de qualquer forma se o usuário tiver acesso e apenas lançar um acesso negado se não tiver acesso à unidade e seguir em frente:)

    
por 28.09.2016 / 09:11