限制Laravel Passport中的客户授权

时间:2018-07-03 14:54:47

标签: php laravel oauth-2.0 laravel-passport

我正在使用Laravel Passport(Laravel 5.6),并使用了密码授予功能。我有两个客户:appcms。我希望cms客户端能够读取,写入和删除。 app客户端应该只能阅读。

为什么不为此使用范围?因为app客户端将具有其用户名和密码以及作用域请求(采用硬编码)。因此,从理论上讲,它可以反编译并更改scope

所以我需要根据客户限制行为。 Laravel Passport是否有可能?

1 个答案:

答案 0 :(得分:0)

如果您的应用具有用户名/密码,则意味着您可以对用户(应用程序)进行身份验证并分配权限/角色策略,您应该选中此https://laravel-news.com/two-best-roles-permissions-packages

如果要实现作用域,请记住它们并不像oauth2中那样直接应用于用户,基本上您是在授予应用程序代表用户访问某些资源的权限,请检查此答案Laravel Passport Scopes

因此,您可以尝试进行授权流程,基本上,每次客户端需要某个特定范围时,它都会向用户请求授权,就像权限更改时的任何应用程序一样。