HTTP 基本認(rèn)證

2018-02-24 15:52 更新

HTTP 基本認(rèn)證提供了一個(gè)快速的方式來認(rèn)證用戶而不用特定設(shè)置一個(gè)「登入」頁。在您的路由內(nèi)設(shè)定 auth.basic 中間件則可啟動(dòng)這個(gè)功能:

用 HTTP 基本認(rèn)證保護(hù)路由

Route::get('profile', ['middleware' => 'auth.basic', function()
{
    // Only authenticated users may enter...
}]);

默認(rèn)情況下 basic 中間件會(huì)使用用戶的 email 列當(dāng)做「 username 」。

設(shè)定無狀態(tài)的 HTTP 基本過濾器

你可能想要使用 HTTP 基本認(rèn)證,但不會(huì)在 session 里設(shè)置用戶身份的 cookie,這在 API 認(rèn)證時(shí)特別有用。如果要這樣做,定義一個(gè)中間件并調(diào)用 onceBasic 方法:

public function handle($request, Closure $next)
{
    return Auth::onceBasic() ?: $next($request);
}

如果你使用 PHP FastCGI,HTTP 基本認(rèn)證可能無法正常運(yùn)行。請?jiān)谀愕?.htaccess 文件內(nèi)新增以下代碼:

RewriteCond %{HTTP:Authorization} ^(.+)$
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)