- Can I use gorg/ldaporm-bundle in a Laravel application?
- No, not as a drop-in dependency. gorg/ldaporm-bundle is a Symfony 2 bundle that relies on Symfony's bundle, dependency injection, and annotation machinery, and it has no Laravel service provider, facade, or publishable config. Running it in Laravel would require a fork or reimplementation, which the evaluation explicitly does not recommend. For Laravel, use directorytree/ldaprecord-laravel or a thin internal adapter instead.
- What is gorg/ldaporm-bundle used for?
- It brings LDAP directory access into Symfony as a Doctrine-style ORM. You map PHP classes to LDAP object classes, configure connections and entity mappings, and query entries through repositories and a filter-based query builder. It also handles hydration of LDAP entries into typed objects and wires services through Symfony's dependency injection container.
- How do I install gorg/ldaporm-bundle?
- It is a Composer package, so installation would normally be through Composer using the gorg/ldaporm-bundle name. However, because it targets Symfony 2 and PHP 5.x to 7.0, modern Composer platforms and Laravel 10+ or PHP 8.1+ applications will hit runtime and dependency conflicts. In Laravel there is no auto-discovered service provider or config file to publish, so installation alone does not make it usable.
- Which Laravel and PHP versions does gorg/ldaporm-bundle support?
- It does not support Laravel at all; it is a Symfony 2 bundle, and Symfony 2 reached end of life in November 2018. Its runtime target is PHP 5.x through 7.0, which cannot coexist with Laravel 10+ on PHP 8.1+. Treat the version gap as a language-runtime mismatch, not a Composer constraint you can loosen.
- How do I configure LDAP connections and map LDAP entries to PHP objects?
- In its native Symfony usage, configuration defines LDAP connections and entity mappings, and PHP classes are mapped to LDAP object classes, often with Doctrine-style annotations. Repositories and a query-builder API then translate method calls into LDAP filters and hydrate entries into typed objects. In Laravel you would need to replace the Symfony configuration and annotation wiring with attributes or array config plus your own container bindings.
- Does gorg/ldaporm-bundle support PHP 8 attributes?
- No evidence suggests it does. The package uses annotation-based mapping tied to Symfony 2-era tooling, and Doctrine annotations have been deprecated since Annotations 1.13 and superseded by PHP 8 attributes. Any move to PHP 8.1+ would require rewriting the mapping layer to attributes or array configuration, independent of the framework decision.
- Is gorg/ldaporm-bundle production-ready for LDAP authentication?
- The technical evaluation says no. It has a single maintainer, zero dependents, and a score of 0.26, so there is no community-tested production path or security response process for code that handles credentials and TLS. LDAP correctness areas such as paged results, referrals, SASL, StartTLS, and filter escaping are unverified without a source audit. You would own every future CVE.
- What license does gorg/ldaporm-bundle use?
- The license is reported as NOASSERTION, meaning there is no resolvable SPDX identifier. That is a legal blocker, and legal sign-off is required before any code, including copy-paste, enters your repository. Assume incompatible until proven otherwise, and check for any inherited license from a parent project.
- Are LDAP filters escaped and does it support paged results?
- That is unverified from the available material. The evaluation flags LDAP filter escaping and paged results with cookie handling as correctness items that require a source audit; unescaped filters would be an injection finding, not a minor issue. At this project's size and maintenance level, rigorous handling of paged results, referrals, SASL, and StartTLS should not be assumed.
- What are the best alternatives to gorg/ldaporm-bundle for Laravel?
- For Laravel, the pragmatic equivalent is directorytree/ldaprecord plus directorytree/ldaprecord-laravel, which gives Eloquent-like models over LDAP, a real service provider, publishable config, PHP 8 attributes, and active maintenance. For Symfony applications, use the native Symfony Ldap component instead. Neither is a like-for-like port, but both are lower-total-cost replacements on supported runtimes.