我正在尝试将我的WPF应用程序部署到我们公司网络之外的一些用户。一切工作在我们的局域网很好,但我不能让更新工作,当我打开安全,因为用户从来没有提示他们的登录细节?安全ClickOnce文件,以便只有我的用户可以访问它?
有谁知道一种方法来保护我的ClickOnce文件,以便只有我的用户才能访问它?如果不安全,我不允许使用此软件。
任何帮助非常感谢。
我正在尝试将我的WPF应用程序部署到我们公司网络之外的一些用户。一切工作在我们的局域网很好,但我不能让更新工作,当我打开安全,因为用户从来没有提示他们的登录细节?安全ClickOnce文件,以便只有我的用户可以访问它?
有谁知道一种方法来保护我的ClickOnce文件,以便只有我的用户才能访问它?如果不安全,我不允许使用此软件。
任何帮助非常感谢。
无法保护文件,因为ClickOnce运行时将盲目返回到其部署点,并且永远不会保留用户原始凭据。我听说过使用各种技术绕过这种方法的方法,但它的工作量相当大。
这可能是有用的www.clickoncerevolution.com。
您也可以始终考虑MSI安装程序,但不会自动更新。
Marty
在内部,您可以限制访问Web服务器上的文件。从外部看,你可以轻松做到的事情不多。
我们通过让客户在运行应用程序时登录来处理此问题,并根据后端服务(在Azure上运行)验证其凭据。所以他们不能运行它,除非他们可以登录。
如果你不想这样做,我会与你分享this article。它显示了如何通过拦截对Web服务器的请求并响应来从SQL Server数据库提供ClickOnce文件。如果你对Web应用程序比我更聪明(不是一个很高的标准,请注意你),也许你可以弄清楚如何拦截并询问当时的认证证书。
而这里的an article from CodeProject他们在那里显示你想要做的一个解决方案。