O Windows® 7 oferece um mecanismo simples para a execução de contas de usuários finais com privilégios de usuário padrão, eliminando a necessidade de privilégios de administrador ao executar tarefas comuns, como instalar um driver de impressora ou conectar-se a uma rede sem fio. Esse deslocamento fundamental ajuda a fornecer segurança no nível do sistema operacional impedindo que softwares mal-intencionados (também chamado de malwares) e kits raiz danifiquem configurações e arquivos da empresa inteira.

O Controle de Conta de Usuário (UAC) baseia-se na teoria de segurança do privilégio mínimo, ou seja, o conceito de que os usuários devem ter o menor privilégio possível necessário para executar as tarefas atribuídas. Alterações no Subsistema para Aplicativos Baseados no UNIX que sejam compatíveis com o UAC incluem o uso de Conta de Usuário de Conta sem Privilégios Administrativos (LUA).

Controle de Conta de Usuário

O Controle de Conta de Usuário é um recurso de segurança no Windows 7 que foi introduzido com o Windows Vista.

O principal objetivo do Controle de Conta de Usuário é reduzir a exposição e a superfície de ataque do sistema operacional Windows 7 exigindo que todos os usuários executem no modo de usuário padrão e limitando o acesso no nível do administrador a processos autorizados. Essa limitação minimiza a capacidade dos usuários de fazer alterações que poderiam desestabilizar seus computadores ou inadvertidamente expor a rede a vírus através de software mal-intencionado não detectado que tenha infectado o computador deles.

Por padrão, o Windows 7 executa todo aplicativo como um usuário padrão, mesmo se o usuário atual estiver conectado como membro do grupo Administradores. Por outro lado, quando usuários tentam iniciar um aplicativo que tenha sido marcado como dependente de permissões de administrador, o Windows 7 pede que eles confirmem suas intenções. Somente aplicativos executados com privilégios de administrador podem modificar comportamento e configurações globais e do sistema.

Para obter mais informações sobre o Controle de Conta de Usuário, consulte o tópico "Noções Básicas e Configuração do Controle de Conta do Usuário no Windows Vista" (https://go.microsoft.com/fwlink/?LinkId=70242 [a página pode estar em inglês] ).

Controle de Conta de Usuário e privilégio mínimo no Subsistema para Aplicativos Baseados no UNIX

Quando um usuário do Subsistema para Aplicativos Baseados no UNIX que é membro do grupo Administradores inicia um aplicativo, shell ou outra tarefa, os aplicativos são executados no contexto de segurança do usuário padrão.

O exemplo a seguir demonstra como o Controle de Conta de Usuário pode impedir que usuários que são membros do grupo Administradores executem tarefas administrativas sem privilégio elevado.

O Usuário A é membro do grupo Administradores e deseja criar um novo diretório chamado test no diretório / (raiz). A criação de novos diretórios no diretório raiz é permitida somente aos membros do grupo Administradores. Entretanto, embora o Usuário A seja membro do grupo Administradores, ele não pode criar o novo diretório por causa das restrições de LUA. O Usuário A abre um shell Korn com privilégios elevados e recebe permissão para criar o diretório test na raiz.

Para executar um aplicativo ou realizar tarefas com privilégios elevados, consulte os procedimentos a seguir.

Como executar um aplicativo como administrador

Com o Subsistema para Aplicativos Baseados no UNIX e seu pacote de download de ferramentas e utilitários instalado, existem duas formas de executar um aplicativo como administrador.

Usando a interface do Windows

Usando a linha de comando baseada em UNIX

Usando a interface do Windows

Para executar um aplicativo na interface do usuário do Windows que requer privilégios administrativos, execute as etapas a seguir.

Para executar um aplicativo como administrador na interface do Windows
  1. Clique com o botão direito do mouse no arquivo executável do aplicativo.

  2. No menu de atalho, clique em Executar como administrador.

Usando a linha de comando baseada em UNIX

Para executar um aplicativo no ambiente do shell Korn baseado em UNIX que requer privilégios administrativos, execute as etapas a seguir.

Para executar um aplicativo como administrador em um shell Korn
  1. Clique em Iniciar, em Todos os Programas, em Subsistema para Aplicativos Baseados no UNIX e aponte para Shell Korn.

  2. Clique com o botão direito do mouse em Shell Korn e clique em Executar como administrador.

  3. Quando você for solicitado a permitir que o shell seja executado como administrador, clique em Sim.

  4. Execute o programa que requer privilégios de Administrador.

  5. Quando você tiver terminado de executar o aplicativo que requer privilégio elevado, feche a sessão do shell.

    Para executar outras tarefas no ambiente do shell baseado em UNIX que não requer privilégios de Administrador, abra uma nova sessão do shell sem usar o comando Executar como administrador.

Chave do Registro EnableSuToRoot

O Controle de Conta de Usuário fica habilitado por padrão. Quando o Controle de Conta de Usuário está habilitado, qualquer aplicativo ou tarefa que represente outro usuário que é membro do grupo Administradores (usando os utilitários su, cron ou login, setuid, um dos membros da família de chamadas setuid ou exec_asuser como exemplos) sempre será executado no contexto de segurança de uma conta de usuário padrão.

Observação

Se um aplicativo representar um usuário padrão, ele terá o contexto de segurança completo de um usuário padrão. Para obter mais informações sobre usuários padrão, consulte a seção Introdução do tópico "Diretrizes e práticas recomendadas de desenvolvedores para aplicativos em um ambiente de privilégio mínimo" (https://go.microsoft.com/fwlink/?LinkId=70243) do site da Microsoft, que pode estar em inglês.

Com as configurações padrão, um aplicativo não pode representar o usuário raiz. Você pode controlar esse comportamento modificando a chave do Registro HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SUA\EnableSuToRoot.

Como modificar a chave do Registro EnableSuToRoot

Importante

A conta de Administrador é desabilitada por padrão no Windows 7 e no Windows Server 2008 R2 para ajudar a proteger computadores e dados contra o acesso de usuários não autorizados ou mal-intencionados, e deve estar habilitada para usuários que representam o usuário raiz ou o Administrador. Como a a conta de Administrador deve ser habilitada primeiro para alterar a configuração da chave do Registro EnableSuToRoot, o procedimento para completar essa tarefa vem imediatamente após. Você deve ser um membro do grupo Administradores no computador local para executar o procedimento a seguir.

Para habilitar a conta de Administrador
  1. Clique em Iniciar, clique com o botão direito do mouse em Computador e clique em Gerenciar.

  2. No painel de hierarquia do snap-in Gerenciamento do Computador, abra Usuários e Grupos Locais.

  3. Selecione Usuários.

  4. No painel de resultados, clique com o botão direito do mouse em Administrador e clique em Propriedades.

  5. Desmarque a caixa de seleção da opção Conta desativada.

  6. Clique em OK.

  7. Feche a janela Propriedades e, em seguida, feche o snap-in Gerenciamento do Computador.

Execute as etapas a seguir para alterar a configuração da chave do Registro EnableSuToRoot após a instalação do Subsistema para Aplicativos Baseados no UNIX.

Para alterar a configuração da chave do Registro EnableSuToRoot
  1. Clique em Iniciar e na caixa de texto Iniciar Pesquisa. Em seguida, digite regedit para abrir o Editor do Registro.

  2. No painel de hierarquia, abra HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SUA.

  3. No painel de resultados, clique duas vezes em EnableSuToRoot.

  4. Na caixa Dados do valor, digite 0 para não permitir a representação do usuário raiz ou 1 para permiti-la.

    A configuração padrão é 0.

  5. Clique em OK.

  6. Feche o Editor do Registro. Se solicitado, salve as alterações.

A definição do valor desta chave como 0 (a configuração padrão) significa que a representação do usuário raiz não está permitida. Quando o valor estiver definido como 1, a representação do usuário raiz estará permitida. Quando um aplicativo representa o usuário raiz ou a conta de administrador, ele possui o contexto de segurança administrativo do usuário (Administrador) raiz.

Setuid e privilégio administrativo

Se usuários membros do grupo Administradores tentarem marcar aplicativos com o atributo setuid, eles só conseguirão se tiverem permissão para executar aplicativos e realizar tarefas em um contexto de segurança administrativa.

Esse é um exemplo de como marcar o arquivo binário /bin/regpwd, que normalmente é marcado com o atributo setuid:

  1. Abra um shell Korn (ksh) com privilégio elevado, como descrito neste tópico.

  2. Digite chmod +s /bin/regpwd e pressione ENTER.

  3. Digite exit para fechar a sessão ksh.

Consulte também