0

我正在尝试将我的 WPF 应用程序部署到我们公司网络之外的一些用户。在我们的 LAN 上一切正常,但是当我打开安全性时,我无法让更新正常工作,因为从未提示用户输入他们的登录详细信息?

有谁知道保护我的 ClickOnce 文件以便只有我的用户可以访问它的方法?我不能在没有安全的情况下安装这个软件。

非常感谢任何帮助。

4

2 回答 2

0

在内部,您可以限制对网络服务器上文件的访问。在外部,您可以轻松做到的事情并不多。

我们通过让客户在运行应用程序时登录来处理此问题,并根据后端服务(在 Azure 上运行)验证他们的凭据。因此,除非他们可以登录,否则他们无法运行它。

如果您不想这样做,我将与您分享这篇文章。它展示了如何通过拦截对 Web 服务器的请求并做出响应来从 SQL Server 数据库中提供 ClickOnce 文件。如果您在 Web 应用程序方面比我更聪明(请注意,这不是一个高标准),也许您可​​以弄清楚如何在那时拦截并要求提供身份验证凭据。

是来自 CodeProject 的一篇文章,他们在其中展示了您正在尝试做的事情的一个解决方案。

于 2012-06-22T08:30:33.953 回答
0

没有办法保护您的文件,因为 ClickOnce 运行时将盲目地返回其部署点,并且永远不会保留用户的原始凭据。我听说过使用各种技术解决这个问题的方法,但它的工作量相当大。

这可能有用www.clickoncerevolution.com

您也可以始终考虑使用 MSI 安装程序,但您不会获得自动更新。

马蒂

于 2012-06-21T18:10:04.473 回答