Como Self elevar um aplicativo a um nível de privilégio alto no UAC

IMPORTANTE: Este artigo foi traduzido pelo software de tradução automática da Microsoft e eventualmente pode ter sido editado pela Microsoft Community através da tecnologia Community Translation Framework (CTF) ou por um tradutor profissional. A Microsoft oferece artigos traduzidos automaticamente por software, por tradutores profissionais e editados pela comunidade para que você tenha acesso a todos os artigos de nossa Base de Conhecimento em diversos idiomas. No entanto, um artigo traduzido pode conter erros de vocabulário, sintaxe e/ou gramática. A Microsoft não é responsável por qualquer inexatidão, erro ou dano causado por qualquer tradução imprecisa do conteúdo ou por seu uso pelos nossos clientes.

Clique aqui para ver a versão em Inglês deste artigo: 981778
INTRODUÇÃO
Este artigo descreve um exemplo de código Framework All-In-One que está disponível para download. O código de exemplo está relacionado a User Account Control (UAC), um componente de segurança no Windows Vista e em versões mais recentes dos sistemas operacionais Windows. Quando o UAC está totalmente ativado, os administradores interativos geralmente são executados com menos privilégios de usuário. Este exemplo de código mostra como auto elevar um aplicativo a um nível de privilégio alto dando consentimento explícito por meio da interface do usuário de consentimento.

Nível de dificuldade

Informações sobre o download

Para baixar este exemplo de código, clique no link a seguir:

Visão geral técnica

O UAC foi introduzido no Windows Vista. Quando o UAC está totalmente ativado, os administradores interativos geralmente são executados com menos privilégios de usuário. No entanto, os administradores interativos automática podem elevar dando consentimento explícito com a interface do usuário de consentimento. Interativos administradores executam tarefas administrativas que incluem a instalação de software e drivers, alterar configurações do sistema, exibir ou alterar outras contas de usuário e executar ferramentas administrativas.

Este exemplo de código mostra os seguintes pontos técnicos em três linguagens de programação populares (Visual C++, Visual C#, Baisc.NET Visual):
  • Como exibir um ícone de escudo UAC da interface do usuário para tarefas que exigem elevação.
  • Como Self elevar o processo atual.
  • Como aumentar automaticamente o processo quando ele é iniciado.

Demonstração

Siga estas etapas para uma demonstração deste exemplo de código do UAC:
  1. Depois que você criar com êxito o projeto de amostra no Visual Studio 2008, você recebe os seguintes arquivos de aplicativo, dependendo da linguagem de programação que você está usando:
    • CppUACSelfElevation.exe
    • CSUACSelfElevation.exe
    • VBUACSelfElevation.exe
  2. Execute o aplicativo como um administrador protegida em um sistema Windows Vista ou Windows 7 com o UAC ativado totalmente. O aplicativo deve exibir o seguinte conteúdo na caixa de diálogo principal:
    a caixa de diálogo principal
    Observação: Há um ícone de escudo UAC no auto elevar botão.
  3. Clique o auto elevar botão. Em seguida, você verá a interface do usuário de consentimento seguintes:
    Interface de usuário consentida
  4. Clique em Simpara aprovar a elevação. Em seguida, o aplicativo original é reiniciado, executando como administrador elevado.
  5. Feche o aplicativo.
Observação: Para obter mais informações sobre como criar o aplicativo de exemplo, consulte o arquivo readme. txt incluído no pacote de download.

Categoria de tecnologia

  • Segurança

Idiomas

Este exemplo de código contém as seguintes linguagens de programação.
IdiomaNome do projeto
Visual C++ .NETCppUACSelfElevation
O Visual C#CSUACSelfElevation
Visual Basic .NETVBUACSelfElevation

Pré-requisitos:

  • Você deve executar este código de exemplo no Windows Vista ou em sistemas operacionais Windows posteriores.
  • Este aplicativo de exemplo foi criado usando o Visual Studio 2008 com Service Pack 1 instalado.

Marcas de formatação

  • UAC
Mais Informações

O que é a estrutura de código All-In-One?

All-In-One código Framework usa amostras de código em linguagens de programação diferentes para ilustrar a maioria das técnicas de desenvolvimento Microsoft. Cada exemplo de código é cuidadosamente selecionado, composto e documentado para mostrar os cenários comuns de código. Para obter mais informações sobre o All-In-One código Framework, visite o seguinte Web site de uma estrutura de código:

Como encontrar mais amostras de código Framework All-In-One

Para obter mais exemplos de código Framework All-In-One, procure por "kbcodefx" com palavras-chave relacionadas no Microsoft site de suporte. Ou visite o seguinte site da Microsoft:
Referências
Para obter mais informações, visite os seguintes sites da Microsoft Developer Network (MSDN):
Isenção de responsabilidade de publicação rápida
Microsoft corporation e/ou em seus respectivos fornecedores tornam não oferece representações sobre a adequação, confiabilidade ou precisão das informações e gráficos relacionados aqui contidos. Todas essas informações e gráficos relacionados são fornecidos "como estão" sem garantia de nenhum tipo. Microsoft e/ou seus respectivos fornecedores ISENTAM-se todas as garantias e condições relativas a essas informações e gráficos relacionados, incluindo todas as garantias implícitas e condições de comercialização, adequação a um propósito particular diligência, título e não-violação. Você especificamente concorda que em nenhuma hipótese Microsoft e/ou seus fornecedores serão responsáveis por quaisquer danos diretos, indiretos, PUNITIVOS, INCIDENTAIS, danos especiais, conseqüenciais ou danos, incluindo, sem limitação, danos por perda de uso, dados ou lucros, decorrentes ou de alguma forma associadas do uso ou da incapacidade de usar as informações e gráficos relacionados contidos neste documento , com base em contrato, AGRAVO, negligência, responsabilidade estrita ou outra forma, mesmo que a Microsoft ou qualquer um de seus fornecedores tenha sido alertada sobre a possibilidade dos danos.
Propriedades

ID do Artigo: 981778 - Última Revisão: 01/26/2016 15:42:00 - Revisão: 1.0

Microsoft Visual Studio 2008 Service Pack 1, Microsoft Visual Studio 2008 Academic Edition, Microsoft Visual Studio 2008 Professional Edition, Microsoft Visual Studio 2008 Standard Edition, Microsoft Visual Studio 2008 Team Edition for Database Professionals, Microsoft Visual Studio 2008 Team Edition for Software Architects, Microsoft Visual Studio 2008 Team Edition for Software Developers, Microsoft Visual Studio 2008 Team Suite

  • kbexpertiseadvanced kbsurveynew kbinfo kbnomt kbrapidpub kbcodefx atdownload kbmt KB981778 KbMtpt
Comentários