An open API service indexing awesome lists of open source software.

https://github.com/code4mk/kauth

🔑 kauth is JWT API Authentication ( jwt-auth ) for laravel
https://github.com/code4mk/kauth

0devco auth code4mk jwt-auth kauth laravel laravel-api laravel-auth laravel-jwt

Last synced: about 2 months ago
JSON representation

🔑 kauth is JWT API Authentication ( jwt-auth ) for laravel

Awesome Lists containing this project

README

        

![kauth](https://user-images.githubusercontent.com/17185462/52489899-aa8b2500-2bed-11e9-8092-9b44bb827d17.png)

# `kauth`
kauth is JWT API Authentication ( jwt-auth ) for laravel

# Installation
you can install kauth package by command
```bash
composer require code4mk/kauth
```
# Setup

### 1) Vendor publish.

```bash
php artisan vendor:publish --provider="Kauth\KauthServiceProvider" --tag=config
php artisan vendor:publish --provider="Kauth\KauthServiceProvider" --tag=migations
```
### 2) Config setup

* `config\kauth.php`

* set `token_header_name` that you can use with guzzle or axios header
* default `token_header_name` name is `tokon`

# Usage

## `Kauth::attempt()` functions

* guard('name')
```php
// guard name will be user table name
Kauth::guard("users")
```
* socialite()->attempt()
```php
// laravel socialite system
// credential will be only email
Kauth::guard("users")->socialite()
->attempt(["email"=>"[email protected]"]);
```
* normal attempt()
```php
// your all desired credentials
// password credentail need
Kauth::guard("users")
->attempt(["email"=>"[email protected]","password"=>1234])
```

~ `attempt() return a jwt token` which you pass with request header (ex:axios header)
## attempt special

* username credential will be optional as (id|email|username) . (ex: facebook username)
* `usernames` describe which columns you want to match for username

```php
attempt(["usernames"=>["id","email","name"],"username"=>"request query for username","password=>123456"]);
```
## Kauth::check()

```php
Kauth::check();
```
## Kauth::id()

```php
Kauth::id();
```

## Kauth::refreshToken()

```php
Kauth::refreshToken()
```

## Kauth::logout()

```php
Kauth::logout();
```

## Kauth::logoutOtherDevices()

```php
Kauth::logoutOtherDevices();
```