问题标签 [secure-context]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
3780 浏览

javascript - 为本地 Firefox 调试启用 HTTP 地理位置

“地理定位请求只能在安全的环境中完成”

地理位置需要 HTTPS 很好,但我需要在不安全的本地服务器上进行调试,然后才能使其生效。

我希望我可以编辑 Firefox 'about:config' 以禁用此保护措施以进行调试。我该怎么做?在不安全的上下文中是否有其他/更好的方法来调试位置?(模拟 https)

0 投票
2 回答
786 浏览

javascript - window.location.protocol 和 window.isSecureContext 的区别?

在 JavaScript 中,您可以通过 2 种方式检查访问的 url/网站是否结束HttpHttps

  1. window.location.protocol返回http:https:

  2. window.isSecureContext它返回trueforhttpsfalsefor http

我知道这window.isSecureContext是非标准化的。但是可以说我知道它在客户端浏览器上可用。

然后,

  1. 这两个只读值有什么区别?使用哪一个?
  2. 最重要的是,在这种情况下会出现异常。意思是,第一种方法说https:,而第二种方法说false或其他方式。
0 投票
1 回答
37 浏览

nginx - 将 NGINX HTTPS 域重定向到新的 HTTPS 域

在使用duckduckgo 数小时后,这是我得出的最佳答案,但仍无法将当前的HTTPS 域重定向到新的HTTPS 域。

浏览器给出不安全的连接错误。

我也尝试过类似的东西

尽管此选项停止给出错误,但重写不起作用,它会转到“欢迎使用 NGINX 页面”。

0 投票
1 回答
46 浏览

javascript - url 有 ip 时的地理定位错误

我有一个使用 Geolocation 的 webapp,但是,当 url 有 ip 时,Geolocation 不起作用。

我发现了这个错误:PositionError {code: 1, message: "Only secure origins are allowed...

0 投票
1 回答
460 浏览

html - 谷歌浏览器在局域网上的“安全上下文”?

Chromium 不允许网站访问用户的相机,除非页面托管在“安全上下文”中。通常这意味着具有有效 TLS (HTTP) 证书的 Web 服务器,但localhost.

我正在开发一个需要在 LAN 内流式传输视频的应用程序,我也希望将网络服务器托管在 LAN 内,但我不清楚如何设置它以便考虑服务器“安全上下文”。有没有一种合理的方式来使用带有 zeroconf/bonjour 主机名的 TLS 证书?或者以其他方式将整个 LAN 标记为受信任?

0 投票
1 回答
164 浏览

javascript - Ajax 调用/javascript - 在 IE、Firefox 和 Safari 上运行良好,但在 Chrome 上却不行

当用户选择 BEGINNER 和 00-Intro to Programming - 并输入任何用户名两次(然后按提交)时,我在网站上有以下页面可以正常工作

http://www.teachyourselfpython.com/testandtrack_v5/index.php

注意:它在 IE、Firefrox、GoogleChromeBETA 和 Safari 上运行良好。但是,它在 Chrome 上不起作用 - 产生错误“您必须输入测验密码”。没有为此特定测验设置测验密码(在数据库中,该字段设置为“0”,所以我不知道它为什么首先启动此命令。请注意,一个控制台错误表明该站点应该是 HTTPS 并且 Chrome 似乎不喜欢隐藏的密码字段(只有在测验有密码时才会显示测验密码的输入框)

一种建议是它与AJAX 和 Javascript有关。下面贴一些相关代码。

另一个建议是它与 PHP 有关。(粘贴在下面)我将 ifelse 更改为 if else,但这没有任何区别 - 它仍然适用于 IE/Safari/Firefox 而不是 Chrome。

PHP 代码

我尝试/查看的其他内容:

- 我看到一些帖子暗示 Response.Close() 需要被注释掉,但我的任何页面上都没有。

- 其他建议提到 Chrome 不能很好地处理异步调用这一事实 - 这些是什么以及我会在我的代码中在哪里进行更改?

-另一篇文章提到 Chrome 不能很好地处理 jsonp(请注意,这在上周的 Chrome 上运行良好,突然间,没有干扰,停止工作)。同样,我找不到对 jsonp 的任何引用,所以假设不是这样。

我还尝试在调用 datatype:json 之后添加以下 async:false 以查看它是否像下面那样工作

这也不起作用

最后要尝试的是完全删除或注释掉 dataType:"json" ,但没有运气。

** 控制台中的非常有趣的错误日志**

另一个特点是,在CHROME浏览器中运行控制台开发工具错误日志(它不起作用)没有错误

但是,在 CHROME BETA 中运行控制台错误日志(它工作正常),错误是:

    1.

qYZF6oIZtfc:1 解析标头 X-XSS-Protection 时出错:1;模式=块;report= https://www.google.com/appserve/security-bugs/log/youtube:报告 URL 与第 22 位字符的页面的方案、主机和端口不同。将应用默认保护。

: 报告 URL 与第 22 位字符的页面的方案、主机和端口不同。将应用默认保护。

  1. quiz.php:1 此页面包含非安全上下文中的密码或信用卡输入。URL 栏中已添加警告。有关更多信息,请参阅...

我想知道2号是否与它有关!但我不知道如何进行。

重要更新

https://developers.google.com/web/updates/2016/10/avoid-not-secure-warn

我发现这个网站无疑进一步阐明了这个问题,但是如何继续修复错误?

最后,这篇文章表明盒子的加载有问题。

几乎......更新! 在一个有用的建议将#password(ajax)更改为其他内容以防它是保留字之后,我尝试了......它似乎可以暂时在我的chrome版本中工作,但在移动设备上仍然存在相同的错误!我后来刷新了,然后它也停止在加载的 Chrome 版本上工作了!

此外,另一个人让我知道它在 chrome 上适用于他(即使没有 ajax 保留字更改),但他的 chrome 有一个添加阻止程序,所以这可能是一个进一步的线索。

David J(谢谢)建议这可能是保护站点的问题,因此可以通过 cloudflare 选择。

有什么想法吗?非常感激。

0 投票
2 回答
12144 浏览

html - 地理定位请求只能在安全上下文中完成

我正在使用 HTML5 地理位置功能。我的代码在“本地主机”中运行良好,但在“子域”中出现问题。我的代码如下:

0 投票
1 回答
86 浏览

http - 不完全 HTTPS webapp 上的服务工作者

我目前正在实施 Firebase 以在不完全 HTTPS的webapp 上发送 Webpush 通知。由于 webpsuh 使用的是 service worker,我做了一些研究,并在Google Developers 网站上指出:

您只能在通过 HTTPS 提供的页面上注册 Service Worker,因此我们知道浏览器接收到的 Service Worker 在其通过网络的过程中没有被篡改。

这是否意味着即使网站的其余部分是 HTTP,也可以从 HTTPS 页面注册服务工作者?

提前感谢您的任何澄清!

编辑

我在 w3c Github 上找到了这个对话,它说服务工作者应该通过 HTTPS 提供服务,据我了解,只要通过 HTTPS 提供与服务工作者的通信,就有可能拥有其他 HTTP 页面,我明白了吗对?

从关于规格的辩论中,@jyasskin 说:

如果请求 SW 的页面不安全,并且 SW 是 https 但在攻击者控制的域上,那么您根本没有任何收获。是的,整个应用程序都需要是 https。

但这是在服务工作者规范完全设置之前说的,所以不确定这是否是指定的最终方式。

0 投票
1 回答
833 浏览

model-view-controller - 此页面包含非安全上下文中的密码或信用卡输入

此页面包含非安全上下文中的密码或信用卡输入。URL 栏中已添加警告。 由于此错误,我的注册码不起作用

0 投票
2 回答
1493 浏览

javascript - Chrome 不支持 getUserMedia

我的 laravel webapp 中有一个表单,用户需要通过网络摄像头添加个人资料图片。在本地主机(安全源)中开发时,它工作正常,但现在当我尝试使用我的 IP 地址访问它时,它似乎不起作用。

我在开发项目时使用“navigator.mediaDevices.getUserMedia”访问网络摄像头,但现在当网站上线(或通过我的 IP 进行测试)时,chrome 表示“getUserMedia() 不再适用于不安全的来源”。我也试过 Webcam.js 但同样遇到了同样的错误。

控制台中的错误输出:

[弃用] getUserMedia() 不再适用于不安全的来源。要使用此功能,您应该考虑将应用程序切换到安全源,例如 HTTPS。有关更多详细信息,请参阅https://sites.google.com/a/chromium.org/dev/Home/chromium-security/deprecating-powerful-features-on-insecure-origins