php-将REST API中的CRUD限制为所有者

我的api定义了以下路由:

GET test.com/api/v1/users
POST test.com/api/v1/users
PUT test.com/api/v1/users/{id}
GET test.com/api/v1/users/{id}
DELETE test.com/api/v1/users/{id}

另外,我正在使用OAuth2密码身份验证,因此这些资源仅在身份验证后可用.

我的观点是..保持RESTFULL API原则,我应该如何限制将PUT和DELETE方法限制为实际的资源所有者?

基本上,我不希望所有人以外的任何人都能编辑他的信息.

解决方法:

您已经实现了系统的身份验证部分,这意味着您的应用程序知道用户是谁.现在,您需要设计一个授权子系统,即您的用户有权访问的子系统.

由于您的问题被标记PHP和Laravel,因此Google对laravel授权的快速搜索会产生以下结果:

https://github.com/machuga/authority-l4

要么

http://laravel.io/forum/02-03-2014-authority-controller-authorization-library-cancan-port

这应该是一个很好的起点.

相关文章

laravel的dd函数不生效怎么办
看不懂laravel文档咋办
安装laravel框架出现command怎么办
Laravel开发API怎么使用事务
laravel怎么构建复杂查询条件
laravel如何实现防止被下载