Laravel Passport - 您如何禁止用户生成客户端?
Laravel Passport - How do you disallow users from generating clients?
Passport 提供了一种方便的方法来注册路由,用户可以通过调用 Passport::routes() 来创建自己的客户端;在 AuthServiceProvider 中。
我不想让我的用户创建客户端,因为我只想使用 php artisan passport:client
命令手动创建客户端,因为我只需要用于内部服务的机器对机器身份验证的通行证。
如何自定义 Passport 的路由以仅公开传递客户端 ID 和机密以获得 access_token 的必要路由?我知道我可以深入研究框架并将自己的路由暴露给一系列 \Laravel\Passport\Http\Controllers\PassportController@action,我只是不知道那是唯一的方式还是首选方式。
您可以在 AuthServiceProvider 中将闭包传递给 Passport::routes()
。
参见 here
在闭包中,您可以定义应注册哪些路由。
像这样:
Passport::routes(function ($router) {
$router->forAuthorization();
$router->forAccessTokens();
// etc.
);
Here 是可用的方法:
forAuthorization();
forAccessTokens();
forTransientTokens();
forClients();
forPersonalAccessTokens();
Passport 提供了一种方便的方法来注册路由,用户可以通过调用 Passport::routes() 来创建自己的客户端;在 AuthServiceProvider 中。
我不想让我的用户创建客户端,因为我只想使用 php artisan passport:client
命令手动创建客户端,因为我只需要用于内部服务的机器对机器身份验证的通行证。
如何自定义 Passport 的路由以仅公开传递客户端 ID 和机密以获得 access_token 的必要路由?我知道我可以深入研究框架并将自己的路由暴露给一系列 \Laravel\Passport\Http\Controllers\PassportController@action,我只是不知道那是唯一的方式还是首选方式。
您可以在 AuthServiceProvider 中将闭包传递给 Passport::routes()
。
参见 here
在闭包中,您可以定义应注册哪些路由。
像这样:
Passport::routes(function ($router) {
$router->forAuthorization();
$router->forAccessTokens();
// etc.
);
Here 是可用的方法:
forAuthorization();
forAccessTokens();
forTransientTokens();
forClients();
forPersonalAccessTokens();