【问题标题】:Laravel Passport - How do you disallow users from generating clients?Laravel Passport - 你如何禁止用户生成客户端?
【发布时间】:2019-05-07 03:08:57
【问题描述】:

Passport 通过调用 Passport::routes() 为用户提供了一种注册路由的便捷方式来创建自己的客户端;在 AuthServiceProvider 中。

我不希望允许我的用户创建客户端,因为我只想使用php artisan passport:client 命令手动创建客户端,因为我只需要用于内部服务的机器对机器身份验证的护照。

如何自定义 Passport 的路由以仅公开传递客户端 ID 和机密以获取 access_token 的必要路由?我知道我可以深入研究框架并将我自己的路由暴露给一系列 \Laravel\Passport\Http\Controllers\PassportController@action,我只是不知道这是唯一的方式还是首选方式。

【问题讨论】:

    标签: php laravel laravel-5 oauth-2.0 laravel-passport


    【解决方案1】:

    您可以在 AuthServiceProvider 中将闭包传递给 Passport::routes()。 见here

    在闭包中你可以定义应该注册哪些路由。

    类似这样的:

    Passport::routes(function ($router) {
        $router->forAuthorization();
        $router->forAccessTokens();
        // etc.
    );
    

    Here 是可用的方法:

    forAuthorization();
    forAccessTokens();
    forTransientTokens();
    forClients();
    forPersonalAccessTokens();
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-12-21
      • 2019-07-21
      • 1970-01-01
      • 2018-03-23
      • 2019-04-17
      • 1970-01-01
      • 2012-11-13
      • 2023-04-03
      相关资源
      最近更新 更多