【发布时间】:2015-04-24 22:40:36
【问题描述】:
有一个具有 JSON API 的开源守护程序。此守护进程强制使用基本 HTTP 身份验证。我正在考虑提交 PR 以始终发送 Access-Control-Allow-Origin: * 标头以允许 API 被其他网页使用,但我想确保它不会带来安全风险。
如果用户登录到 API,我知道来自同一域的 AJAX 请求会自动获取 HTTP Authorization 标头。根据我的测试,如果请求来自另一个域,则永远不会出现这种情况。
所有浏览器都是这样实现它的吗?我是否更正了恶意网站无法对 API 执行请求,除非它知道您的信誉,并且不可能(除了浏览器漏洞利用)通过以下方式获取信誉JavaScript?
【问题讨论】:
-
如果您将授权标头添加到允许的标头列表中,是否会发送它?
Access-Control-Allow-Headers: Authorization -
即使启用了我的浏览器也不会发送凭据,所以我认为它是安全的
标签: javascript xmlhttprequest csrf basic-authentication