我是一名尝试学习 Rails 和 RESTful 方法的 ASP.NET 开发人员。为了理解,我打算编写一个电子邮件客户端,它会对服务器进行 RESTful GET 调用以获取电子邮件并通过 POST 发送电子邮件。
要遵循哪些最佳实践(通用和/或特定于 Rails),以便上述应用程序不会暴露任何 XSRF 漏洞。
我是一名尝试学习 Rails 和 RESTful 方法的 ASP.NET 开发人员。为了理解,我打算编写一个电子邮件客户端,它会对服务器进行 RESTful GET 调用以获取电子邮件并通过 POST 发送电子邮件。
要遵循哪些最佳实践(通用和/或特定于 Rails),以便上述应用程序不会暴露任何 XSRF 漏洞。
Ruby on Rails 安全项目对此有一篇很好的文章。
本质上,Rails 2.0 及更高版本具有针对 XSRF 攻击的内置保护。通过表单助手创建的每个表单都包含一个带有特殊标记的隐藏字段。每次收到 POST(或非 GET)时,都会根据服务器上的机密检查令牌。如果它们不匹配,则会引发安全异常并忽略请求。
阅读文章。他们在解释方面做得更好。