Laravel 5.4 Passport限制在特定路线上使用个人访问令牌

时间:2017-03-13 19:57:02

标签: laravel laravel-5.4 laravel-passport

所以我有一个我一直在开发的API,一些路由显然需要一个用户实例,以便我在服务器端完全完成请求。

我想知道的是,有没有办法限制laravel中的某些路由,以便它需要一个完整的oauth令牌而不仅仅是一个个人访问令牌。 目前唯一可以看出过滤出来的方法是添加令牌范围。但是,我宁愿避免添加范围只是为了过滤掉个人访问令牌与客户端的使用....

想法......

由于

CITTI

1 个答案:

答案 0 :(得分:1)

据我所知,个人访问令牌被分配给某个用户。这是来自docs

  

创建个人访问客户端后,您可以使用User模型实例上的createToken方法为给定用户发出令牌。

为特定用户发布个人访问令牌:

$user = App\User::find(1);

// Creating a token without scopes...
$token = $user->createToken('Token Name')->accessToken;

这样,您就Bearer $token/user路线发出请求:

Route::get('/user', function () {
    return Auth::user();
})->middleware('auth:api');

响应将是精确的用户,为其创建PAT。因此,您只需使用auth:api中间件

保护您的路线