我做了多次授权,但我有最终代码的问题。我有这样的代码
php artisan make:auth
它将为用户表生成基本的登录/注册路由、视图和控制器。
为了简单起见,将管理表作为用户表。
管理员应用的控制器/Http/Controllers/AdminAuth/AuthController-app/Http/Controllers/AdminAuth/PasswordController(注意:我刚刚从app/Http/Controllers/Auth/AuthController这里复制了这些文件)
config/auth.php
//Authenticating guards
'guards' => [
'user' =>[
'driver' => 'session',
'provider' => 'user',
],
'admin' => [
'driver' => 'session',
'provider' => 'admin',
],
],
//User Providers
'providers' => [
'user' => [
'driver' => 'eloquent',
'model' => App\User::class,
],
'admin' => [
'driver' => 'eloquent',
'model' => App\Admin::class,
]
],
//Resetting Password
'passwords' => [
'clients' => [
'provider' => 'client',
'email' => 'auth.emails.password',
'table' => 'password_resets',
'expire' => 60,
],
'admins' => [
'provider' => 'admin',
'email' => 'auth.emails.password',
'table' => 'password_resets',
'expire' => 60,
],
],
route.php
Route::group(['middleware' => ['web']], function () {
//Login Routes...
Route::get('/admin/login','AdminAuth\AuthController@showLoginForm');
Route::post('/admin/login','AdminAuth\AuthController@login');
Route::get('/admin/logout','AdminAuth\AuthController@logout');
// Registration Routes...
Route::get('admin/register', 'AdminAuth\AuthController@showRegistrationForm');
Route::post('admin/register', 'AdminAuth\AuthController@register');
Route::get('/admin', 'AdminController@index');
});
AdminAuth/AuthController.php
添加两个方法并指定$reDirectTo和$Guard
protected $redirectTo = '/admin';
protected $guard = 'admin';
public function showLoginForm()
{
if (view()->exists('auth.authenticate')) {
return view('auth.authenticate');
}
return view('admin.auth.login');
}
public function showRegistrationForm()
{
return view('admin.auth.register');
}
它将帮助您打开另一个管理员登录表单
为管理员创建中间件
class RedirectIfNotAdmin
{
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @param string|null $guard
* @return mixed
*/
public function handle($request, Closure $next, $guard = 'admin')
{
if (!Auth::guard($guard)->check()) {
return redirect('/');
}
return $next($request);
}
}
在kernel.php中注册中间件
protected $routeMiddleware = [
'admin' => \App\Http\Middleware\RedirectIfNotAdmin::class,
];
use this middleware in AdminController e.g.,
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Http\Requests;
use App\Http\Controllers\Controller;
use Illuminate\Support\Facades\Auth;
class AdminController extends Controller
{
public function __construct(){
$this->middleware('admin');
}
public function index(){
return view('admin.dashboard');
}
}
这段代码是什么意思-
这个代码是什么意思Auth::警卫('admin')-
简而言之,Auth::警卫('admin')-
我必须在哪里输入代码?
从回答中,你可以明白你必须在哪里使用它。但是我仍然可以用例子来解释。假设有多个管理员。每个都可以批准用户的请求(如帖子/评论等)。因此,当管理员批准任何请求时,然后要将该管理员的id插入approved_bypost列中,您必须使用这一行。
问题内容: 在我的Java EE6 REST服务上,我想使用身份验证令牌从移动设备登录,用户将发送其用户名,密码,服务器将发回令牌,该令牌将用于授权用户对给定的进一步请求时间。 我可以这样简单地自己创建令牌吗?(我想我不需要加密此令牌,因为我将使用HTTPS。) 还是有一种更标准的方式来创建我的令牌?也许它存在于API之一 问题答案: 您有效地提出的方案允许客户端无限制地访问您的服务。初始登录后,
使用使用corda-webserver的webapp,如何实现用户的身份验证机制? 配置文件中提到的RPC用户。 并执行基于角色的操作(仅限可访问的流)。 我只能找到有关通过ClientRPCOps对RPC用户进行身份验证的详细信息,但找不到任何关于基于web的身份验证的信息。
问题内容: 有谁知道如何在laravel 5.2中使用多重身份验证! 我想使用它,但我不知道如何? 没有人有教程或项目设置多重身份验证吗? 问题答案: 您需要两个表,并 在命令后运行Run命令以创建内置身份验证 两种模型:Users(已存在)和Admin 现在打开config / auth.php并进行以下更改 创建一个新的中间件 Kernel.php中的更改 创建一个新文件夹Http / Con
我已经使用active directory登录,在验证active directory中的用户名和密码是否正确后,我想在passport中创建access。但是如果没有在中验证,我就无法创建令牌。 我从活动目录验证后尝试此代码 错误: 调用未定义的函数App\Http\Controllers\API\createToken() 如何在passport中创建访问令牌而不使用?
有人知道如何在laravel 5.2中使用多重身份验证吗<我想用,但不知道怎么用 是否有人有设置多重身份验证的教程或项目?
我正在尝试用.NET中的LDAP制作一个简单的身份验证系统。我检查了.NET中的一些名称空间,并简单地制作了标准代码片段,如下所示。 我有一个管理员用户名和密码和,用于对客户端应用程序进行身份验证。我有第二个用户名和密码和,需要在LDAP中检查才能登录。 是管理帐户,只是LDAP中的用户。那么如何检查的密码呢?