Download the PHP package atrauzzi/authoritaire without Composer

On this page you can find all versions of the php package atrauzzi/authoritaire. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package authoritaire

Authorization for Eloquent Models

Authoritaire is an attempt to create a simple, orthogonal authorization library. The premise came after seeing many Laravel 4 user libraries that couple too tightly with projects and attempt to do too much.

Authoritaire facilitates role-based and permissions-per-role authorization checks. Many systems can get by using only roles, however if you need more fine-grained control over things, permissions are available.

Usage

Using Authoritaire is as simple as running the migration:

./artisan migrate --package="atrauzzi/authoritaire"

Implement the interface Authorizable and then add the trait AuthorizableImpl to any model you wish to perform permission checks on.

use Atrauzzi\Authoritaire\Model\Authorizable;
use Atrauzzi\Authoritaire\Model\AuthorizableImpl;

class User implements UserInterface, RemindableInterface, Authorizable {
  use AuthorizableImpl;

  // ...

You can create new Permissions by instantiating them and relating them to a Role.

$eatPlants = Atrauzzi\Authoritaire\Model\Permission::create([
  'name' => 'Eat Plants'
]);

$vegetarian = Atrauzzi\Authoritaire\Model\Role::create([
  'name' => 'Vegetarian',
  'description' => 'Does not eat meat.'
]);
$vegetarian->permissions()->save($eatPlants);

You can grant authorizables membership to Roles from either side using addRole() from Authorizable or addAuthorizable() from Role:

$a = User::first();
$r = Atrauzzi\Authoritaire\Model\Role::where('name', '=', 'Vegetarian')->first();

// Add from authorizable-side.
$a->addRole($r);
// Or add from role-side.
$r->addAuthorizable($a);

Performing checks is as simple as asking the user if they are either a member of a role or have access to a permission. Authoritaire will take care of everything.

$u->is('Vegetarian');                       // true
$u->can('Eat Plants');                      // true
$u->is('Administrator');                    // false

// You can also perform checks for a set of permissions or roles.
$u->is(['Administrator', 'Vegetarian']);    // false

Currently

This version of Authoritaire makes use of some workarounds due to limitations in Laravel 4's polymorphic relations. As such, one join table has to be more directly manipulated than I would have liked.

License

The Laravel framework is open-sourced software license under the MIT license

This project is too to ensure maximum compatibility.

Meta

I'm interested in hearing feedback and suggestions about this package. Please feel free to submit a ticket at any time.

Visit authoritaire:

Authoritaire is made by Alexander Trauzzi

A big thank you to Todd Francis for his original work on Verify-L4! While I didn't keep the lion's share of his work, it has mostly inspired the schema.


All versions of authoritaire with dependencies

PHP Build Version
Package Version
Requires php Version >=5.4.0
illuminate/database Version 4.*
illuminate/support Version 4.*
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package atrauzzi/authoritaire contains the following files

Loading the files please wait ....