Chrome弹出窗口阻止器在允许页面后何时重新检查?

6

我有一个应用程序,有时会打开弹出窗口拦截器,当用户运行应用程序时,在URL框(右侧)中,Chrome 会显示一些标志,告诉用户 弹出窗口被阻止,在这种情况下,我会向用户发出新的警告消息,例如“请注意页面被阻止,请启用它...”

我的问题是,何时以及在哪个条件下需要再次进行此检查,假设用户允许新的应用程序页面

  1. 如果用户关闭并重新打开浏览器,是否需要再次启用此弹出窗口?
  2. 我知道如果用户在不同的Chrome版本中运行它(如金丝雀或beta),他可能需要再次确认此页面,但我的问题是在哪些情况下,弹出窗口将再次显示给相同的用户(之前已确认)?

  3. 允许应用程序运行后,在哪种情况下弹出窗口拦截器会再次阻止它?

顺便说一句,我看到我的公司使用一些自动化过程向弹出窗口拦截器添加了异常,这是怎么做到的?有一段代码可以实现吗?(奇怪...)

当我点击设置搜索弹出->隐私->内容设置->管理异常时,我看到如下结果: enter image description here


我需要知道弹出窗口拦截器在用户允许页面后再次阻止指定页面的时间。该设置应保持到用户手动移除为止。当在先前设置了该设置的 Chrome、Chromium 的新实例中启动时,该设置是否被移除? - guest271314
@guest271314 - 谢谢,抱歉我不确定我理解了这个问题 "当启动新的Chrome、Chromium实例时,之前设置的设置是否被删除?" 2. 你知道公司如何添加这些隐私设置(我为我的公司添加了额外的条目域模式...),这是怎么可能的吗? - user6124024
1个回答

3
  1. 您知道公司如何添加此隐私设置(我为我的公司条目添加了附加域模式...),这是如何实现的?

策略可以设置,覆盖用户在设置中设置的首选项

请参阅管理员文档,按Windows快速入门Mac快速入门Linux快速入门上的链接。 阅读配置其他首选项Chrome中的策略设置

我应该使用偏好设置还是策略?

如果您想设置一些特定行为,既可以通过偏好设置又可以通过策略来完成,并且不确定应该使用哪个,请简单回答:您是否希望用户能够更改此设置?

用户无法随意更改策略,但他们可以更改其偏好设置。


请注意,更改Preferences文件应在关闭chrome、chromium时进行,即没有正在运行的进程实例,以避免在再次启动chrome、chromium时未创建Default目录中的SingletonLock文件。
要在浏览器配置文件中设置Preferences文件中的首选项,例如$ gedit ~/.config/chromium/Default/Preferences
"popups":{"[*.]domain1.com,*":{"setting":2},"[*.]domain2.com,*":{"setting":1}}

2个阻止弹出窗口,1个允许弹出窗口,另请参见DefaultPopupsSetting


在“设置”中,“弹出窗口异常”的“行为”右侧的图标表示

此设置由您的管理员强制执行。

管理员可以将策略应用于设备Set Chrome policies for devices或用户Set Chrome policies for users

不同平台的策略格式如下:

Example value:

Windows:

Software\Policies\Google\Chrome\PopupsAllowedForUrls\1 = "https://www.example.com"
Software\Policies\Google\Chrome\PopupsAllowedForUrls\2 = "[*.]example.edu"

Android/Linux:

["https://www.example.com", "[*.]example.edu"]

Mac:

<array>
<string>https://www.example.com</string>
  <string>[*.]example.edu</string>
</array>
例如,要在*nix平台上为设备创建弹出窗口的强制策略,您可以在/etc/chromium-browser/policies/managed/处创建一个.json文件。
$ sudo touch /etc/chromium-browser/policies/managed/popup_policy.json
$ gksudo gedit /etc/chromium-browser/policies/managed/popup_policy.json

然后为PopupsBlockedForUrlsPopupsAllowedForUrls设置弹窗策略。

{
  "PopupsBlockedForUrls": ["[*.]example.com", "[*.]example1.com]"],
  "PopupsAllowedForUrls": ["[*.]example2.com", "[*.]example3.com]"]
}

当Chrome、Chromium启动时,您可以通过导航到以下位置验证策略是否正在执行:

chrome://policy

应列出政策的位置;例如

Applies to    Level        Source      Policy name             Policy value                          Status
Machine       Mandatory    Platform    PopupsBlockedForUrls    [*.]example.com, [*.]example1.com]    OK

一个示例策略列表模板可在policy_templates.json处获得,还可以参见策略模板

谢谢!目前有两个问题:1. 那么只是为了确认,我猜通过代码更改隐私设置不会是一个选项,对吗?2. 关于我的第一个问题:在哪种情况下,在允许应用程序(从弹出窗口拦截器右侧的URL处)运行之后,它会再次被阻止?我的意思是,在允许应用程序运行后,该域将被插入到隐私设置中,并且除非我手动删除它,否则该应用程序将能够一遍又一遍地运行? - user6124024
@RaynD "1. 所以只是为了确认一下,我猜通过代码更改隐私设置不是一个选项对吗?" 不确定你的意思。用户可以在选择时更改“设置”,尽管可能无法更改管理员的“策略”设置。 "2. 在哪种情况下,在允许应用程序(从弹出窗口拦截器右侧的URL处)运行之后,它会再次被阻止?我的意思是,在允许应用程序运行后,域名将被插入到隐私设置中,除非我手动删除它,否则应用程序将能够一遍又一遍地运行?" 设置应该保持直到用户手动删除为止。 - guest271314
我的意思是,如果我想在JavaScript代码中更改设置,例如通过代码向用户添加域... - user6124024
@RaynD 不,我不认为这是可能的。用户操作应该允许或阻止一个域名。 - guest271314
@RaynD 用户可以将“Preferences”文件上传到<textarea>元素中,用户可以编辑文件,然后将文件保存到同一目录中,以覆盖现有文件。虽然您无法浏览用户文件系统以选择文件、编辑文件,但是在没有用户操作的情况下,使用javascript将文件保存到用户文件系统中是不可能的。 - guest271314

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接