Compartilhar via


Caixa de diálogo de aviso de segurança (arquivo de projeto MSBuild)

In Visual Studio 2005 e versões posteriores, você pode personalizar um MSBuild arquivo de projeto para redefinir o processo de compilação. Partes do processo de compilação que definido no arquivo de projeto são executados em time de design imediatamente depois que um projeto é carregado no ambiente de desenvolvimento integrado (IDE).The Aviso de segurançacaixa de diálogo detecta arquivos de projeto personalizado que podem apresentar riscos de segurança e permite que você escolher como o IDE deve em em aberto o projeto.

Elementos da Interface do Usuário

  • Mais detalhes
    Abre uma caixa de diálogo que explica por que o arquivo de projeto foi considerado um risco à segurança.

  • Carregar projeto para navegação
    Abre o projeto no IDE com maior segurança.Esta opção permite pesquisar o Sumário do projeto, mas algumas funcionalidades, sistema autônomo IntelliSense, é restrita.Quando um projeto é carregado para navegação, ações sistema autônomo compilar, limpar, publicar ou abrir designers ainda podem permanecer inseguros.

  • Carregar projeto normalmente
    Abre o projeto normalmente no IDE.Use esta opção se você confia na fonte e entender os riscos potenciais envolvidos.O IDE não restringe a nenhuma funcionalidade de projeto e não solicitará novamente para este projeto.

  • Pergunte-me para cada projeto desta solução
    selecionar esta opção para ser avisado para cada projeto na solução.

Determinando arquivos não seguros do projeto

Há várias razões por que um arquivo de projeto é considerado um risco à segurança.Essas razões são:

  • O arquivo de projeto contém um ou mais não padrão Importação elementos.

  • O arquivo de projeto substitui um ou mais destinos potencialmente não seguros.Para obter mais informações no público-alvo, consulte Destinos do MSBuild.

  • O arquivo de projeto substitui um ou mais propriedades potencialmente não seguras.Para obter mais informações sobre propriedades, consulte Propriedades do MSBuild.

  • O arquivo de projeto define um ou mais itens potencialmente não seguros.Para obter mais informações sobre itens, consulte Itens do MSBuild.

  • O arquivo de projeto contém um ou mais UsingTask elementos.

  • Itens de projeto estão localizados em um local seguro.

Elementos de importação não-padrão

Uma lista de arquivos .targets padrão é armazenada no registro em HKEY_LOCALMACHINE\Software\Microsoft\VisualStudio\8.0\MSBuild\SafeImports\.Se um arquivo de projeto importa um arquivo .targets que não é armazenado no registro, ela será determinada para ser um risco à segurança.

Destinos potencialmente perigosos

O IDE executa vários destinos ao carregar um projeto.Se um desses destinos foi substituído em um arquivo de projeto personalizado, ele é reconhecido sistema autônomo um risco à segurança.Os destinos do IDE é executado durante o carregamento de um projeto incluem:

  • Compilar

  • GetFrameworkPaths

  • AllProjectOutputGroupsDependencies

  • AllProjectOutputGroups

  • CopyRunEnvironmentFiles

  • ResolveComReferences

  • ResolveAssemblyReferences

  • ResolveNativeReferences

Propriedades potencialmente perigosas

A lista a seguir explica os tipos básicos de propriedades possivelmente perigosos:

  • Propriedades usadas no DependsOn atributo de alvos perigosos.

  • Propriedades usadas no Project atributos de Import elementos usados nos arquivos .targets seguro.

  • Propriedades usadas pelo destinos potencialmente perigosos ou suas tarefas.

  • Propriedades que começam com um sublinhado (_).

  • Existem também propriedades especiais usadas pelo IDE para gerenciar destinos potencialmente perigosos, itens e propriedades.Essas propriedades não podem ser substituídas em um arquivo de projeto.Propriedades especiais são:

  • LoadTimeSensitiveTargets

  • LoadTimeSensitiveProperties

  • LoadTimeSensitiveItems

  • LoadTimeCheckItemLocation

Itens potencialmente perigosos

Certos itens usados pelos arquivos .targets importados não podem ser substituídos em um arquivo de projeto.Se um ou mais desses itens são substituídos, o projeto é considerado um risco à segurança.

Elementos UsingTask

Uma tarefa personalizada, poderá executar código potencialmente não seguro.Portanto, todos os arquivos de projeto que contêm um ou mais UsingTask elementos são considerados um risco à segurança.

Itens de projeto em locais potencialmente perigosos

Alguns itens em arquivos .targets contrário seguro usam conjunto de propriedades projeto usuário-defined seus caminhos.Para impedir que um item de substituição de um arquivo importante, arquivo de projeto s que contêm caminhos de item que ser avaliada como um dos locais a seguir ou todas as subpastas desses locais são considerados ser possíveis riscos de segurança, a menos que também estão localizados em ou abaixo do arquivo de solução ou arquivo de projeto diretório:

  • O diretório raiz de qualquer unidade.

  • O diretório do Windows, por exemplo, C:\Windows\.

  • O diretório arquivos de programa, por exemplo, C:\Program Files\.

Consulte também

Conceitos

MSBuild

Outros recursos

Referência do MSBuild

Conceitos do MSBuild