Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Sudo para Windows é uma nova maneira para os usuários executarem comandos elevados (como administrador) diretamente de uma sessão de console não elevada no Windows.
Leia o anúncio, que inclui um vídeo de demonstração e aprofunde-se em como o Sudo para Windows funciona.
Pré-requisitos
O comando Sudo para Windows está disponível no Windows 11, versão 24H2 ou superior. (Verifique se há atualizações do Windows).
Observação
Sudo para Windows ainda não está disponível para o Windows 10, mas pode ser no futuro.
Como ativar o Sudo para Windows
Para habilitar o Sudo para Windows, abra Settings > System > For Developers e defina Enable sudo como On.
Advertência
Sudo para Windows pode ser usado como um potencial escalonamento de vetor de privilégio quando ativado em determinadas configurações. Certifique-se de estar ciente das considerações de segurança ao ativar o comando sudo em sua máquina.
Como configurar o Sudo para Windows
Sudo para Windows atualmente suporta três opções de configuração diferentes. A configuração pode ser definida a partir do Settings > For Developers menu ou programaticamente, usando a linha de comando. As opções de configuração incluem:
Em uma nova janela (
forceNewWindow): AforceNewWindowopção de configuração é a opção de configuração padrão para Sudo para Windows. Usesudonesta configuração para executar o comando em uma nova janela. Isso é semelhante ao comportamento dorunas /user:admincomando.Entrada encerrada (
disableInput): A opção de configuraçãodisableInputexecutará o processo elevado na janela atual, mas com o identificador de entrada encerrado. Isso significa que o processo elevado não poderá receber entrada da janela atual do console. Isso é útil para cenários em que você deseja executar um comando como administrador, mas não deseja permitir que o comando receba entrada da janela atual do console. Esta opção de configuração fornece alguma da conveniência da opção deinlineconfiguração enquanto reduz alguns dos riscos de segurança associados.Inline (
normal): Anormalopção de configuração é mais semelhante a como o sudo se comporta em outros sistemas operacionais. Essa configuração executará o processo elevado na janela atual e o processo poderá receber entrada da sessão de console atual. Isso é útil para cenários em que você deseja executar um comando como administrador e deseja permitir que o comando receba entrada da janela atual do console. Essa opção de configuração oferece a maior conveniência, mas você só deve escolher essa opção se estiver familiarizado com os riscos de segurança associados.
Você pode selecionar entre essas configurações no Settings > For Developers menu ou alterar a configuração programaticamente, em uma linha de comando elevada (console de administração), usando:
sudo config --enable <configuration_option>
Atualize <configuration_option> para forceNewWindow, disableInputou normal.
Como usar o Sudo para Windows
Para usar o Sudo para Windows, basta anexar sudo o comando que você deseja executar como administrador. Por exemplo, para executar netstat -ab como administrador, você executaria sudo netstat -ab na janela do console.
Cenários comuns para programadores
Aqui estão alguns cenários comuns em que os programadores podem usar sudo:
-
Editar ficheiros do sistema:
sudo notepad C:\Windows\System32\drivers\etc\hosts -
Instalação de pacotes globalmente:
sudo npm install -g package-name -
Executar ferramentas administrativas:
sudo diskpart
Observação
Para trabalhos de desenvolvimento envolvendo diretórios de sistemas como C:\Windows\, considere o uso de ambientes de desenvolvimento ou abordagens alternativas sempre que possível. O Sudo deve ser usado com discernimento e apenas quando as permissões elevadas forem realmente necessárias.
Como sudo eleva o processo de destino para ser executado com permissão de nível de administrador, um prompt será aberto solicitando que você verifique se deseja continuar.
Considerações de segurança
Há riscos associados à execução do sudo nas configurações Input closed (disableInput) ou Inline (normal). É possível que processos mal-intencionados tentem manipular o processo elevado através da conexão estabelecida pelo processo sudo.exe não elevado e o processo sudo.exe elevado.
A disableInput opção de configuração reduz o risco fechando a alça de entrada. Desconectar a alça de entrada da janela atual do console significa que os processos não elevados não podem enviar entrada para o processo elevado.
A inline opção de configuração executa o processo elevado na janela atual e o processo é capaz de receber entrada da sessão de console atual. Um processo não elevado pode enviar entrada para o processo elevado dentro da mesma janela de consola ou obter informação da saída na janela atual nesta configuração.
FAQ
Qual é a diferença entre o Sudo para Windows e o comando existente runas ?
O sudo comando oferece uma maneira de elevar rapidamente um comando como administrador do seu contexto de linha de comando não elevado atual e é familiar para alguns usuários provenientes de outros sistemas operacionais. O runas comando oferece uma maneira de executar programas como qualquer usuário, incluindo administrador, se você assim escolher. Neste momento, o sudo comando no Windows não suporta a execução de programas como outros usuários. Outras diferenças importantes entre sudo e runas incluem:
runasPermite que você execute programas como outros usuários, incluindo, mas não limitado a, como administrador. Essa funcionalidade está no roteiro para o comando sudo, mas ainda não existe.sudoPermite elevar rapidamente um processo (como administrador):- Você pode optar por fazê-lo em uma nova janela, que se assemelha ao fluxo do
runasadministrador. - Você pode optar por conectar o processo com privilégios elevados à janela atual do console com as opções de configuração
disableInputenormal. Isso não é suportado comrunas.
- Você pode optar por fazê-lo em uma nova janela, que se assemelha ao fluxo do
runaspode solicitar aos usuários uma senha na linha de comando.sudosó pode ser elevado através da funcionalidade de segurança Controle de Conta de Usuário (UAC), projetada para proteger o sistema operativo contra alterações não autorizadas, usando o prompt de confirmação.
Você deve considerar seu caso de uso específico e planejar usar o comando que melhor atenda às suas necessidades. Você também deve considerar as implicações de segurança do uso do sudo nos modos disableInput e normal. A opção de configuração padrão forceNewWindow é recomendada, a menos que você esteja familiarizado e confortável com os riscos associados às outras sudo configurações.
Sudo para repositório de código aberto do Windows
Sudo for Windows é de código aberto e agradece suas contribuições e comentários. Você pode encontrar o código-fonte do Sudo para Windows no GitHub.
Funcionalidade adicional
Se você está procurando por funcionalidades adicionais que o Sudo para Windows não fornece, confira o gsudo pelo Gerardo Grignoli qual tem uma série de recursos adicionais e opções de configuração ou confira outras soluções da comunidade.
Windows developer