检查是否安装了扩展程序,如果用户删除了扩展程序,则关闭选项卡

剧烈的

这就是我网站中的工作原理a.com,用户访问我的网站,然后我b.com使用我的帐户与另一个网站中的人交谈,生成链接b.com/somelink并将用户重定向到该链接。

这是问题所在,该地址b.com/somelink包含一些我想向访问者隐藏的私人信息...因为我无法控制该网站,所以我无法做到这一点。

因此,我认为最好的选择是浏览器扩展,用户必须在重定向到b.com之前安装扩展。

所以这是我的简单扩展名:

manifest.json

{
  "name": "extname",
  "version": "1.0",
  "description": "extnameExtension!",
  "manifest_version": 2,
  "permissions": [
    "tabs", "http://*/*", "https://*/*" ,  "webNavigation"
  ] ,

  "content_scripts": [
    {

      "matches": ["*://b.com/*"],
      "js": ["contentscript.js"],
      "run_at": "document_start"
    }
  ]

}

contentscript.js

function fireOnReady() {
    document.getElementById('personal-info').innerHTML = 'some dummy data';
}
if (document.readyState === 'complete') {
    fireOnReady();
} else {
    document.addEventListener("DOMContentLoaded", fireOnReady);
}

这工作正常,但我有两个问题:

1-用户可能会禁用该扩展名并刷新页面b.com/somelink并看到我的个人信息....所以我的解决方案是,b.com如果他们删除了我的扩展名,则关闭浏览器选项卡的打开...有什么办法吗?(仅当他们从我的网站重定向到b.com时,此链接才可用,因此他们不能仅将链接复制/粘贴到新标签页/浏览器中)

2-在我自己的网站中,如何将他们重定向到b.com之前确保他们已安装扩展程序?

**请不要谈论我解释过的场景或其他解决方案,或者...我知道这听起来可能很奇怪,但这并不是针对公共用户,而是专门的特殊群体,如果有必要,他们将安装扩展程序,我很想知道即使找到其他解决方案,如何使用代码和扩展名也可以做到这一点**

路易

您建议的是将用户重定向到包含私人信息的页面,然后在您的扩展程序检测到页面已加载时,从DOM中清除该信息。不管您问关于扩展的两个问题如何,我都不会使用您提出的方法,因为:

  1. 私人信息仍会发送到用户的浏览器,并且用户仍然可以访问正如iPirat提到的那样,有可能在几乎所有浏览器中使用开发人员的工具来查看浏览器接收的数据。网络标签将包含对该页面的请求,并显示发送到浏览器的原始HTML,并且您想隐藏的信息将在此处显示。没有解决此问题的方法,就是首先不要发送信息。

  2. 扩展程序中的故障可能会泄露敏感数据。您说您不控制显示私人信息的站点,这意味着您无法控制personal-info包含私人信息的元素ID。如果该端的设计者决定将ID更改为personal-user-info,则您的扩展失败,并且私有数据可见。

    而且这与代码中的错误无关。您在某个地方输入错误,扩展程序无法运行,并且敏感信息对用户可见。

我会重新考虑您的整个方法。确保私人信息永远不会被用户掌握的一种常用方法是,让前端代码b.com通过第三方服务器)通过站点上的服务器获取所需的信息a.com您的服务器可以从中获取信息,b.com并且仅包含必须传递给用户的信息。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

检查用户是否安装了Chrome扩展程序

检查用户是否安装了第三方Chrome扩展程序

检测用户是否安装了Chrome扩展程序

Chrome扩展程序-找出扩展程序选项卡是否打开

Chrome扩展程序仅在当前选项卡中更改用户代理

Chrome扩展程序-executeScript不在活动选项卡中

Chrome扩展程序:获取活动选项卡的源代码

Chrome扩展程序:Javascript注入到活动选项卡

Bash参数扩展以删除选项卡

我已经打开的Chrome扩展程序选项卡在扩展程序更新时已关闭

关闭Chrome扩展程序选项

Chrome扩展程序:webRequest重定向到现有选项卡,而无需打开新选项卡

单击扩展程序图标时,在新选项卡中打开扩展程序的options.html页面

仅在Firefox / Chrome扩展程序的一个选项卡中禁用/启用javascript(使用Web扩展程序)

如何检查是否安装了特定的程序?

检查是否安装了特定版本的程序

如何检查用户是否关闭了 Flask 中的特定选项卡/窗口?

Chrome扩展程序中的所有选项卡中设置切换开关状态

按扩展名过滤每个应用程序的选项卡完成

chrome扩展程序中的选项卡更改时的页面内容

如何使用JavaScript在Chrome扩展程序中获取当前选项卡的URL

Chrome扩展程序:在当前选项卡上进行事件监听

Google Chrome扩展程序在弹出窗口和选项卡之间进行对话

仅在 Chrome 扩展程序的特定选项卡上注入 JS

Chrome 扩展程序 - 在当前选项卡的 popup.html 中激活脚本

无法从我的 chrome 扩展程序的选项卡中获取选定的文本/突出显示的文本

Chrome扩展程序-在选项卡上定义的调用功能(参考错误)

如何在开发(解包)时在所有选项卡上提供 Chrome 扩展程序?

Chrome 扩展程序化 CSS 注入到活动选项卡中的错误