如何执行全站许可?

发布于 2024-08-10 22:24:51 字数 1436 浏览 4 评论 0原文

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

无言温柔 2024-08-17 22:24:51

有一些软件技术,例如中央许可证服务器——与 DRM 的工作原理没有什么不同。最佳解决方案在很大程度上取决于您的应用程序的详细信息以及您的客户愿意容忍的内容。

然而,在我看来,这个领域的行业标准是信任你的客户,并依靠合同条款来防止非法扩散。换句话说,颁发单个许可证密钥。然后,如果有人致电寻求支持或要求升级,请索要相同的许可证密钥。如果客户不应该拥有他们所拥有的关键报告,那么原始客户就会因为让软件脱离他们的控制而受到某种处罚或账单;这些条款将在您与他们的合同中详细说明。许多公司似乎最终只是按照这些方式收集数据,但从未真正采取行动收取罚款。

另一种方法是您的软件可以 ping 互联网上的中央服务器(如果可用),并报告其许可证密钥。然后服务器授权应用程序运行。如果密钥从客户那里泄露,那么旧密钥就会失效,并且客户需要更新所有现有的客户端。

There are software techniques, such as a central license server -- not unlike how DRM works. The best solution depends heavily on the details of your app and what your customers are willing to tolerate.

However, it seems to me that the industry standard in this area is trust your customer, and rely on contract terms to prevent illegal proliferation. In other words, issue a single license key. Then, if someone calls for support or asks for an upgrade, ask for the same license key. If a customer who isn't supposed to have the key reports that they do, then the original customer gets some sort of penalty or bill for letting the software out of their control; the terms would be spelled out in your contract with them. Many companies seem to end up just collecting data along those lines, but never actually go as far as collecting penalties.

Another approach is that your software could ping a central server on the Internet (if it's available), and report its license key. The server then authorizes the application to run. If the key leaks from the customer, then the old one gets invalidated, and the customer is required to update all of their existing clients.

三岁铭 2024-08-17 22:24:51

看看 Windows 是如何做到这一点的。

他们有批量许可计划。基本上,他们向客户提供许可证服务器,并为他们提供激活服务器的密钥。完成后,服务器用于颁发本地密钥并激活使用这些密钥的本地安装。

从这里:Windows Server 2008、批量激活 2.0 和 KMS(密钥管理服务器)

密钥管理服务器 (KMS) 用于建立在您的环境中本地/内部托管的本地激活服务(密钥管理服务)。
使用 KMS 无需单独的计算机连接到 Microsoft 进行激活。

Take a look at how Windows does this.

They have a volume licensing program. Basically, they ship a customer a license server and give them a key to activate the server. After that is done, the server is used to issue local keys and activate local installations that use those keys.

From here: Windows Server 2008, Volume Activation 2.0 and KMS (Key Management Server)

The Key Management Server (KMS) is used to establish a local activation service (Key Management Service) that is hosted locally/internally in your environment.
Use of the KMS eliminates any need for individual machines to connect to Microsoft to activate.

夜灵血窟げ 2024-08-17 22:24:51

如果该程序价格昂贵并且您估计盗版风险为中等到高,则概述的其他方法也不错。

如果这是一个低成本的东西,并且不太可能被您的被许可人或其员工广泛分发,那么实施许可证服务器的成本可能不值得。您可能会选择使用明显的通知,而不是表明该程序的许可对象以及限制是什么。

要求客户安装许可证服务器的复杂性也可能会破坏交易。您需要平衡它与实施它的时间/成本。

The other approaches outlined are good if the program is expensive and you estimate the risk of piracy is moderate to high.

If this is a low-cost thing and not that likely to be broadly distributed by your licensee or their employees, the cost of implementing a license server may not be worth it. You might opt to go with an obvious notice instead indicating who the program is licensed to and what the restrictions are.

The complexity of requiring your customer to install a license server may break the deal as well. You need to balance that in along with the time/cost of implementing it.

人│生佛魔见 2024-08-17 22:24:51

理想情况下,您应该考虑包含产品激活的许可解决方案。这样您就可以向公司颁发许可证,并跟踪该特定许可证的使用情况。

您选择的许可解决方案还应该支持动态许可证配置,这样,如果您怀疑存在欺诈行为,您可以禁用许可证(或其特定功能),并且该更改将立即对所有已安装的客户端生效。

最后,许可证应该是唯一可识别的,这样,如果您发现它已被发布到野外,您可以简单地禁用它并向您的客户颁发新的许可证。

免责声明及插件:我共同创立的公司生产 OffByZero Cobalt .NET 交钥匙许可解决方案,它可以完成所有以上以及更多。

Ideally, you should consider a licensing solution that includes product activation. That way you can issue a licence to a company, and track the usage of that particular licence.

The licensing solution you choose should also support dynamic licence configuration, so that if you suspect fraud you can disable a licence (or particular features on it) and that change will take effect immediately upon all installed clients.

Finally, the licence should be uniquely identifiable, so that if you discover it's been released into the wild, you can simply disable it and issue your customer with a new one.

Disclaimer & plug: the company I co-founded produces the OffByZero Cobalt turnkey licensing solution for .NET, which does all of the above and more.

一个人的旅程 2024-08-17 22:24:51

执行此操作的最佳方法是在客户网络上的任何一台计算机上部署许可证服务器。然后,您的软件将联系许可证服务器(每次启动时或仅作为激活的一部分)以检索要使用的许可证。

查看我们的 CryptoLicensing,它支持现成的客户部署的许可证服务器,无需由客户配置 - 他只需运行一个 exe 文件。

The best way to do this is to deploy a license server on any one machine on the customer's network. Your software will then contact the license server (every time at startup or just once as part of activation) to retrieve a license for use.

Check out our CryptoLicensing which supports a ready-made customer-deployed license server which requires no config by the customer - he just has to run a single exe file.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文