insitaction/field-encrypt-bundle
Insitaction FieldEncryptBundle provides transparent field-level encryption for Doctrine entities in Symfony, letting you mark sensitive fields for automatic encryption and decryption with configurable keys and minimal code changes.
Reasonable fit when:
composer.json before assuming full compatibility. A Laravel team should still first check Laravel's native encrypted cast and custom casts; adopting this would mean porting, not installing.Look elsewhere when:
For executives: Field-level encryption limits the damage from a database leak — stolen backups and over-broad internal access stop yielding readable customer data, and it gives us a defensible answer in security questionnaires without re-architecting storage. This specific package is a small, likely single-maintainer component with no visible adoption; its latest release only adds Symfony 7 compatibility after a long quiet period, which is a maintenance signal but not a support commitment. So I'm not recommending it as a long-term dependency. I'm recommending a two-week spike against our real schema to validate the approach, with a budgeted assumption that we fork and own roughly a few hundred lines of crypto glue. The strategic value is the decision and the data inventory it forces, not the library.
For engineering: Attribute-driven field encryption on Doctrine entities, with key handling and rotation handled for us — it removes the temptation for each team to invent its own crypto. v3.0.5 adds Symfony 7 support, so it's usable on a current framework line, but that's the entire change: no security fixes, no new features, no tests added. Plan accordingly: vendor it into the repo, add our own tests, and pin the crypto primitives. Also flag the sharp edges early — encrypted columns can't be indexed or sorted, and any equality-search requirement turns this into a deterministic-encryption design review, not a drop-in.
How can I help you explore Laravel packages today?