【问题标题】:Hiding fusion charts license隐藏融合图表许可证
【发布时间】:2021-07-13 11:28:51
【问题描述】:

我在 fusion chart 购买了许可证。 Fusion Charts 文档在这里说...https://www.fusioncharts.com/dev/upgrading/license-activation 我必须使用此函数调用来申请许可证...

FusionCharts.options.license({
   key: 'KEY_GOES_HERE',
   creditLabel: false,
});

如果我输入密钥,任何访问我的网站的人都可以轻松地从浏览器的视图 -> 源中获取它。我该如何避免呢?这是一个简单的 HTML 网站。

【问题讨论】:

    标签: fusioncharts


    【解决方案1】:

    您可以使用以下任何一种:

    1. 不要直接在 JS 代码中传递密钥,而是通过环境、应用程序变量传递它们。并将 env 文件添加到 gitignore

    2. 对用于许可证激活的密钥和 JS 代码进行混淆处理。

    3. 您可以将键的值存储在数据库中并获取数据值,以便最终用户无法访问它。

    4. 如果您知道将使用图表的域/子域,则可以通过向 sales@fusioncharts.com 发送请求来限制这些域的许可证密钥

    【讨论】:

    • 如果我通过任何方法...最后我必须将该密钥传递给上述功能,以便图表识别许可证。这在源视图中可用。我的问题是只有......如何做到这一点//对用于许可证激活的密钥和 JS 代码使用混淆//?有什么实际的例子吗?
    • 你可以在stackoverflow中检查任何混淆sn-ps
    【解决方案2】:

    据我所知,没有办法从前端完全隐藏它。这样做的原因是,即使在发出请求时以某种方式隐藏了密钥,但信息必须存在,因此可以通过查看请求数据找到密钥。

    您希望保护的内容决定了您应该如何去做。如果您只是想隐藏它以免被网络抓取工具拾取,那么我想在发送之前对其进行加密然后解密就足够了。

    如果您想防止任何人窃取它,那么唯一的方法就是让服务器充当代理。您将调用一个 API,然后该 API 将在后端使用您的 API 密钥,远离用户的窥探。然后,您的后端 API 只会将来自 fusioncharts 的响应返回给用户。

    【讨论】:

      猜你喜欢
      • 2012-06-05
      • 1970-01-01
      • 2018-06-09
      • 2015-08-02
      • 2015-10-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多