Script de Logon com uso da rede * / delete / yes

1

Estou tentando me livrar de todas as unidades de rede mapeadas manualmente em todas as estações de trabalho em meu domínio. Eu quero que as unidades mapeadas do nosso usuário final sejam mapeadas apenas via GPO (os GPOs já estão em vigor).

Estou tentando escrever um script que:

  1. Remova o mapa de todas as unidades de rede quando o usuário faz login
  2. Executar gpupdate /f para mapear novamente as unidades com base no GPO aplicado

Estou planejando que essa política de script de logon seja aplicada apenas por algumas semanas, até que eu possa verificar se todas as unidades mapeadas manualmente desapareceram.

Aqui está o conteúdo do meu script em lote:

REM Delete all mapped drives
net use * /del /y

REM force a group policy update to map all drives according to GPO's.
gpupdate /force 

REM create a directory to verify the script is actually running.
mkdir %USERPROFILE%\test

Eu coloquei esse script no meu diretório NETLOGON no meu controlador de domínio. O script é executado conforme planejado, se executado manualmente a partir desse diretório. No entanto, quando aplicado como um script de logon, o comando net use /delete /yes parece não funcionar. Eu verifiquei que o script está sendo executado durante o logon com o mkdir %USERPROFILE%\test .

Eu até tentei redirecionar a saída do primeiro comando net use * /del /y > result.txt e a saída saiu como

"There are no entries in the list"

Existe alguma razão pela qual meu script está funcionando quando eu o executo manualmente, mas não como um script de logon?

Servidor: Windows 2012R2
Anfitrião: Windows 10

    
por Francis Batalla 25.04.2016 / 21:07

2 respostas

0

Acabei de emitir um problema usando net use g: / delete / yes no WIndows 2012R2, ele estava causando conflitos de mapeamento. Meu mapeamento de unidade G seria mapeado para outros servidores e, às vezes, a unidade mapeada z adicional aparecia como um fantasma. Não foi no script em lote

Se você precisar excluir unidades de rede antes dos mapeamentos reais usando compartilhamentos no Servidor 2012R2, use net use g: / del (ONLY) ... isso funcionará no Servidor 2012R2

MJ

    
por 08.08.2017 / 23:27
0

Se o usuário em questão for um administrador, as unidades de (des) mapeamento que usam scripts não funcionarão.

Com o UAC, você tem dois tokens e sessões de login: um com todas as permissões ("elevado") e outro com permissões limitadas. Scripts iniciados por GPOs são executados com permissões completas.

As unidades mapeadas são rastreadas por sessão. Quando você tenta mapear ou desmapear unidades de scripts de logon / logoff, elas só estarão disponíveis para programas em execução elevada. O Explorer nunca é executado por padrão.

Veja mais informações diretamente da Microsoft .

Para contornar isso, use o seguinte script .reg . Depois disso, as alterações nos compartilhamentos mapeados afetarão o token completo e limitado.

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System]
"EnableLinkedConnections"=dword:00000001

Isso também corrige erros ao tentar executar configurações (ou outras coisas que são executadas de forma elevada) a partir de unidades mapeadas.

    
por 01.08.2018 / 17:36