https://github.com/kelunik/access-control
Role based access control.
https://github.com/kelunik/access-control
Last synced: 2 months ago
JSON representation
Role based access control.
- Host: GitHub
- URL: https://github.com/kelunik/access-control
- Owner: kelunik
- License: mit
- Created: 2016-04-24T13:30:46.000Z (about 9 years ago)
- Default Branch: master
- Last Pushed: 2016-04-24T16:57:02.000Z (about 9 years ago)
- Last Synced: 2025-02-12T06:54:20.573Z (4 months ago)
- Language: PHP
- Size: 4.88 KB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# access-control
[](https://travis-ci.org/kelunik/access-control)
[](https://coveralls.io/github/kelunik/access-control?branch=master)
`kelunik/access-control` is a role based access control system.
## Requirements
- PHP 7.0+
## Installation
```bash
composer require kelunik/access-control
```## Usage
```php
$guest = new SimpleRole("guest", ["read"]);
$member = new CombinedRole("member", [$guest], ["read.internal"]);
$student = new CombinedRole("student", [$guest, $member], ["write.internal"]);
$staff = new CombinedRole("staff", [$guest, $member], ["write"]);$accessControl = new AccessControl([
$guest, $member, $student, $staff
]);$isAllowed = $accessControl->isGranted(["member", "staff"], "write");
```