elshaden/apiato-sanctum

Implementation of Laravel Sanctum in Apiato Projects .

Installs: 265

Dependents: 0

Suggesters: 0

Security: 0

Stars: 5

Watchers: 1

Forks: 0

Open Issues: 0

Type:apiato-container

2.0 2022-10-15 10:12 UTC

This package is auto-updated.

Last update: 2024-05-15 13:54:56 UTC


README

Implementation of Laravel Sanctum in Apiato.

This Container is used to make use of Laravel Sanctum Authentication

Installation

Only Works in Existing Apiato Application
Read more about the Apiato container installer in the docs!


Note

using Sanctum will limit the use of existing Laravel Passport in Apiato, I have not tested it with both but you should not use both at the same time.



#### Version 2.0 Has Been Updated to support Sanctum 3.0 #### Steps to Install

You should have fully installed working Apiato including Passport.

To Install Sanctum in Existing Apiato Application

composer require elshaden/apiato-sanctum

You need To Change the use HasApiTokens in the App\Ship\Parents\Models\UserModel to use Sanctum Trait

use Laravel\Sanctum\HasApiTokens;

php artisan migrate this will create the sanctum_personal_access_token table

and you are ready to go

Check sanctum config file in Configs Dir for any changes

You can have a look at the routes to understand how to use the Sanctum in Apiato

To use the Sanctum middleware you need to change the middleware in your routes to

    ->middleware(['auth:sanctum'])

Use of Sanctum abilities has not been implemented yet. You can add abilities to Sanctum and use in Apiato. You will need to see the Sanctum docs for more info.

I personally prefer using the existing permissions' system in Apiato with Sanctum.

Sanctum will work with existing Permissions and Roles as you would expect with Passport.

Sanctum uses web guard, there is no need to create a sanctum guard.

Note: when seeding existing users, permissions or anythng that uses the guard name you need to skip adding sanctum guard

if($guardName == 'sanctum') continue;

Thanks for using Apiato-Sanctum

I welcome any feedback, questions or suggestions.