Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Mongodb Acl Bundle Laravel Package

iampersistent/mongodb-acl-bundle

Symfony bundle that stores ACL (access control list) data in MongoDB. Provides MongoDB-backed persistence for access control entries, letting permission checks and role-based rules live alongside your document data. Integrates with Symfony's security ACL system, suited to apps already using MongoDB...

View on GitHub
Deep Wiki
Context7

Technical Evaluation

Architecture fit

  • Framework mismatch is the decisive finding. MongoDBAclBundle uses Symfony's bundle naming, registration, and DI-extension conventions. Laravel has no equivalent abstraction that consumes Symfony's Bundle interface, so there is no install-and-boot path. Using it in Laravel means building and owning a Symfony-Security-to-Laravel bridge — an architectural imposition, not an integration.
  • The foundation is likely EOL. An ACL bundle of this vintage almost certainly builds on symfony/security-acl, deprecated and removed from core years ago. The package's dependency is dead independent of the package's own abandonment.
  • MongoDB persistence adds a second coupling. Expect Doctrine MongoDB ODM or raw ext-mongodb. Laravel teams typically standardize on mongodb/laravel-mongodb (Eloquent-style); the two share no models, connections, or lifecycle management.
  • Abstraction mismatch. This is object/row-level ACL, whereas most Laravel apps gate at the Gate/Policy role-permission layer. The levels do not line up cleanly.

Integration feasibility

  • Low. No Composer service-provider discovery, no Laravel-facing facade, no publishable config. This is a research project, not a task.
  • The description is truncated ("This Bundle is now being maintained at") — the successor location is not legible from package metadata, which alone blocks a credible adoption path.

Technical risk

  • Abandonment: critical. The description explicitly states it has moved. With 2 stars and 0 dependents, there is no issue triage, no security response capability, and no user base.
  • Security-sensitive surface. Unmaintained authorization code is standing CVE exposure. Fail-open permission bugs are silent and high-severity.
  • Provenance/supply chain. Near-zero adoption in the auth path means forking is the only diligence route — and forking an abandoned ACL implementation is a substantial commitment.
  • Unknown compatibility envelope. PHP ceiling, ext-mongodb version, and ODM major version are undocumented; assume breakage on any modern runtime.

Key questions

  1. Where is the actively maintained successor, and does it support current PHP and MongoDB driver versions?
  2. Does it still hard-depend on symfony/security-acl, or has the permission model been replaced?
  3. What is the real functional gap driving interest — object-level ACLs specifically, or general authorization over MongoDB-backed data?
  4. Does the successor ship a Laravel integration, or is Laravel explicitly out of scope?
  5. Is there any maintained fork with CI, tests, and a security contact?

Integration Approach

Stack fit

  • Poor for a Laravel/PHP stack as commonly composed. The package presumes Symfony's kernel, container compilation, and security firewall model; Laravel's authorization is Gate/Policy-driven and provider-registered.
  • MongoDB is the only genuine overlap. If the requirement is "authorization data stored in MongoDB," maintained Laravel-native tooling solves it without this bundle.

Migration path

  • Do not adopt. Record a documented rejection with rationale so the question does not resurface in future scans.
  • If a successor exists and is maintained, evaluate the successor directly; treat this repository as historical reference only.
  • Recommended replacement pattern for Laravel + MongoDB:
    • mongodb/laravel-mongodb for persistence, keeping models consistent with the rest of the app.
    • A maintained authorization package (spatie/laravel-permission, bouncer, or native Gates) for the permission model.
    • For true object-level ACL semantics, implement a thin policy layer resolving against MongoDB documents — bounded, auditable, team-owned code.
  • If a fork is unavoidable, vendor it, pin the commit, add CI against target PHP and driver versions, and assign an explicit internal owner before first deploy.

Compatibility

  • Assume breakage on current PHP branches and current ext-mongodb releases until proven otherwise. Any evaluation starts with a timeboxed install-and-boot spike — hours, not days.
  • Laravel's container will not auto-resolve Symfony bundle services; any bridge is manual and permanent maintenance overhead.

Sequencing

  1. Confirm the underlying requirement (authorization model + datastore), not the package choice.
  2. Spike the successor package, not this one, to establish whether a maintained path exists.
  3. If no maintained path exists, scope the in-house policy layer against MongoDB and estimate it explicitly.
  4. Only consider forking if ACL semantics are genuinely non-replicable — a high bar.

Operational Impact

Maintenance

  • No upstream maintenance. Adoption transfers 100% of the burden in-house on day one, in the most security-sensitive part of the application. There is no version to upgrade to when the next CVE lands.
  • Documentation is absent or stale, so cost includes reconstructing intent from source.

Support

  • None. 2 stars and 0 dependents means no community to escalate to, no Stack Overflow corpus, no issue history. Internal escalation is the only path, and it terminates at whoever last read the source.
  • The truncated description makes even the redirect unreliable; confirm the successor's identity and health independently.

Scaling

  • ACL resolution is typically per-request, per-object and a classic N+1 source against MongoDB. Without documented caching or index guidance, expect to own query profiling and index design.
  • Symfony ACL's data model is notoriously write-heavy on grants; scaling grant churn is an unsolved problem inherited from upstream.

Failure modes

  • Silent authorization bypass — the highest-severity mode. An unmaintained ACL path that fails open under driver or version mismatch raises nothing; it simply allows access. This is why the assessment is disqualifying rather than inconvenient.
  • Boot-time container failure on PHP/Symfony component drift — loud, and therefore the safer failure.
  • Driver incompatibility surfacing as runtime exceptions on first ACL check rather than at install.
  • Abandoned-package supply chain — no security contact to notify, no patch to consume.

Ramp-up

  • High cost, low yield. Engineers must learn Symfony's ACL domain model and its MongoDB persistence quirks to operate code nobody maintains, for a capability reproducible with maintained Laravel-native components in a fraction of the time.
  • Recommendation: reject. Explicit abandonment notice, zero dependents, 0.01 score, and a framework mismatch is a clear no-go. Redirect the requirement to maintained tooling and record the decision.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
jinas/dhivatar
store-doc/laravel-storage-driver
plus-it/laravel-translation-manager
diephp/perhaps
diephp/telegraph
osmaviation/spreadsheet
microsoft/fluentui-system-icons
mmccook/php-json-canonicalization-scheme
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console
pnscripts/filament-broadquill-lite
pnscripts/laravel-sentfold-lite
vleap/mx-sdk-laravel-internal
twidpay/utils
htetmyathlaing/scout-elasticsearch-driver
artisan-toolbox/front-awesome
ls/client-assistant
users-au/laravel-client
cgv/localized-resource