2017-10-30 20 views
1

私は、APIルートに対してパスポート認証付きのlaravel 5.5を使用しています。私はベアラートークンを使用しています。 問題は、認証されていない古いトークンが受け入れられることです。 手順:Laravelパスポート新しいトークンの生成時に承認トークンが期限切れになる

  • ベアラトークンを1つ作成します。これを使って。それは正常に動作しています。
  • ログアウトなしで別のトークンを作成しても問題ありません。
  • 私が最初に作成したトークンを使用すると、それも動作しています。それは動作してはならないが、受け入れられる。

これを達成できる方法はありますか? ありがとうございます。

答えて

2

考えられる解決策の1つは です。新しいトークンを作成する前に、古いトークンが存在するかどうかを確認して削除してください。これを行うには:

OauthAccessToken

今すぐ更新

/** 
* 1:n zu access token, we need to logout users 
* 
* @return \Illuminate\Database\Eloquent\Relations\HasMany 
*/ 
public function accessTokens() 
{ 
    return $this->hasMany(OauthAccessToken::class); 
} 

あなたはこれをチェックして、ユーザーからのすべてのトークンを削除することができ、次の自分のユーザーモデルをという名前のモデルを作成し

if ($user->accessTokens->count() > 0) { 
    $user->accessTokens()->delete(); 
} 
+0

こんにちはMatzありがとうございます。私はこれを取得し、 'oauth_access_tokens'からトークンを削除しました。それは正常に動作しています。トークンをリフレッシュすることでこれを達成できませんか? – Nilesh

+0

私はまだ試していない;)多分私は後でやるだろう。 – Matz

関連する問題