Я сам нашел возможное решение в этой статье MSDN: Развертывание и безопасность ClickOnce .
Аутентификация ASP.NET на основе форм
Если вы хотите контролировать, к каким развертываниям может обращаться каждый пользователь, не следует разрешать анонимный доступ к приложениям ClickOnce, развернутым на веб-сервере. Скорее, вы позволите пользователям получать доступ к установленным вами развертываниям на основе идентификатора пользователя (с использованием аутентификации Windows NT).
Если вы развертываете в среде без аутентификации Windows NT, можно попробовать использовать аутентификацию ASP.NET на основе форм для аутентификации пользователя. Однако ClickOnce не поддерживает аутентификацию на основе форм, поскольку использует постоянные файлы cookie; они представляют угрозу безопасности, потому что они находятся в кэше Internet Explorer и могут быть взломаны. Поэтому при развертывании приложений ClickOnce любой сценарий проверки подлинности, кроме проверки подлинности Windows NT, не поддерживается.
Передача аргументов
Дополнительное соображение безопасности возникает, если вам нужно передать аргументы в приложение ClickOnce. ClickOnce позволяет разработчикам предоставлять строку запроса для приложений, развернутых через Интернет. Строка запроса принимает форму последовательности пар имя-значение в конце URL-адреса, используемого для запуска приложения:
http://servername.adatum.com/WindowsApp1.application?username=joeuser
По умолчанию аргументы строки запроса отключены. Чтобы включить их, атрибут trustUrlParameters должен быть установлен в манифесте развертывания приложения . Это значение может быть установлено из Visual Studio и из MageUI.exe. Подробные инструкции по включению передачи строк запроса см. В разделе Практическое руководство. Получение информации о строке запроса в приложении ClickOnce.
Никогда не передавайте аргументы, полученные через строку запроса, в базу данных или в командную строку, не проверив аргументы, чтобы убедиться в их безопасности. Небезопасные аргументы включают аргументы базы данных или командной строки, которые могут позволить злоумышленнику манипулировать вашим приложением для выполнения произвольных команд.
Примечание. Аргументы строки запроса - единственный способ передать аргументы приложению ClickOnce при запуске. Вы не можете передавать аргументы приложению ClickOnce из командной строки.