2016-10-11 2 views
1

Laravel 5에서 인증을위한 사용자 정의 모델 클래스를 만들었습니다. 이미 User 클래스를 나타내는 auth.phpjwt.php 특성을 변경했습니다.Laravel 5의 JWT 사용자 정의 인증

JWT가 작동하지만 로그인하려고 할 때 데이터베이스에 등록기가 있어도 잘못된 자격 증명 오류가 반환됩니다.

나는 암호화에 대해 뭔가 있어야한다고 생각했기 때문에 암호를 암호화하려고 시도했으며 DB의 암호 해시 필드 (아직 암호화되지 않았 음)로 업데이트했습니다. 하지만 여전히 자격 증명 오류가 있습니다.

<?php 

namespace App\Http\Controllers; 

use Illuminate\Http\Request; 

use App\Http\Requests\AuthRequest; 
use App\Http\Requests; 
use JWTAuth; 
use Tymon\JWTAuth\Exceptions\JWTException; 

class AuthController extends Controller 
{ 
    public function login(AuthRequest $request) { 
     $credentials = [ 
      'email' => $request->input('email'), 
      'password' => bcrypt($request->input('password')) 
     ]; 

     try { 
      if (! $token = JWTAuth::attempt($credentials)) { 
       return response()->json(['error' => 'invalid_credentials'], 401); 
      } 
     } catch (JWTException $e) { 
      return response()->json(['error' => 'could_not_create_token'], 500); 
     } 

     return response()->json(['token' => $token]); 
    } 
} 

누군가이 문제를 어떻게 해결할 수 있는지 알고 있습니까?

답변

0

해결했습니다. 저장된 암호와 매개 변수 암호 사이에 문제가있었습니다. 나는 bcrypt를 없애고 필드를 데이터베이스에 암호화했다.