尝试根据本手册实现自定义授权服务提供者:
https://github.com/mikemclin/passport-custom-request-grant
在里面,register method
我们得到了 auth server 实例(使用 helper 方法),然后使用 AuthServer 添加我们的授权:
public function register()
{
app(AuthorizationServer::class)->enableGrantType($this->makeCustomRequestGrant(), Passport::tokensExpireIn());
}
这对我不起作用。我试图以另一种方式注册我的赠款:
$this->app->singleton(AuthorizationServer::class, function () {
return tap($this->makeAuthorizationServer(), function ($server) {
$server->enableGrantType(
$this->makeCustomRequestGrant(), Passport::tokensExpireIn()
);
});
});
如何使用另一个授权“扩展”我的单例服务器实例?就我而言,我只是实例化了新的,因此以前的授权类型变得不受支持。
主要目标是创建将使用另一种模型的授权 - 客户(而非用户)和授权激活码。用户将尝试使用 client_credentials 获取代码,然后他可以使用激活码授权进行 api 查询 - 使用另一个范围。