【问题标题】:How to secure my web widget embedded from third party website如何保护从第三方网站嵌入的我的网络小部件
【发布时间】:2022-01-11 04:12:42
【问题描述】:

我正在创建可以嵌入其他网站的网络小部件。这是一个例子。

<script src="http://URL/searchWidget.js" type="text/javascript"></script>
<search-view name="search"></search-view>

我有一些特定的客户,只有我向这些客户提供这些小部件。所以我需要从其他第三方网站保护这些小部件。我的客户正在使用 CMS、Joomla、Drupal。

如果我向客户端提供一个小部件(在脚本标记之上),则只有该客户端有权访问该小部件。如果有人窃取了该脚本,他们将无法访问该小部件。

我该怎么做?
是否有任何安全的方式来构建小部件?
我可以使用 CMS 插件吗?

【问题讨论】:

  • 您需要从 javascript 文件中检查域名。这就是它的有效域。
  • 我该怎么做?
  • 或者您需要为您的客户提供唯一 ID
  • 如何访问该 ID。通过脚本标签是不对的
  • 您可以访问该 ID 并传入 ajax 调用验证域。如果 ID 无效意味着不显示您的小部件。

标签: javascript wordpress security plugins widget


【解决方案1】:

在您的 javacsript 中使用此脚本来获取当前域。

var scripts = document.getElementsByTagName("script");
SiteHostUrl = scripts[scripts.length-1].src;
jsUrl = SiteHostUrl;

或者您需要为您的客户提供唯一的 ID。您可以访问该 ID 并传入 ajax 调用验证域。如果 ID 无效意味着不显示您的小部件

【讨论】:

  • “如果 ID 无效意味着不显示您的小部件”。你知道如何在 ID 无效时停止显示小部件
  • 需要检查您的代码。像 return false 或其他方式。它基于代码。
  • 使用 style.display 我可以隐藏元素,这个答案是正确的。但问题是如果我们有 API 请求。他们可以通过浏览器中的网络选项卡进行访问。你知道解决方案吗?
  • 它基于代码。需要检查您的代码。如果有效意味着处理您的脚本,则添加条件,否则显示无效的内容。我在我的小部件脚本中使用这种代码。但我没有使用隐藏。如果代码无效,我将停止下一步代码。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-09-15
  • 2012-03-09
  • 1970-01-01
  • 1970-01-01
  • 2023-01-19
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多