Невозможно установить приложение ClickOnce из-за настроек безопасности (Windows 10)

При попытке установить приложение ClickOnce, подписанное Microsoft, появляется сообщение об ошибке "Ваш администратор заблокировал это приложение, так как оно потенциально угрожает вашему компьютеру" и "Ваши параметры безопасности не позволяют устанавливать это приложение на ваш компьютер",

Как администратор, который бы установил указанные политики, я не могу понять, почему это блокируется только для одного пользователя, а не для других пользователей, чьи компьютеры основаны на том же образе, и почему это работает для других пользователей, которые должны быть пользуясь теми же привилегиями, что и пользователь, получающий следующее сообщение. Обратите внимание, что те же самые групповые политики домена применяются к этому пользователю, который испытывает ошибку, и к пользователям, которые не получают ошибку.

Imgur

Даже попытка запустить приложение "как администратор" не решает проблему. Журналы событий не показывают ошибок, и я не могу найти журналы, которые помогли бы диагностировать проблему.

Какие локальные политики или настройки позволят или запретят это приложение?

1 ответ

Решение

Это вызвано "поведением подсказки доверия ClickOnce": https://msdn.microsoft.com/en-us/library/ee308453.aspx

Чтобы изменить это, просто измените значения в реестре, и вы сможете установить приложение.

Чтобы включить запрос доверия ClickOnce с помощью редактора реестра Откройте редактор реестра:

Нажмите Пуск, а затем нажмите Выполнить.

В поле Открыть введите regedit32 и нажмите кнопку ОК.

Найдите следующий раздел реестра:

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

Если ключ не существует, создайте его.

Добавьте следующие подразделы в качестве строкового значения, если они еще не существуют, со связанными значениями, показанными в следующей таблице.

На моем компьютере были установлены значения "Отключено", и я понятия не имею, какое приложение это сделало. Я изменил значения по умолчанию, и теперь все работает снова, как и должно.

Или вы можете просто удалить ключ "TrustManager", и все также работает.


Вот скрипт powershell, который обновит значения:

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'

Достаточно просто скопировать / вставить вышеуказанный код на "повышенной" версии PowerShell (щелчок правой кнопкой мыши от имени администратора).

И если вы получаете некоторые ошибки, это, вероятно, потому что путь не существует, а затем выполните эти команды

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'
Другие вопросы по тегам