Skip to content

Provides a simple yet powerful authorization system

License

Notifications You must be signed in to change notification settings

opportus/authorizer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Authorizer

License Latest Stable Version Latest Unstable Version Build

Index

Introduction

This library provides a generic and standardizable authorization system.

Roadmap

To develop this solution faster, contributions are welcome...

v1.1:

  • Implement property chain access support
  • Implement multiple condition authorization support
  • Implement multiple comparison operators support
  • Implement higher test coverage

Integrations

  • {{ reference_here_your_own_integration }}

Setup

Step 1 - Installation

Open a command console, enter your project directory and execute:

$ composer require opportus/authorizer

Step 2 - Initialization

This library contains 4 services. 3 of them require a single dependency which is another lower level service among those 4:

use Opportus\Authorizer\Authorizer;
use Opportus\Authorizer\ObjectPropertyAccessor\ObjectPropertyAccessor;

$objectPropertyAccessor = new ObjectPropertyAccessor();
$authorizer             = new Authorizer($objectPropertyAccessor);

In order for the authorizer to get properly initialized, each of its services it depends on must be instantiated such as above.

By design, this solution does not provide "helpers" for the instantiation of its own services which is much better handled the way you're already instantiating your own services, with a DIC system or whatever.

Authorization

Concept

An authorization is a use case assigned to an actor of your system.

An authorization is composed of:

  • an operation
  • (on) a resource
  • (under) an optional condition

Example Use Cases

...

About

Provides a simple yet powerful authorization system

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages