PHPackages                             tourze/doctrine-row-permission-bundle - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Security](/categories/security)
4. /
5. tourze/doctrine-row-permission-bundle

ActiveSymfony-bundle[Security](/categories/security)

tourze/doctrine-row-permission-bundle
=====================================

Doctrine Row Permission Bundle

0.1.0(7mo ago)00MITPHPCI passing

Since May 29Pushed 6mo ago1 watchersCompare

[ Source](https://github.com/tourze/doctrine-row-permission-bundle)[ Packagist](https://packagist.org/packages/tourze/doctrine-row-permission-bundle)[ RSS](/packages/tourze-doctrine-row-permission-bundle/feed)WikiDiscussions master Synced today

READMEChangelog (3)Dependencies (36)Versions (4)Used By (0)

Doctrine Row Permission Bundle
==============================

[](#doctrine-row-permission-bundle)

[English](README.md) | [中文](README.zh-CN.md)

[![Latest Version](https://camo.githubusercontent.com/3e14f1537d7cd6e05159f11edb805bf1b0d1cde096341f71f33d07c356341b02/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f746f75727a652f646f637472696e652d726f772d7065726d697373696f6e2d62756e646c652e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/tourze/doctrine-row-permission-bundle)[![PHP Version](https://camo.githubusercontent.com/781c47412d6cbe8cd28e0855e8a3bfd41d4526e7c295603150102d41746327cb/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f7068702d762f746f75727a652f646f637472696e652d726f772d7065726d697373696f6e2d62756e646c652e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/tourze/doctrine-row-permission-bundle)[![License](https://camo.githubusercontent.com/e3a3fc41212dab33aeba6bb866bebca544fc116c05e5889f137de953640cd5b8/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f6c2f746f75727a652f646f637472696e652d726f772d7065726d697373696f6e2d62756e646c652e7376673f7374796c653d666c61742d737175617265)](LICENSE)[![Total Downloads](https://camo.githubusercontent.com/71166a180b84b39b3573bd18695887005c9a96668f20d5f737213bd9e4442706/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f746f75727a652f646f637472696e652d726f772d7065726d697373696f6e2d62756e646c652e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/tourze/doctrine-row-permission-bundle)

A Symfony Bundle that provides row-level permission control system based on Doctrine ORM, serving as a complement to RBAC permission systems for precise data access control at entity level.

Table of Contents
-----------------

[](#table-of-contents)

- [Features](#features)
- [Installation](#installation)
    - [Requirements](#requirements)
    - [Install via Composer](#install-via-composer)
    - [Register Bundle](#register-bundle)
- [Quick Start](#quick-start)
    - [Basic Permission Management](#basic-permission-management)
    - [Query Integration](#query-integration)
    - [Batch Operations](#batch-operations)
- [Configuration](#configuration)
    - [Cache Setup](#cache-setup)
    - [Custom Permission Logic](#custom-permission-logic)
- [Permission Types](#permission-types)
- [Security](#security)
- [Contributing](#contributing)
    - [Development](#development)
- [License](#license)

Features
--------

[](#features)

- 🔒 **Row-Level Security** - Control access to specific entity instances
- 🎯 **Multiple Permission Types** - Support view, edit, delete operations
- 🚫 **Explicit Deny** - Support for explicit access denial with highest priority
- 🔍 **Query Integration** - Doctrine QueryBuilder integration for filtered queries
- ⚡ **Performance Cache** - Built-in caching for improved permission checking
- 📦 **Batch Operations** - Efficient batch permission management

Installation
------------

[](#installation)

### Requirements

[](#requirements)

- PHP 8.1+
- Symfony 7.3+
- Doctrine ORM 3.0+

### Install via Composer

[](#install-via-composer)

```
composer require tourze/doctrine-row-permission-bundle
```

### Register Bundle

[](#register-bundle)

Add to `config/bundles.php`:

```
return [
    // ...
    Tourze\DoctrineRowPermissionBundle\DoctrineRowPermissionBundle::class => ['all' => true],
];
```

Quick Start
-----------

[](#quick-start)

### Basic Permission Management

[](#basic-permission-management)

```
