相关疑难解决方法(0)

如何使用Laravel Passport和自定义用户名列

现在我正在使用类似的东西来验证我的基站上的用户:

if (Auth::attempt($request->only(['id', 'password']))) {
            //
}
Run Code Online (Sandbox Code Playgroud)

如何修改此代码以使用自定义列作为用户名? https://laravel.com/docs/5.3/passport#password-grant-tokens

php oauth-2.0 laravel laravel-passport

31
推荐指数
2
解决办法
1万
查看次数

如何使用Laravel Passport Scopes + Password Grant Type限制用户操作

我已经为Laravel 5.3 设置了Laravel Passport包,正如官方文档(https://laravel.com/docs/5.3/passport#introduction)中所述.

我希望API由移动应用程序使用,因此我尝试实现密码授予令牌.我创建了一个密码授予客户端,以及令牌请求进程......

$response = $http->post('http://my-app.com/oauth/token', [
    'form_params' => [
        'grant_type' => 'password',
        'client_id' => 'client-id',
        'client_secret' => 'client-secret',
        'username' => 'my@email.com',
        'password' => 'my-password',
        'scope' => '',
    ],
]);
Run Code Online (Sandbox Code Playgroud)

...按预期工作,为我的一个用户返回访问令牌刷新令牌.

但是现在我想定义一些范围,以便限制用户的访问权限......再次按照文档,我在AuthServiceProvider.php的启动方法中定义它们,如:

Passport::tokensCan([
    'admin' => 'Perform every action',
    'user' => 'Perform only normal user actions',
]);
Run Code Online (Sandbox Code Playgroud)

在这种情况下,如果"恶意"普通用户请求一个令牌(使用上面的POST调用)指定'scope' => 'admin',他或她将获得一个"管理员"令牌......这不是我想要的.

因此,我想知道在这种情况下工作流如何有效地限制对普通用户的访问,以及我在哪里实现范围验证逻辑.

提前致谢.

php oauth-2.0 laravel laravel-5.3 laravel-passport

9
推荐指数
1
解决办法
2201
查看次数

如何使用Laravel Passport为密码授予客户端创建令牌?

我正在构建一个API,我正在使用Laravel Passport进行身份验证.

API正用于我们的移动应用程序,因此我们使用密码授予客户端.

一切都很好,用户可以登录以获取访问令牌.我们创建了一个允许用户注册的注册端点.我们现在还需要API来返回访问令牌.

浏览文档无法以编程方式创建访问令牌.

如何在控制器中为密码授予客户端创建访问令牌?我显然不想对我自己的API执行HTTP请求来获取它.

我知道我可以使用个人访问授权客户端并调用createToken用户模型,但这意味着访问令牌与不同的客户端相关联.这对我来说似乎不对.

php oauth laravel laravel-passport

9
推荐指数
2
解决办法
3974
查看次数

如何在Passport中处理密码授予令牌的client_id和client_secret

我试图弄清楚如何处理Passport包中的密码授予令牌.我应该将client_id和client_secret存储在.env文件中,还是在请求令牌时直接从数据库中获取值?

laravel laravel-passport

7
推荐指数
1
解决办法
1167
查看次数

标签 统计

laravel ×4

laravel-passport ×4

php ×3

oauth-2.0 ×2

laravel-5.3 ×1

oauth ×1