Não foi possível instalar o aplicativo ClickOnce devido às configurações de segurança (Windows 10)

70

Ao tentar instalar um aplicativo ClickOnce assinado pela Microsoft, aparece um erro informando "Seu administrador bloqueou este aplicativo porque isso representa um risco à segurança do seu computador" e "Suas configurações de segurança não permitem a instalação desse aplicativo no seu computador" .

Como administrador que definiria essas políticas, não consigo descobrir por que isso está sendo bloqueado para apenas um usuário e não para outros usuários cujos PCs são baseados na mesma imagem e por que funciona para outros usuários que deveriam ser desfrutando dos mesmos privilégios que o usuário que está recebendo a seguinte mensagem. Observe que exatamente as mesmas políticas de grupo de domínio são aplicadas a esse usuário que está apresentando o erro e a usuários que não estão recebendo o erro.

Imgur

Mesmo tentar executar o aplicativo "como administrador" não resolve o problema. Os logs de eventos não mostram erros e, de outra forma, não consigo encontrar nenhum registro para ajudar a diagnosticar o problema.

Quais políticas ou configurações locais permitiriam ou negariam esse aplicativo?

Beems
fonte
Requer Internet ou Intranet Zone (confiança total para instalação em CD-ROM) de acordo com msdn.microsoft.com/en-us/library/142dbbz4(v=vs.90).aspx
Esse aviso está acontecendo na máquina de um único usuário ou há vários usuários em várias máquinas, com esse problema?
Ramhound 21/09
Notei, embora possivelmente não muito claramente, na pergunta original que estava sendo bloqueado por 'apenas um usuário'.
Beems 22/09
Este parece ser um grande problema (34.438 visualizações). Como impedir que isso aconteça no computador de outra pessoa, se eu sou um desenvolvedor? Esse problema surgiu ao criar programas no Visual Studio e tentar executar o Setup.exe para o meu programa.
Daniel
@ Daniel Se o seu aplicativo não exigir escalação, tente definir o valor do registro em HKCU: HKCU\SOFTWARE\MICROSOFT\.NETFramework\Security\TrustManager\PromptingLevel\Interneta Enabled(divulgação completa: não testei isso). Caso contrário, se isso não funcionar, você pode tentar incluir um processo escalável que o definirá em HKLM
Beems

Respostas:

94

Isso é causado pelo "comportamento do prompt de confiança do ClickOnce": https://msdn.microsoft.com/en-us/library/ee308453.aspx

Para ajustar isso, basta alterar os valores no Registro e você poderá instalar o aplicativo.

Para habilitar o prompt de confiança ClickOnce usando o editor de registro Abra o editor de registro:

Clique em Iniciar e, em seguida, clique em Executar.

Na caixa Abrir, digite regedit32 e clique em OK.

Encontre a seguinte chave do Registro:

\ HKEY_LOCAL_MACHINE \ SOFTWARE \ MICROSOFT \ .NETFramework \ Security \ TrustManager \ PromptingLevel

Se a chave não existir, crie-a.

Adicione as seguintes subchaves como String Value, se elas ainda não existirem, com os valores associados mostrados na tabela a seguir.

Imagem da tabela

No meu computador, os valores foram definidos como "Desativados" e não tenho idéia de qual aplicativo fez isso. Alterei os valores para o padrão e agora tudo funciona novamente como deveria.

Ou você pode simplesmente excluir a chave "TrustManager" e tudo está funcionando também.


Thomas Sturzenegger
fonte
14
Obrigado, este foi realmente o problema. Mudei "HKLM\SOFTWARE\MICROSOFT\.NETFramework\Security\TrustManager\PromptingLevel\Internet"para Enablede agora funciona como pretendido.
Beems 22/09
1
Gostaria de mencionar que a opção padrão é "Ativado" para todos os sites, exceto os não confiáveis.
Hooch
3
No meu caso eu preciso mudar \HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\Security\TrustManager\PromptingLevelparaEnabled
MaciejLisCK
2
Existem entradas diferentes para zonas diferentes, como Internet, LocalIntranet, MyComputer, TrustedSites, UntrustedSites. Escolha aquele que se adapta ao seu cenário e altere seu valor para Enabled.
smwikipedia
4
como diabos um usuário normal deveria fazer isso? ok, bem, quero dizer, se alguém não é estúpido, pode pesquisar no google e encontrar essa resposta e fazê-lo .. mas você sabe o que eu quero dizer, que dor na bunda. Se o Windows não fosse o melhor sistema operacional para produtividade, eu não suportaria essa porcaria (e a reinicialização forçada de atualização automática)
Mikey
2

Aqui está um script do PowerShell que atualizará os valores:

Set-Itemproperty -path 'HKLM:\SOFTWARE\MICROSOFT\.NETFramework\Security\TrustManager\PromptingLevel' -Name 'Internet' -value 'Enabled'
Set-Itemproperty -path 'HKLM:\SOFTWARE\MICROSOFT\.NETFramework\Security\TrustManager\PromptingLevel' -Name 'LocalIntranet' -value 'Enabled'
Set-Itemproperty -path 'HKLM:\SOFTWARE\MICROSOFT\.NETFramework\Security\TrustManager\PromptingLevel' -Name 'MyComputer' -value 'Enabled'
Set-Itemproperty -path 'HKLM:\SOFTWARE\MICROSOFT\.NETFramework\Security\TrustManager\PromptingLevel' -Name 'TrustedSites' -value 'Enabled'
Set-Itemproperty -path 'HKLM:\SOFTWARE\MICROSOFT\.NETFramework\Security\TrustManager\PromptingLevel' -Name 'UntrustedSites' -value 'Enabled'

Basta copiar / colar o código acima, no PowerShell "elevado" (clique com o botão direito do mouse em administrador).

E se você receber alguns erros, provavelmente é porque o caminho não existe, execute estes comandos

New-Item "HKLM:\SOFTWARE\MICROSOFT\.NETFramework\Security\TrustManager\PromptingLevel" -force | Out-Null
New-ItemProperty -path 'HKLM:\SOFTWARE\MICROSOFT\.NETFramework\Security\TrustManager\PromptingLevel' -Name 'Internet' -value 'Enabled'
New-ItemProperty -path 'HKLM:\SOFTWARE\MICROSOFT\.NETFramework\Security\TrustManager\PromptingLevel' -Name 'LocalIntranet' -value 'Enabled'
New-ItemProperty -path 'HKLM:\SOFTWARE\MICROSOFT\.NETFramework\Security\TrustManager\PromptingLevel' -Name 'MyComputer' -value 'Enabled'
New-ItemProperty -path 'HKLM:\SOFTWARE\MICROSOFT\.NETFramework\Security\TrustManager\PromptingLevel' -Name 'TrustedSites' -value 'Enabled'
New-ItemProperty -path 'HKLM:\SOFTWARE\MICROSOFT\.NETFramework\Security\TrustManager\PromptingLevel' -Name 'UntrustedSites' -value 'Enabled'
Aleksandar Pavić
fonte