我正在 ColdFusion 11 中创建一个 Web 应用程序,该应用程序最初是云托管的。然而,一些潜在客户更愿意在他们的场所自行托管它。
这就提出了以下问题:
- 管理多个站点上的应用程序(例如升级、更新)
- 许可应用程序,使其仅在客户付款时才有效
- 防止客户端访问源代码并弄乱应用程序或盗版
我要解决的第一个问题是如何为每个客户创建一个许可证文件,应用程序每次使用它时都会检查它,然后允许客户进入。记住整个应用程序是由客户托管的,所以我不能有一个检查许可的中央系统。我需要一些类似旧桌面应用程序如何在您输入序列号并获得产品许可的情况下工作的东西。
我最初的想法是:
- 预加载客户端具有散列/加密序列号的数据库表
- 有一些其他表将连续剧映射到到期日期
- 我的网络应用程序根据数据库表检查数据库表的序列有效性,然后决定在序列持续的任何时间段内工作
唯一的事情是......它将如何检查“序列有效性”。也就是说,我的 Web 应用程序如何知道该客户正在使用哪个序列,并将其永久保存到可能 12 个月后的到期日。
谁能给我一些指示如何为 ColdFusion Web 应用程序实现这种基于客户端的安全性?