Download the PHP package yiisoft/rbac-php without Composer

On this page you can find all versions of the php package yiisoft/rbac-php. 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 rbac-php

Yii RBAC PHP File Storage


Latest Stable Version Total Downloads Build status codecov Mutation testing badge static analysis type-coverage

This package provides PHP file-based storage for RBAC (Role-Based Access Control) package.

Requirements

Installation

The package could be installed with Composer:

See yiisoft/rbac for RBAC package installation instructions.

General usage

The storage is suitable for authorization data that is not too big (for example, the authorization data for a personal blog system) or for fairly static RBAC hierarchy.

Authorization data is stored in PHP files. PHP should be able to read and write these files. Non-existing files will be created automatically on any write operation.

Using storages

The storages are not intended to be used directly. Instead, use them with Manager from Yii RBAC package:

Note that it's not necessary to use both PHP storages. Combining different implementations is possible. A quite popular case is to manage items via PHP file while store assignments in database (see Cycle and Yiisoft DB implementations).

More examples can be found in Yii RBAC documentation.

File structure

In case you decide to manually edit the files, make sure to keep the following structure.

Items

Required and optional fields:

While it's recommended to maintain created and updated timestamps, if any is missing, the file modification time will be used instead as a fallback.

The structure for an item with children:

The complete example for managing posts:

Assignments

While it's recommended to maintain created timestamps, if it is missing, the file modification time will be used instead as a fallback.

Concurrency

By default, working with PHP storage does not support concurrency. This might be OK if you store its files under VCS for example. If your scenario is different and, let's say, some kind of web interface is used - then, to enable concurrency, do not use the storage directly - wrap it with decorator instead:

Note that it will have an impact on performance so don't use it unless you really have to.

Configuring file updated time

A closure can be used to customize getting file modification time:

This is useful for 2 things:

Syncing storages manually

The storages stay synced thanks to manager, but there can be situations where you need to sync them manually. One of them is editing storage manually.

Let's say PHP files are used for both items and assignments and some items were deleted.

Then related entries in assignments storage needs to be deleted as well:

When using database as a second storage, this can be done within a migration. Depending on chosen implementation, refer to either RBAC Cycle example or RBAC DB example.

Documentation

If you need help or have a question, the Yii Forum is a good place for that. You may also check out other Yii Community Resources.

License

The Yii RBAC PHP File Storage is free software. It is released under the terms of the BSD License. Please see LICENSE for more information.

Maintained by Yii Software.

Support the project

Open Collective

Follow updates

Official website Twitter Telegram Facebook Slack


All versions of rbac-php with dependencies

PHP Build Version
Package Version
Requires php Version ^8.1
yiisoft/rbac Version ^2.0
yiisoft/var-dumper Version ^1.7
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 yiisoft/rbac-php contains the following files

Loading the files please wait ....