- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我最近看到this SO 发布有关获取请求域的文章。我想知道此信息是否可靠(即攻击者可以“伪造”此信息吗?)。具体来说,域和请求类型(GET、POST 等)。我问的原因是因为我不确定是否可以使用它来保护我的应用程序的后端。我认为我应该只允许来 self 自己的域的 POST 请求。
最佳答案
客户端(如浏览器)发送的请求并非来自特定域。它们来自客户端的 IP 地址。该客户端可能正在运行来自特定站点的网页,但是请求中包含的任何信息都不能被信任,并且可以被欺骗为客户端想要的任何信息。再想一想这个问题。客户端请求不是来自域。它们来自客户端,在发出 API 请求之前,该客户端可能已收到也可能未收到来自特定域的网页。
所以,不,您不能使用客户端提供的页面域信息来实现任何合理的安全性。如果请求确实包含有关请求代码来自哪个网页的信息,则该信息很容易被恶意客户端欺骗。
从浏览器使用的 API 可能需要与登录用户结合使用(通过登录 cookie 或登录后获得的某种安全 token ),但除此之外无法“保护”。为了使浏览器能够访问您的 API,任何其他客户端(包括恶意客户端)也可以访问该 API。
Google 等公司对浏览器内使用的 API 采取的保护类型包括:
因此,您可以在允许访问您的服务之前要求 API 帐户或用户登录。除此之外,人们通常会保护 API 免遭滥用,同时意识到确定的自定义客户端仍然可以访问 API。
I figured that I should only allow POST requests from my own domain.
您应该只允许来自有效的登录用户的 POST 请求(每个 API 请求都需要登录凭据),并且您应该只允许它们影响该特定用户有权修改的数据。您无法控制请求的来源或执行请求的客户端类型。
关于javascript - Express.js - 请求者域/IP 可靠性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56641355/
有在项目中使用过Java Kryonet库的 friend 愿意分享一下经验吗?我看到它被推荐过几次,但实际上没有看到任何人谈论他们使用它的经历。 具体来说,我想确保它可靠且相对稳定。或者我应该考虑使
如果我不希望用户能够访问某个页面,我需要重定向用户。例如,header('Location: ../acc/login.php'); 有多可靠?浏览器可以忽略 302 错误吗,这是正确的方法吗?提前致
我一直在使用 ZeroMQ 的请求/响应套接字来在 Web 应用程序和用于卸载处理的从属应用程序之间交换消息。我注意到在某些情况下,并不是所有发送的 ZMQ 消息都被另一方实际接收到。更奇怪的是,即使
我目前的情况是我有一个应用程序需要在新数据到达数据库表时得到通知。数据来自外部来源(我无法控制——这是唯一的集成选项)。当新数据到达时,我的应用程序需要采取某些操作——基本上是查询新数据、处理它、将结
嗨 如果lucene索引上只发生插入操作(没有删除/更新),那么docID是否真的没有改变?而且它也可靠 如果这是真的,我想用它来增量加载 FieldCache 以降低加载所有文档的开销,最好的解决方
我正在尝试使用 ActiveMQ 创建可靠的 JMS 环境。我打算采用 JDBC 主从集群方法,在这种方法中,我可以将主服务器收到的消息保存到数据库中,从服务器可以选择这些消息并运行它们,以防主服务器
我正在开发依赖于设备 UUID 的 Apache Cordova 应用程序。几个问题在我脑海中闪过,但不幸的是,我似乎无法在任何地方找到答案。 获取的 device.uuid 对于每个平台是否都相同,
这个问题是对 Intercepting/Rerouting TCP SYN packets to C++ program in linux 的(某种)跟进. 问题是:如果 SYN 或任何其他 TCP
是否存在 localIdentifier 可能会更改或不准确的情况?我正在开发一个备份照片的应用程序,我的同事告诉我不能信任 localIdentifier。然而,在做了一些研究之后,我一直无法找到任
我们的应用程序使用 APNS 来接收推送通知。然而,我们的客户声称他们的一些设备没有收到通知,并争辩说他们“必须”确保通知 100% 送达。但我读过somewhere APNS 不是 100% 可靠的
来自ZooKeeper FAQ : Reliability: A single ZooKeeper server (standalone) is essentially a coordinator w
我正在制作一个需要存储一些用户数据的 PhoneGap 应用程序。在初始应用程序启动时,将要求用户输入 URL。由于 URL 可能很长,我希望将其保存在用户的设备上,这样他就不需要在每次启动应用程序时
我是 Node.js 的新手,目前正在质疑它的可靠性。 根据我目前看到的情况,似乎存在一个重大缺陷:任何 Uncaught Error /异常都会导致服务器崩溃。当然,您可以尝试对您的代码进行防弹或将
Google PubSub 是否适合小批量(10 条消息/秒)但任务关键型消息传递,保证在任何固定时间段内及时传递每条消息? 或者,它是否更适合高吞吐量,其中个别消息可能偶尔会丢失或无限期延迟? 编辑
Erlang据报道,它已在生产系统中使用了 20 多年,正常运行时间百分比为 99.9999999%。 我做了如下数学计算: 20*365.25*24*60*60*(1 - 0.999999999)
我最近看到this SO 发布有关获取请求域的文章。我想知道此信息是否可靠(即攻击者可以“伪造”此信息吗?)。具体来说,域和请求类型(GET、POST 等)。我问的原因是因为我不确定是否可以使用它来保
谁能告诉我,当将操作发布到时间轴时,Facebook 的开放图谱 API 的可靠性如何? 背景: 我创建了一个新的 FB iOS 应用 使用自定义对象“blogpost”创建新的操作类型“write”
我正在进行 Windows Azure 试用,以评估将多个商业 ASP.NET 站点从专用托管迁移到 Azure 的情况。一切都很顺利......直到现在! 一些背景 - 站点是使用 SQL Azur
在进行代码审查时我偶然发现了 GWM在 Java-Spring-GWT Web 应用程序中。由于我不知道这个产品,我访问了它的网站,发现它的开发似乎在 2007 年停止了,因为它的最后一个稳定版本是
在学习 5.2 上的 Ruby on Rails 实例学习教程时,我对 Rspec 感到很沮丧。 我目前正在尝试使用 rspec 测试我的路由,但测试总是失败,即使我据我所知正确地遵循了教程中的步骤,
我是一名优秀的程序员,十分优秀!