2017 © Pedro Peláez
 

library passport-token

Dirty Decoder for Laravel Passport (Bearer) Access Token

image

peterpetrus/passport-token

Dirty Decoder for Laravel Passport (Bearer) Access Token

  • Thursday, June 28, 2018
  • by peterpetrus
  • Repository
  • 0 Watchers
  • 7 Stars
  • 724 Installations
  • PHP
  • 1 Dependents
  • 0 Suggesters
  • 1 Forks
  • 0 Open issues
  • 8 Versions
  • 96 % Grown

The README.md

passport-token

Decoder for Laravel Passport (Bearer) Access Token., (*1)

Functionality

Decode Access-Token and return array with its IDs (token_id, user_id), Dates (date of expire, date of creation, start date) and validity and errors., (*2)

Donate with Lightning Network , (*3)

Installation

Installation via composer:, (*4)

``` bash composer require peterpetrus/passport-token, (*5)


## Example ### Decode token as Object Object has same properties as returned array fields below. ```php use PeterPetrus\Auth\PassportToken; $token = new PassportToken( 'eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjI2YTUyMTMxNDAzOGQ0NGY3OTVkMzYwZGQ0ZDlkNDBlYTQyNGU4N2ZlMjUyMmVhMTk5ZjU2ZWVmODg0ZTFhNWNmNjg2Nzk3NmQ2MDRmOWY5In0.eyJhdWQiOiIyIiwianRpIjoiMjZhNTIxMzE0MDM4ZDQ0Zjc5NWQzNjBkZDRkOWQ0MGVhNDI0ZTg3ZmUyNTIyZWExOTlmNTZlZWY4ODRlMWE1Y2Y2ODY3OTc2ZDYwNGY5ZjkiLCJpYXQiOjE1MTI3NDc1OTIsIm5iZiI6MTUxMjc0NzU5MiwiZXhwIjoxNTE4MTA0MzkyLCJzdWIiOiIxIiwic2NvcGVzIjpbXX0.toksHokX_RZ7eRToL_owakMJ3gbi0nppD5yrhA9C5McVSnn3WraA4NwBcwQVlkv316BTUOaJ14unBNEg1UKGuK4EhoiTBMdT1cSkgH1HKZg2SXNBrCPi9YY4g4-4qpfxQqLeBM5JsVbouD6VeeBmDJUGVcoXDXimKEft4lgkIIqPCmWOV9HscKkRQ23lyVhXaQo4TMoCUZfM2ppyqdl2wTsrXp7woQMbqwVo9bnc4d6opj55XvMgal5MmY8YXDHpJO29UWkn2mTIL3kB6KP_WDHg5LJU0r1ua1lTn8Om97Z4eMFFUlipq7yODSgtML92kiZef7JAX3DecxJbzB9tcDk22NtSoBzlHy86ZJHU9rKhcIuKbpys6X2dAHAlkS7GUCWHqZcwN38LfjoyUEiP7QHkLNogSZQZE_I7FPKLYpxyOiR83K4IZGlOEeiEJZGCVqUWviyyIfWRA3gusk6p5cB4begxOne_l0vnNRH2WiB-WOKBytL1fKeXwaJj8AIFGj03Wvb0OYqp01ef05kiX9Y-PbHYYi_x5L8fcywXqo3ubKKiChqTCXirLH9ENcTwQT0C32Z2EgLlNnyF5iH9XQuW5UN36ke63ad0iIjlEhinoOOF8OK8IDKiHGIQ0qJwZxFG3EVDX3UFQpZUaAgYlNTTXhyT-fvf1dNR8msy-h0' ); if ($token->valid) { // Check if token exists in DB (table 'oauth_access_tokens'), require \Illuminate\Support\Facades\DB class if ($token->existsValid()) { Auth::login(User::find($token->user_id)); return redirect(...); } }

Decode token with static methods

use PeterPetrus\Auth\PassportToken;

$decoded_token = PassportToken::dirtyDecode(
    'eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjI2YTUyMTMxNDAzOGQ0NGY3OTVkMzYwZGQ0ZDlkNDBlYTQyNGU4N2ZlMjUyMmVhMTk5ZjU2ZWVmODg0ZTFhNWNmNjg2Nzk3NmQ2MDRmOWY5In0.eyJhdWQiOiIyIiwianRpIjoiMjZhNTIxMzE0MDM4ZDQ0Zjc5NWQzNjBkZDRkOWQ0MGVhNDI0ZTg3ZmUyNTIyZWExOTlmNTZlZWY4ODRlMWE1Y2Y2ODY3OTc2ZDYwNGY5ZjkiLCJpYXQiOjE1MTI3NDc1OTIsIm5iZiI6MTUxMjc0NzU5MiwiZXhwIjoxNTE4MTA0MzkyLCJzdWIiOiIxIiwic2NvcGVzIjpbXX0.toksHokX_RZ7eRToL_owakMJ3gbi0nppD5yrhA9C5McVSnn3WraA4NwBcwQVlkv316BTUOaJ14unBNEg1UKGuK4EhoiTBMdT1cSkgH1HKZg2SXNBrCPi9YY4g4-4qpfxQqLeBM5JsVbouD6VeeBmDJUGVcoXDXimKEft4lgkIIqPCmWOV9HscKkRQ23lyVhXaQo4TMoCUZfM2ppyqdl2wTsrXp7woQMbqwVo9bnc4d6opj55XvMgal5MmY8YXDHpJO29UWkn2mTIL3kB6KP_WDHg5LJU0r1ua1lTn8Om97Z4eMFFUlipq7yODSgtML92kiZef7JAX3DecxJbzB9tcDk22NtSoBzlHy86ZJHU9rKhcIuKbpys6X2dAHAlkS7GUCWHqZcwN38LfjoyUEiP7QHkLNogSZQZE_I7FPKLYpxyOiR83K4IZGlOEeiEJZGCVqUWviyyIfWRA3gusk6p5cB4begxOne_l0vnNRH2WiB-WOKBytL1fKeXwaJj8AIFGj03Wvb0OYqp01ef05kiX9Y-PbHYYi_x5L8fcywXqo3ubKKiChqTCXirLH9ENcTwQT0C32Z2EgLlNnyF5iH9XQuW5UN36ke63ad0iIjlEhinoOOF8OK8IDKiHGIQ0qJwZxFG3EVDX3UFQpZUaAgYlNTTXhyT-fvf1dNR8msy-h0'
);

if ($decoded_token['valid']) {
    // Check if token exists in DB (table 'oauth_access_tokens'), require \Illuminate\Support\Facades\DB class
    $token_exists = PassportToken::existsValidToken(
        $decoded_token['token_id'], 
        $decoded_token['user_id']
    );

    if ($token_exists) {
        Auth::login(User::find($decoded_token['user_id']));
        return redirect(...);
    }
}

Returned array $decoded_token

[
    "token_id" => "26a521314038d44f795d360dd4d9d40ea424e87fe2522ea199f56eef884e1a5cf6867976d604f9f9",
    "user_id" => "1",
    "expecting" => false,
    "start_at_unix" => 1512747592,
    "start_at" => "2017-12-08T15:39:52+0000",
    "incorrect" => false,
    "created_at_unix" => 1512747592,
    "created_at" => "2017-12-08T15:39:52+0000",
    "expired" => false,
    "expires_at_unix" => 1518104392,
    "expires_at" => "2018-02-08T15:39:52+0000",
    "error" => false,
    "errors" => [],
    "valid" => true
]

The Versions

28/06 2018

dev-master

9999999-dev

Dirty Decoder for Laravel Passport (Bearer) Access Token

  Sources   Download

MIT

The Requires

  • php ^5.3.3 || ^7.0

 

28/06 2018

0.0.7

0.0.7.0

Dirty Decoder for Laravel Passport (Bearer) Access Token

  Sources   Download

MIT

The Requires

  • php ^5.3.3 || ^7.0

 

22/04 2018

0.0.6

0.0.6.0

Dirty Decoder for Laravel Passport (Bearer) Access Token

  Sources   Download

MIT

The Requires

  • php ^5.3.3 || ^7.0

 

10/12 2017

0.0.5

0.0.5.0

Dirty Decoder for Laravel Passport (Bearer) Access Token

  Sources   Download

MIT

The Requires

  • php ^5.3.3 || ^7.0

 

10/12 2017

0.0.4

0.0.4.0

Dirty Decoder for Laravel Passport (Bearer) Access Token

  Sources   Download

MIT

The Requires

  • php ^5.3.3 || ^7.0

 

10/12 2017

0.0.3

0.0.3.0

Dirty Decoder for Laravel Passport (Bearer) Access Token

  Sources   Download

MIT

The Requires

  • php ^5.3.3 || ^7.0

 

09/12 2017

0.0.2

0.0.2.0

Dirty Decoder for Laravel Passport (Bearer) Access Token

  Sources   Download

MIT

The Requires

  • php ^5.3.3 || ^7.0

 

09/12 2017

0.0.1

0.0.1.0

Dirty Decoder for Laravel Passport (Bearer) Access Token

  Sources   Download

MIT

The Requires

  • php ^5.3.3 || ^7.0