我正在用 laravel sainttum 进行测试,但这里有一些问题..
我正在创建管理员警卫。
当我将中间件更改为 auth:sanctum_admin ..它应该只能由管理员访问,但在这里我可以使用带有网络防护的普通用户帐户进行访问。我不知道为什么?...我使用带有多身份验证包的护照。没问题。但在密室里不能将用户表和管理员分开。
您也可以在圣所中使用多个守卫。为此,请按照下列步骤操作 -
- 根据需要创建您自己的守卫。 (在
config/auth.php
)
'guards' => [
'web' => [
'driver' => 'session',
'provider' => 'users',
],
'api' => [
'driver' => 'token',
'provider' => 'users',
'hash' => false,
],
'admin' => [
'driver' => 'session',
'provider' => 'admins',
]
],
- 设置提供商。 (在
config/auth.php
)
'providers' => [
'users' => [
'driver' => 'eloquent',
'model' => App\User::class,
],
'admins' => [
'driver' => 'eloquent',
'model' => App\Admin::class,
],
],
- 当您验证用户身份时使用此防护。 (在路线文件中)
if(auth()->guard('admin')->attempt($request->only('email','password')))
{
return auth()->guard('admin')->user();
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)