PHP code example of waventra / laravel-identity
1. Go to this page and download the library: Download waventra/laravel-identity library . Choose the download type require .
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
waventra / laravel-identity example snippets
use Illuminate\Foundation\Auth\User as Authenticatable;
use Waventra\Identity\Traits\HasIdentity;
use Waventra\Jwt\Contracts\JwtSubject;
class User extends Authenticatable implements JwtSubject
{
use HasIdentity;
}
'user' => [
'model' => App\Models\User::class,
'table' => 'users',
],
'guards' => [
'api' => [
'driver' => 'jwt',
'provider' => 'users',
],
],
use Waventra\Identity\Facades\Identity;
$pair = Identity::attempt(['email' => $email, 'password' => $password], $request);
$pair = Identity::issue($user, $request);
Identity::refresh($refreshToken, $request);
Identity::logout($request->bearerToken(), $refreshToken, $request);
Identity::logoutAll($user);
Route::middleware(['jwt.auth', 'role:admin'])->get('/admin', ...);
Route::middleware(['jwt.auth', 'permission:users.create'])->post('/users', ...);
use Waventra\Identity\Facades\Identity;
Identity::createRole('admin');
Identity::createPermission('users.create');
$role = Identity::findRole('admin');
$role->givePermissionTo('users.create');
$user->assignRole('admin');
$user->givePermissionTo('users.delete');
$user->hasRole('admin');
$user->hasPermissionTo('users.create');
$user->hasAnyRole(['admin', 'editor']);
$user->hasAllPermissions(['users.create', 'users.delete']);
$user->can('users.create');
Route::get('/users', ...)->middleware('role:admin');
Route::post('/users', ...)->middleware('permission:users.create');
Route::get('/settings', ...)->middleware('role_or_permission:admin|settings.edit');
$team = $user->createTeam('Acme');
$team->addMember($other, 'admin');
$user->switchTeam($team);
$user->belongsToTeam($team);
$user->isOwnerOf($team);
$user->hasTeamRole($team, ['owner', 'admin']);
$invitation = $user->inviteToTeam($team, '[email protected] ', 'member');
$jane->acceptTeamInvitation($invitation->token);
$user->assignRole('editor', $team);
$user->hasRole('editor', $team);
Identity::setTeam($team);
$user->hasPermissionTo('posts.publish');
Identity::forgetTeam();
bash
php artisan vendor:publish --tag=identity-config
php artisan migrate
bash
php artisan jwt:generate-keys