A ferramenta runas do Windows é equivalente ao sudo do Unix/Linux. A sua sintaxe é:
runas [/profile | /noprofile] [/env] [/netonly | /savecred] [/showtrustlevels] [/trustlevel] /user:<UserName> "<PathToProgramFile>"Exemplos
O comando abaixo executa o Prompt de Comando como administrador(root).
runas /user:Administrator cmdNo Unix/Linux equivale simplesmente a:
sudo /bin/shOu através do comando abaixo:
su -Nota: Se você não utiliza o Bash pode-se saber o shell que você usa a partir do comando which sh.
Se necessitar carregar o perfil do usuário pode-se fazer:
runas /profile /env /user:<Usuario> "notepad"No Unix/Linux pode equivaler a:
sudo -u <Usuario> -iEm contrapartida, se você não quer carregar o perfil do usuário pode-se usar:
Com o sudo poderíamos utilizar:
sudo -u root vi /etc/sudoersHá também ferramentas externas que podem fazer a elevação, por exemplo o Sudo for Windows.
Caso você utilize o ConEmu(é uma ótima alternativa ao Prompt de Comando do Windows) pode-se utilizar o comando csudo para executar uma ação com privilégios.
Outras alternativas podem ser vistas aqui.
Poderíamos criar um arquivo batch para realizar essa tarefa através do runas:
@echo off SETLOCAL ENABLEDELAYEDEXPANSION set "ARG=%*" if !ARG! == "" ( echo.Sem argumentos validos goto :NOARGS ) ELSE ( goto :EXECRUNAS exit /b 0 ) :NOARGS echo.Modo de uso: %~n0 -u [usuario] [comando1, comando2, comandoN] exit /b 0 :EXECRUNAS: if "%1" == "-u" ( set USER=%2 SHIFT ) ELSE ( echo.Especifique o usuario & echo. goto :NOARGS ) SHIFT set "skip=2" for %%I IN (!ARG!) DO IF !skip! LEQ 0 ( set args=!args! %%I ) ELSE set /a skip-= 1 for %%i IN (!args!) do ( runas /env /user:!USER! "cmd /k \"%%i\"" ) echo.Tarefa Finalizada & echo. exit /b 0Basta salvar o arquivo com um nome de sua preferência, com a extensão .bat e chamá-lo através do prompt assim:
bat_sudo -u [usuario] [comando1, comando2, comandoN]Por exemplo:
Lembrando que o script separa os comandos através de espaços, portanto se passar um comando como at 1 o script interpretará como sendo dois comandos destintos.
Os dois modos primários de operação são o modo EXEC usuário e o modo EXEC privilegiado. Como um recurso de segurança, o software Cisco IOS separa as sessões EXEC em dois níveis de acesso. Como mostrado na figura, o modo EXEC privilegiado possui um nível superior de autoridade no qual permite que o usuário faça com o dispositivo.
Modo EXEC Usuário
O modo EXEC usuário tem recursos limitados, mas é útil para algumas operações básicas. O modo EXEC usuário está no nível mais básico da estrutura hierárquica modal. Esse modo é o primeiro modo encontrado na entrada no CLI de um dispositivo IOS.
O modo EXEC usuário permite somente uma quantidade limitada de comandos básicos de monitoramento. Ele é frequentemente referido como modo somente de visualização. O nível EXEC usuário não permite a execução de quaisquer comandos que poderiam alterar a configuração do dispositivo.
Por padrão, não há autenticação exigida para acessar o modo EXEC usuário do console. Contudo, essa é uma boa prática para garantir que a autenticação seja configurada durante a configuração inicial.
O modo EXEC usuário é identificado pelo prompt do CLI que termina com o símbolo >. Esse é um exemplo que mostra o símbolo > no prompt:
Switch>
Modo EXEC privilegiado
A execução de comandos de configuração e gerenciamento exige que o administrador de rede use o modo EXEC privilegiado ou um modo mais específico na hierarquia. Isso significa que um usuário deve entrar no modo EXEC usuário primeiro e, de lá, acessar o modo EXEC privilegiado.
O modo EXEC privilegiado pode ser identificado pelo prompt terminando com o símbolo #.
Switch#
Por padrão, o modo EXEC privilegiado não requer autenticação. É uma boa prática garantir que a autenticação seja configurada.
O modo de configuração global e outros modos de configuração mais específicos só podem ser alcançados a partir do modo EXEC privilegiado. Em uma seção posterior deste capítulo, examinaremos configuração de dispositivo e alguns dos modos de configuração.