ClickOnce安装URL中的非常量变量

时间:2017-07-17 18:45:19

标签: c# wcf installer clickonce

我有一个ClickOnce应用程序,我将覆盖标准的ClickOnce更新系统,并使用此页面上的代码在应用程序中创建我自己的。

https://docs.microsoft.com/en-us/visualstudio/deployment/walkthrough-creating-a-custom-installer-for-a-clickonce-application

应用程序使用登录到我控制的Web服务。任何在Web服务中没有帐户的人都需要保护安装文件不被下载。我正在使用以下方法尝试执行此操作:

一旦用户登录到应用程序,就会生成随机Guid作为用户信息的一部分(在此问题出现之前,这是系统的一部分)。它存储在数据库和应用程序中。登录后,应用程序调用webservice上的一个函数,该函数记录用户名,guid,客户端IP地址以及当前时间加五分钟的过期时间。之后,应用程序联系下载网站以检索清单。它包括生成的guid作为查询字符串参数。网站拦截请求并验证IP地址和到期时间,如果匹配,则将请求的文件流反馈给应用程序。

我的问题是在查询字符串中包含guid使其成为安装URL的一部分,而ClickOnce预计它将在下次更新应用程序时保持不变。

是否有任何方法可以在调用中包含查询字符串,但不能将其作为安装URL的一部分?或者还有其他方法可以解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

对于谁可以下载什么并在应用程序运行时将安全性移至,是不是更好?

然后,基本ClickOnce下载网址变为静态(这是ClickOnce的设计目标),问题就消失了。