No Windows, as configurações de proxy podem ser definidas para o usuário atual ou para todos os usuários do sistema. Entender a diferença é importante para não confundir ajustes individuais com configurações globais.
Script PowerShell para verificação
O script abaixo permite checar as configurações de proxy do usuário logado e do sistema global:
# Proxy do usuário logado
$usuario = Get-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings" | Select-Object ProxyEnable, ProxyServer
Write-Output "Proxy do usuário ($env:USERNAME):"
Write-Output $usuario
# Proxy global (todos os usuários)
$global = Get-ItemProperty -Path "HKLM:\Software\Microsoft\Windows\CurrentVersion\Internet Settings" | Select-Object ProxyEnable, ProxyServer
Write-Output "`nProxy global (HKLM):"
Write-Output $global
Como funciona
- Proxy do usuário (HKCU)
- HKCU (HKEY_CURRENT_USER) armazena as configurações individuais de cada usuário.
- Configurações feitas via Painel de Controle ou script enquanto o usuário está logado afetam apenas esse usuário.
- Com o script acima,
ProxyEnablemostra se o proxy está ativado (1) eProxyServerindica o endereço do proxy configurado.
- Proxy global (HKLM)
- HKLM (HKEY_LOCAL_MACHINE) contém as configurações aplicáveis a todos os usuários do sistema.
- Para alterar essa chave, é necessário ter privilégios de administrador e alterar manualmente ou via script/política de grupo (GPO).
- Se não houver configuração global, os valores
ProxyEnableeProxyServerpermanecem vazios, mesmo que o usuário tenha proxy ativado individualmente.
Observações importantes
- Ser administrador não torna a configuração individual global. Mesmo um administrador alterando o proxy via Painel de Controle só modifica HKCU.
- Configurações individuais permitem que cada usuário tenha um proxy diferente, sem interferir nos demais.
- Esse script é útil para validar rapidamente quais proxies estão ativos, sem depender de interface gráfica.
