Skip to content

TIPOFF/authorization

Repository files navigation

Authorization

Latest Version on Packagist Tests Total Downloads

This Laravel package contains an opinionated implementation of Authorization allowing users to have multiple email addresses and unique usernames.

Installation

Before installing the package, you must first install Laravel Nova.

You can install the package via composer:

composer require tipoff/authorization

The migrations will run from the package. You can extend the Models from the package if you need additional classes or functions added to them.

This package requires the following additions to your Laravel repo's config/auth.php

    'guards' => [
        // ...
        'email' => [
            'driver' => 'session',
            'provider' => 'email',
        ],
        // ...
   ],
   // ...
    'providers' => [
        // ...
        'users' => [
            'driver' => 'tipoff',
            'model' => Tipoff\Authorization\Models\User::class,
        ],
        // ...
        'email' => [
            'driver' => 'eloquent',
            'model' => Tipoff\Authorization\Models\EmailAddress::class,
        ],        
        // ...
   ],
   // ...

For developing Laravel applications, it is recommended to create a migration with an admin user.

Models

We include the following models:

List of Models

  • Email Address
  • User

For each of these models, this package implements an authorization policy that extends the roles and permissions approach of the tipoff/authorization package. The policies for each model in this package are registered through the package and do not need to be registered manually.

The models also have Laravel Nova resources in this package and they are also registered through the package and do not need to be registered manually.

Testing

composer test

Changelog

Please see CHANGELOG for more information on what has changed recently.

Contributing

Please see CONTRIBUTING for details.

Security Vulnerabilities

Please review our security policy on how to report security vulnerabilities.

Credits

License

The MIT License (MIT). Please see License File for more information.