L’article explique comment implémenter un chiffrement au niveau des champs dans une application Symfony/Doctrine pour se conformer au RGPD, en évitant de polluer le domaine métier. L’auteur souligne que le chiffrement transparent des données (TDE) ne suffit pas, car il ne protège pas contre les accès internes malveillants ou les failles comme les injections SQL. La solution proposée consiste à chiffrer les données sensibles (emails, numéros de téléphone, etc.) avant leur stockage en base, en utilisant soit un type DBAL personnalisé, soit un lifecycle subscriber, sans modifier les entités.
Le type DBAL personnalisé, comme EncryptedStringType, s’intègre naturellement entre PHP et la base de données, chiffrant les données lors de l’écriture et les déchiffrant à la lecture, sans que le domaine n’ait à gérer cette logique. Cette approche maintient une séparation claire des responsabilités, où le chiffrement reste une préoccupation d’infrastructure. L’article détaille l’implémentation technique, notamment l’injection des dépendances et l’enregistrement du type dans Doctrine.