Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Os aplicativos ClickOnce são baseados no .NET Framework e estão sujeitos a restrições de segurança de acesso ao código. Por esse motivo, é importante que você entenda as implicações da segurança de acesso ao código e escreva seus aplicativos ClickOnce de acordo.
A segurança de acesso ao código é um mecanismo no .NET Framework que ajuda a limitar o acesso que o código tem a recursos e operações protegidos. Você deve configurar as permissões de segurança de acesso ao código para seu aplicativo ClickOnce para usar a zona apropriada para o local do instalador do aplicativo. Na maioria dos casos, você pode escolher a zona da Internet para um conjunto limitado de permissões ou a zona da Intranet Local para um conjunto maior de permissões.
Observação
No ClickOnce para .NET Core e .NET 5 ou posterior, a Segurança de Acesso ao Código não é suportada. No .NET Framework, o uso da Segurança de Acesso ao Código não é uma prática recomendada e não é recomendado.
Segurança padrão de acesso ao código ClickOnce
Por padrão, um aplicativo ClickOnce recebe permissões de Confiança Total quando é instalado ou executado em um computador cliente.
Um aplicativo que tem permissões de confiança total tem acesso irrestrito a recursos como o sistema de arquivos e o registro. Isso potencialmente permite que seu aplicativo (e o sistema do usuário final) seja explorado por código mal-intencionado.
Quando um aplicativo requer permissões de Confiança Total, o usuário final pode ser solicitado a conceder permissões ao aplicativo. Isso significa que o aplicativo realmente não fornece uma experiência ClickOnce e o prompt pode ser confuso para usuários menos experientes.
Observação
Ao instalar um aplicativo a partir de uma mídia removível, como um CD-ROM, o usuário não é solicitado. Além disso, um administrador de rede pode configurar a política de rede para que os usuários não sejam solicitados quando instalam um aplicativo de uma fonte confiável. Para obter mais informações, consulte Visão geral da implantação de aplicativos confiáveis.
Para restringir as permissões para um aplicativo ClickOnce, você pode modificar as permissões de segurança de acesso ao código para seu aplicativo para solicitar a zona que melhor se adapta às permissões que seu aplicativo exige. Na maioria dos casos, você pode selecionar a zona a partir da qual o aplicativo está sendo implantado. Por exemplo, se seu aplicativo for um aplicativo empresarial, você poderá usar a zona da Intranet Local . Se a sua aplicação for uma aplicação da Internet, pode utilizar a zona da Internet .
Configurar permissões de segurança
Você deve sempre configurar seu aplicativo ClickOnce para solicitar a zona apropriada para limitar as permissões de segurança de acesso ao código. Você pode configurar permissões de segurança na página Segurança do Designer de Projeto.
A página Segurança no Designer de Projeto contém uma caixa de seleção Habilitar Configurações de Segurança ClickOnce . Quando essa caixa de seleção é marcada, as solicitações de permissão de segurança são adicionadas ao manifesto de implantação do seu aplicativo. No momento da instalação, o usuário será solicitado a conceder permissões se as permissões solicitadas excederem as permissões padrão para a zona a partir da qual o aplicativo é implantado. Para obter mais informações, consulte Como habilitar as configurações de segurança do ClickOnce.
Aplicativos implantados de locais diferentes recebem diferentes níveis de permissões sem avisar. Por exemplo, quando um aplicativo é implantado da Internet, ele recebe um conjunto altamente restritivo de permissões. Quando instalado a partir de uma Intranet local, recebe mais permissões e, quando instalado a partir de um CD-ROM, recebe permissões de Confiança Total.
Como ponto de partida para configurar permissões, você pode selecionar uma zona de segurança na lista Zona na página Segurança . Se o seu aplicativo for potencialmente implantado de mais de uma zona, selecione a zona com menos permissões. Para obter mais informações, consulte Como definir uma zona de segurança para um aplicativo ClickOnce.
As propriedades que podem ser definidas variam de acordo com o conjunto de permissões; Nem todos os conjuntos de permissões têm 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 Como definir permissões personalizadas para um aplicativo ClickOnce.
Depurar um aplicativo que tenha permissões restritas
Como desenvolvedor, você provavelmente executa seu computador de desenvolvimento com permissões de confiança total. Portanto, você não vê as mesmas exceções de segurança ao depurar o aplicativo que os usuários podem ver quando o executam com permissões restritas.
Para capturar essas exceções, você precisa depurar o aplicativo com as mesmas permissões que o usuário final. A depuração com permissões restritas pode ser habilitada na página Segurança do Designer de Projeto.
Ao depurar um aplicativo com permissões restritas, exceções serão lançadas para quaisquer requisitos de segurança de código que não tenham sido habilitados na página Segurança. Um auxiliar de exceção será exibido, fornecendo sugestões sobre como modificar seu código para evitar a exceção.
Além disso, quando você escreve código, o recurso IntelliSense no Editor de Códigos desabilitará todos os membros que não estão incluídos nas permissões de segurança que você configurou.
Para obter mais informações, consulte Como depurar um aplicativo ClickOnce com permissões restritas.
Permissões de segurança para aplicativos hospedados no navegador
Visual Studio fornece os seguintes tipos de projeto para aplicativos Windows Presentation Foundation (WPF):
Aplicativo WPF para Windows
Aplicativo de navegador da Web WPF
Biblioteca de controle personalizado do WPF
Biblioteca de serviços do WPF
Desses tipos de projeto, apenas os aplicativos de navegador da Web WPF são hospedados em um navegador da Web e, portanto, exigem configurações especiais de implantação e segurança. As configurações de segurança padrão para esses aplicativos são as seguintes:
Ativar configurações de segurança do ClickOnce
Este é um aplicativo de confiança parcial
Zona da Internet (com permissão padrão definida para aplicativos de navegador da Web WPF selecionados)
Na caixa de diálogo Configurações Avançadas de Segurança , a caixa de seleção Depurar este aplicativo com o conjunto de permissões selecionado está marcada e desabilitada. Isso ocorre porque Debug In Zone não pode ser desativado para aplicativos hospedados no navegador.
Conteúdo relacionado
- Aplicativos ClickOnce seguros
- Habilitar e configurar as configurações de segurança do ClickOnce
- Definir uma zona de segurança para um aplicativo ClickOnce
- Definir permissões personalizadas para um aplicativo ClickOnce
- Depurar um aplicativo ClickOnce com permissões restritas
- Visão geral da implantação de aplicativos confiáveis
- Página de Segurança, Project Designer