2017-03-04 1 views
2

私はLaravelでRESTful APIを構築しました。ユーザーがレコードを作成または更新したい認証があり特別なセキュリティのためにLaravel APIでアプリケーショントークンを使用する

はしかし、私は、アプリケーショントークンとセキュリティの余分なレベルを追加したいです。

.envファイルにこのトークンを配置しています。私のAPIが何かを行うために、リクエストにapp_token="uniquestring"が含まれているかどうかを確認します。

基本的には、ユーザーに正しいapi_tokenがあるかどうかは関係ありません。要求にapplication_tokenがない場合はfalseを返すようにしてください。

私はいくつかのコントローラを持っていますが、私はこれをハードコードできると確信していますが、グループを作成して特定のルールを設定すると、app_token != {my app token}の場合はRequest deniedライン?

どのようなヒントも大歓迎です。前もって感謝します!

答えて

1

はい、あなたは正しいアプローチをしています。 Burはむしろミドルウェアを作ってルートグループに適用します。

public function handle($request, Closure $next) 
{ 
    if ($request->header('app_token') && $request->header('app_token') == 'uniquestring') { 
     return $next($request); 
    } 
    return response('Unauthorized.', 401); 
} 

あなたのミドルウェアを想定して、あなたのルートへのミドルウェアとして追加kernel.php

Route::group(['middleware' => ['auth:api', 'apptoken']], function(){ 
    ... 
}); 
に「apptoken」との別名であります
関連する問題