Partilhar via


Controle de Conta de Usuário e WMI

O Controle de Conta de Usuário (UAC) afeta os dados WMI retornados de uma ferramenta de linha de comando, o acesso remoto e como os scripts devem ser executados. Para obter mais informações sobre o UAC, consulte Introdução ao Controle de Conta de Usuário.

As seções a seguir descrevem a funcionalidade do UAC:

Controlo de Conta de Utilizador

No UAC, as contas no grupo Administradores local têm dois tokens de acesso , um com privilégios de usuário padrão e outro com privilégios de administrador. Devido à filtragem de token de acesso do UAC, um script normalmente é executado sob o token de usuário padrão, a menos que seja executado "como um administrador" no modo de privilégio elevado. Nem todos os scripts exigiam privilégios administrativos.

Os scripts não podem determinar programaticamente se estão sendo executados sob um token de segurança de usuário padrão ou um token de administrador. O script pode falhar com um erro de acesso negado. Se o script requer privilégios de administrador, ele deve ser executado no modo elevado. O acesso aos namespaces WMI difere dependendo se o script é executado no modo elevado. Algumas operações WMI, como obter dados ou executar a maioria dos métodos, não exigem que a conta seja executada como administrador. Para obter mais informações sobre permissões de acesso padrão, consulte Acesso a namespaces WMI e Executando operações privilegiadas.

Devido ao Controle de Conta de Usuário, a conta que executa o script deve estar no grupo Administradores no computador local para ter a capacidade de ser executada com direitos elevados.

Você pode executar um script ou um aplicativo com direitos elevados executando um dos seguintes métodos:

executar um script no modo elevado

  1. Abra uma janela de Prompt de Comando clicando com o botão direito do mouse em Prompt de Comando no menu Iniciar e, em seguida, clicando em Executar como administrador.
  2. Agende o script para ser executado com privilégios elevados usando o Agendador de Tarefas. Para obter mais informações, consulte contextos de segurança para executar tarefas.
  3. Execute o script usando a conta de administrador interna.

Conta necessária para executar ferramentas de Command-Line WMI

Para executar o seguinte WMI Command-Line Tools, sua conta deve estar no grupo Administradores e a ferramenta deve ser executada a partir de um prompt de comando elevado. A conta de administrador interna também pode executar essas ferramentas.

  • mofcomp

  • wmic

    A primeira vez que você executar o Wmic após a instalação do sistema, ele deve ser executado a partir de um prompt de comando elevado. O modo elevado pode não ser necessário para execuções subsequentes do Wmic, a menos que as operações WMI exijam privilégio de administrador.

  • Winmgmt

  • wmiadap

Para executar ode Controle WMI(Wmimgmt.msc) e fazer alterações nas configurações de segurança ou auditoria do namespace WMI, sua conta deve ter o direito Editar Segurança explicitamente concedido ou estar no grupo Administradores local. A conta de administrador interna também pode alterar a segurança ou a auditoria de um namespace.

Wbemtest.exe, uma ferramenta de linha de comando que não é suportada pelos serviços de Atendimento ao Cliente da Microsoft, pode ser executada por contas que não estão no grupo Administradores local, a menos que uma operação específica exija privilégios normalmente concedidos a contas de Administrador.

Manipulando conexões remotas no UAC

Se você está se conectando a um computador remoto em um domínio ou em um grupo de trabalho determina se a filtragem UAC ocorre.

Se o computador fizer parte de um domínio, conecte-se ao computador de destino usando uma conta de domínio que esteja no grupo Administradores local do computador remoto. Em seguida, a filtragem de token de acesso do UAC não afetará as contas de domínio no grupo Administradores local. Não use uma conta local que não seja de domínio no computador remoto, mesmo que a conta esteja no grupo Administradores.

Em um grupo de trabalho, a conta que se conecta ao computador remoto é um usuário local nesse computador. Mesmo que a conta esteja no grupo Administradores, a filtragem UAC significa que um script é executado como um usuário padrão. Uma prática recomendada é criar um grupo de usuários local dedicado ou uma conta de usuário no computador de destino especificamente para conexões remotas.

A segurança deve ser ajustada para poder usar essa conta, porque a conta nunca teve privilégios administrativos. Dê ao usuário local:

  • Iniciar e ativar remotamente os direitos de acesso ao DCOM. Para obter mais informações, consulte Conectando-se ao WMI em um computador remoto.
  • Direitos para acessar o namespace WMI remotamente (Remote Enable). Para obter mais informações, consulte acesso a namespaces WMI.
  • Direito de acesso ao objeto protegível específico, dependendo da segurança exigida pelo objeto.

Se você usar uma conta local, seja porque você está em um grupo de trabalho ou é uma conta de computador local, você pode ser forçado a dar tarefas específicas para um usuário local. Por exemplo, você pode conceder ao usuário o direito de parar ou iniciar um serviço específico por meio do comando SC.exe, do GetSecurityDescriptor e SetSecurityDescriptor métodos de Win32_Serviceou por meio da Diretiva de Grupo usando Gpedit.msc. Alguns objetos protegíveis podem não permitir que um usuário padrão execute tarefas e não oferecem meios de alterar a segurança padrão. Nesse caso, talvez seja necessário desabilitar o UAC para que a conta de usuário local não seja filtrada e, em vez disso, se torne um administrador completo. Esteja ciente de que, por razões de segurança, desativar o UAC deve ser um último recurso.

A desativação do UAC remoto alterando a entrada do Registro que controla o UAC remoto não é recomendada, mas pode ser necessária em um grupo de trabalho. A entrada do Registro é HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\sistema\LocalAccountTokenFilterPolicy. Quando o valor dessa entrada é zero (0), a filtragem de token de acesso UAC remoto está habilitada. Quando o valor é 1, o UAC remoto é desativado.

Efeito do UAC em dados WMI retornados a scripts ou aplicativos

Se um script ou aplicativo estiver sendo executado em uma conta no grupo Administradores, mas não estiver sendo executado com um privilégio elevado, talvez você não obtenha todos os dados retornados porque essa conta está sendo executada como um usuário padrão. Os provedores de WMI para algumas classes não retornam todas as instâncias para uma conta de usuário padrão ou uma conta de administrador que não está sendo executada como administrador completo devido à filtragem do UAC.

As classes a seguir não retornam algumas instâncias quando a conta é filtrada pelo UAC:

As classes a seguir não retornam algumas propriedades quando a conta é filtrada pelo UAC:

Sobre o WMI

acesso a objetos protegíveis WMI

Alterando a segurança de acesso em objetos protegíveis