将第三方 Google 标签管理器添加到网站的风险

Risk of Adding Third-Party Google Tag Manager To WebSite

我正在创建一个市场应用程序,我想让我的卖家将他们的 Google 标签管理器添加到产品页面和结帐成功页面。我对营销工具不是很熟悉,但据我所知,可以通过 GTM 添加自定义脚本。

我的问题是,这个脚本能走多远,这是否会对我的应用程序造成任何安全问题? 我也知道还有白名单和黑名单。我的目标是只允许 google 脚本和 facebook 像素信息通过 GTM 运行,所以我使用了这个数据层:

var dataLayer = [{
  "gtm.whitelist": ["google","customPixels"]
  "gtm.blacklist": ["customScripts"]
}];

GTM 脚本将仅在特定卖家产品内加载,并且当结帐成功页面包含任何卖家产品时。没有其他页面将加载脚本。这是高风险吗?

My question is, how far can this scripts go and if this may cause any security issue to my application?

尽可能 JavaScript(因为 GTM 容器只不过是在浏览器中执行的一些 JS 代码)。 这可能是一个巨大的安全风险,例如有人可以添加带有 keydown listener 的标签并捕获每个用户击键,包括密码等...

My goal is to allow only google scripts and facebook pixel information to run through the GTM, so I came with this datalayer:

是的,这样就更好了。

The GTM script will be loaded only inside specific seller products and when the checkout success page has any of the seller product. No other pages will load the script. Is this of high risk?

执行下面的应该可以防止外部 GTM 容器造成安全风险:

  1. 仅在安全标签(GA、FB 像素...)上设置 GTM 白名单
  2. 只允许卖家提供他们的 GTM 容器 ID (GTM-XXXXXXXX)
  3. 根据 2.
  4. 生成并插入 GTM 容器加载代码段

不允许您的用户copy/paste他们的 GTM 容器代码段,因为这可能会覆盖并绕过该代码段中的 dataLayer 白名单(window.dataLayer =[]).