Compartilhar via


Código Segurança de acesso a aplicativos de ClickOnce

ClickOnce aplicativos são baseados em de.NET Framework e estão sujeitos a restrições de segurança de acesso do código. Por esse motivo, é importante que você entenda as implicações do código de segurança de acesso e escrevem aplicativos ClickOnce adequadamente.

Segurança de acesso de código é um mecanismo na.NET Framework que ajuda a limitar o acesso que código tem a recursos protegidos e operações. Você deve configurar as permissões de segurança de acesso de código para seu aplicativo de ClickOnce usar a zona apropriada para o local do instalador do aplicativo. Na maioria dos casos, você pode escolher a Internet zona para um conjunto limitado de permissões ou o Da Intranet Local zona para um maior conjunto de permissões.

Segurança de acesso ao código de ClickOnce padrão

Por padrão, um aplicativo de ClickOnce recebe permissões de confiança total, quando ele é instalado ou executado em um computador cliente.

  • Um aplicativo que tenha permissões de confiança total tem acesso irrestrito aos recursos como, por exemplo, o sistema de arquivos e registro. Isso potencialmente permite que seu aplicativo (e sistema do usuário final) ser explorada por código mal-intencionado.

  • Quando um aplicativo requer permissões de confiança total, o usuário final pode ser solicitado para conceder permissões para o aplicativo. Isso significa que o aplicativo realmente não fornecem uma experiência de ClickOnce e o prompt pode ser potencialmente confuso para os usuários menos experientes.

    ObservaçãoObservação

    Ao instalar um aplicativo de mídia removível como, por exemplo, um CD-ROM, o usuário não é solicitado. Além disso, um administrador de rede pode configurar a diretiva de rede para que os usuários não são solicitados ao instalar um aplicativo de uma fonte confiável. Para obter mais informações, consulte Visão geral sobre implantação de aplicativos confiáveis.

Para restringir as permissões para um aplicativo de ClickOnce, você pode modificar as permissões de segurança de acesso de código para seu aplicativo solicitar a zona que melhor atenda as permissões que seu aplicativo requer. Na maioria dos casos, você pode selecionar a zona da qual o aplicativo será implantado. Por exemplo, se seu aplicativo é uma aplicação empresarial, você pode usar o Da Intranet Local zona. Se seu aplicativo for um aplicativo da internet, você pode usar o Internet zona.

Configurando permissões de segurança

Você sempre deve configurar seu aplicativo de ClickOnce para solicitar a zona apropriada para limitar as permissões de segurança de acesso do código. Você pode configurar permissões de segurança na Security página da Project Designer.

O Security página o Project Designer contém um Ativar configurações de segurança de ClickOnce caixa de seleção. Quando esta caixa de seleção estiver marcada, as solicitações de permissão de segurança são adicionadas para o manifesto de implantação para seu aplicativo. No momento da instalação, o usuário será solicitado para conceder permissões para se as permissões solicitadas excederem as permissões padrão para a zona a partir do qual o aplicativo será implantado. Para obter mais informações, consulte How to: Ativar configurações de segurança de ClickOnce.

Aplicativos implantados a partir de locais diferentes são concedidos a diferentes níveis de permissões sem avisar. Por exemplo, quando um aplicativo é implantado pela Internet, ele recebe um conjunto altamente restritivo de permissões. Quando instalada a partir de uma Intranet local, ele recebe mais permissões e, quando instalado a partir de um CD-ROM, ele recebe permissões de confiança total.

Como ponto de partida para a configuração de permissões, você pode selecionar uma zona de segurança da zona listar na Security página. Se seu aplicativo será implantado potencialmente mais de uma zona, selecione a zona com o mínimo de permissões. Para obter mais informações, consulte How to: Definir uma zona de segurança para um aplicativo de ClickOnce.

As propriedades que podem ser definidas variam por conjunto de permissões; nem todos os conjuntos de permissões tem propriedades configuráveis. Para obter mais informações sobre a lista completa de permissões que seu aplicativo pode solicitar, consulte System.Security.Permissions. Para obter mais informações sobre como definir permissões para uma zona personalizada, consulte How to: Definir permissões Personalizar para um aplicativo de ClickOnce.

Depurando um aplicativo que tem permissões restritas

Como desenvolvedor, provavelmente você executar o computador de desenvolvimento com permissões de confiança total. Portanto, você não vir as exceções de segurança mesmo quando você depurar o aplicativo que os usuários podem ver quando executá-lo com permissões restritas.

Para capturar essas exceções, você precisará depurar o aplicativo com as mesmas permissões que o usuário final. Com permissões restritas de depuração pode ser ativada na Security página da Project Designer.

Quando você depurar um aplicativo com permissões restritas, exceções serão geradas para demandas de segurança de código que não foi ativadas o Security página. Um exceção auxiliar aparecerá, fornecendo sugestões sobre como modificar seu código para evitar a exceção.

Além disso, quando você escreve o código, o recurso de IntelliSense no Editor de código desativará todos os membros que não estão incluídos nas permissões de segurança que você tenha configurado.

Para obter mais informações, consulte How to: Depurar um aplicativo de ClickOnce com permissões restritas.

Permissões de segurança para aplicativos hospedados por navegador

Visual Studio fornece os seguintes tipos de projeto para aplicativos de Windows Presentation Foundation (WPF):

  • Aplicativo do WPF Windows

  • Aplicativo de navegador de Web do WPF

  • Biblioteca de controle personalizado WPF

  • Biblioteca de serviço do WPF

Um desses tipos de projeto somente WPF aplicativos de navegador de Web são hospedados em um navegador da Web e, portanto, requerem implantação especial e configurações de segurança. As configurações de segurança padrão para esses aplicativos são:

  • Ativar configurações de segurança de ClickOnce

  • Este é um aplicativo parcialmente confiável

  • Zona da Internet (com a permissão padrão definido para aplicativos de navegador da Web WPF selecionado)

No Configurações de segurança avançadas caixa de diálogo, o depurar este aplicativo com o conjunto de permissões selecionado caixa de seleção está selecionada e desabilitada. Isso ocorre porque a depuração na região não pode ser desativado para aplicativos hospedados por navegador. Para obter mais informações, consulte Visão geral sobre WPF XAML Browser Applications.

Consulte também

Tarefas

How to: Ativar configurações de segurança de ClickOnce

How to: Definir uma zona de segurança para um aplicativo de ClickOnce

How to: Definir permissões Personalizar para um aplicativo de ClickOnce

How to: Depurar um aplicativo de ClickOnce com permissões restritas

Referência

Página de segurança, Designer de projeto

Conceitos

Protegendo aplicativos de ClickOnce

Visão geral sobre implantação de aplicativos confiáveis