PHPackages                             semitexa/authorization - 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. [Authentication &amp; Authorization](/categories/authentication)
4. /
5. semitexa/authorization

ActiveSemitexa-module[Authentication &amp; Authorization](/categories/authentication)

semitexa/authorization
======================

Semitexa Authorization - policy-based access checks, guards, and permission evaluation

2026.05.08.1640(1mo ago)1805MITPHPPHP ^8.4

Since Mar 23Pushed 1mo agoCompare

[ Source](https://github.com/semitexa/semitexa-authorization)[ Packagist](https://packagist.org/packages/semitexa/authorization)[ RSS](/packages/semitexa-authorization/feed)WikiDiscussions master Synced 2w ago

READMEChangelogDependencies (4)Versions (13)Used By (5)

Semitexa Authorization
======================

[](#semitexa-authorization)

Policy-based access control with capability and permission guards and payload-level enforcement.

Purpose
-------

[](#purpose)

Evaluates access policies on every guarded request. Resolves merged policies from class hierarchy, checks capabilities and permissions against the authenticated subject, and blocks unauthorized access at the pipeline level.

Role in Semitexa
----------------

[](#role-in-semitexa)

Depends on `semitexa/core` and `semitexa/auth`. Used by `semitexa/rbac` and platform packages. Provides the enforcement layer that RBAC and other grant resolvers plug into.

Key Features
------------

[](#key-features)

- `#[RequiresCapability]`, `#[RequiresPermission]`, `#[PublicEndpoint]` attributes
- `PayloadAccessPolicyResolver` merging policies from class hierarchy
- `AuthorizationListener` guarding handler execution with 403 on failure
- `AuthenticatedSubject` and `GuestSubject` types
- Extensible via `SubjectGrantResolverInterface` (implemented by RBAC)

Notes
-----

[](#notes)

Authorization uses a `SubjectGrantResolverInterface` to resolve the authenticated subject's grants when an `Authorizer` is registered. If no `SubjectGrantResolverInterface` is available, capability and permission requirements fail closed. If no `Authorizer` is registered at all, the pipeline falls back to public-vs-protected endpoint handling only and skips grant evaluation.

###  Health Score

47

—

FairBetter than 93% of packages

Maintenance90

Actively maintained with recent releases

Popularity13

Limited adoption so far

Community19

Small or concentrated contributor base

Maturity58

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 73% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~5 days

Total

10

Last Release

45d ago

Major Versions

1.0.2 → 2026.04.03.12402026-04-03

### Community

Maintainers

![](https://www.gravatar.com/avatar/e94044da9f4c76cc5cd09ef0c693a68065787e10d0d18edfeedbef3573a9163a?d=identicon)[syntaxwanderer](/maintainers/syntaxwanderer)

---

Top Contributors

[![syntaxwanderer](https://avatars.githubusercontent.com/u/1311643?v=4)](https://github.com/syntaxwanderer "syntaxwanderer (27 commits)")[![goosyboosy](https://avatars.githubusercontent.com/u/13351014?v=4)](https://github.com/goosyboosy "goosyboosy (5 commits)")[![needalicense](https://avatars.githubusercontent.com/u/13330467?v=4)](https://github.com/needalicense "needalicense (4 commits)")[![tarashanych](https://avatars.githubusercontent.com/u/49571976?v=4)](https://github.com/tarashanych "tarashanych (1 commits)")

---

Tags

access-controlauthorizationguardspermissionspoliciessemitexaauthorizationpermissionsaccess-controlpoliciesguardssemitexa

### Embed Badge

![Health badge](/badges/semitexa-authorization/health.svg)

```
[![Health](https://phpackages.com/badges/semitexa-authorization/health.svg)](https://phpackages.com/packages/semitexa-authorization)
```

###  Alternatives

[pktharindu/nova-permissions

Laravel Nova Grouped Permissions (ACL)

136409.8k](/packages/pktharindu-nova-permissions)[silvanite/novatoolpermissions

Laravel Nova Permissions (Roles and Permission based Access Control (ACL))

100262.7k2](/packages/silvanite-novatoolpermissions)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
