【问题标题】:Restful App making SAFE CRUD requests to the server using php laravelRestful App 使用 php laravel 向服务器发出 SAFE CRUD 请求
【发布时间】:2014-05-18 12:02:50
【问题描述】:

问题听起来可能类似于 Resful Designs 下的很多信息。

我阅读了大量文章,通过大量教程,试图了解 Resful 应用程序的工作原理。我看到一堆啧啧。调查了 OAuth,但这不是我需要的..

由于安全是我主要关心的问题,我遇到了应该如何处理随机数/哈希的问题!??

nonce/hashes 是什么意思;

我有一个使用 laravel 4.1 的 Restful 应用程序。框架,用户可以使用 Auth::User() 实现登录。一切都很好。我对应用程序提出的所有请求都是 CRUD。

我为什么要使用 nonces/hash;

让我在资源的 api 前缀下有 @DELETE Route("workouts/{id}") 用户可以使用 example.com/api/workouts/1 删除锻炼,是否还必须将 {nonce} 之类的内容附加到链接中,例如 example。 com/api/workouts/1/nonce/12321321313 因为每个其他用户都可能伪造重定向用户并让一个人删除自己的锻炼?

大部分文章都表明; 据我所知,出于安全考虑,我应该向服务器发送一个随机数以及 每个 ajax 请求,然后服务器必须验证并用新的随机数信息以及下一个随机数响应客户端要求?这是一个性能杀手,但就是这样吗?

HTTPS 请求??没有令牌/哈希或随机数? 所以有人说在安全登录(有效凭据)后在 HTTPS 协议下,不再需要为每个请求(例如 CRUD)发送随机数(到服务器)。使用凭据进行身份验证就足以对用户进行商品身份验证。

浏览所有 Laravel 角度教程 没有提到使用令牌随机数或任何东西,至少我没有看到。

我的主要问题是我应该如何设计服务器端路由,以便使用 laravel 使用令牌、随机数或哈希等向服务器发出更安全的请求?

我知道有很多主题,但它们对我来说似乎很理论化。我不知道哪些是准确的保护,哪些不是。所以感谢您的耐心阅读并希望得到一些准确的答复。..

请原谅我的英语:)..

【问题讨论】:

  • 你在创建 API 吗?
  • 它在技术上不是 API。它只是一个在服务器和客户端之间进行交互的完整应用程序。没有访问其他社交媒体 API 的权限要求。@ollieread
  • 您的应用程序是处理前端还是将数据提供给另一个系统?
  • 我猜你还没有阅读我上面写的内容。我说安静并且能够做 CRUD。因此它确实在服务器端处理前端ajax请求(插入删除upd等)并使用基于json的信息进行响应。 @ollieread
  • 说某些东西是 RESTful 并且可以执行 CRUD 并没有说明它是服务于前端还是充当 API。我创建了几个执行 CRUD 的 RESTful API,它只提供 json 数据,而不是前端。

标签: php security hash laravel token


【解决方案1】:

我认为使用术语 RESTful 应用程序有点误导。但是,如果你使用 REST API,你应该看看 JSON Web Token 来验证你的 API 的用户。

这里有一些有用的链接:JSON Web Token,还有一个 Laravel 包 jwt-auth 和一个 Angular 示例,请记住,Angular 示例与 Node.Js 一起使用,但它可以与 Laravel 集成。

如果你只是对 CRUD 的 PHP 脚本使用 AJAX 请求,为什么不使用一个包来保护 Laravel 免受 CSRF 攻击,只需 google 一下,你就会找到更多教程。

【讨论】:

    猜你喜欢
    • 2016-09-08
    • 2013-06-22
    • 1970-01-01
    • 2016-02-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多