Gibt es eine Möglichkeit die env Datei zu verschlüsseln?
Ich möchte vermeiden, dass der Datebank-Zugang bei aktiviertem Dev Modus einfach ausgelesen werden kann.
Das Problem liegt darin, das wir manchmal bei einem produktiven System den Dev Modus zur Fehlersuche oder zu Testzwecken aktivieren müssen.
Falls eine Verschlüsselung nicht möglich ist, gibt es ein Workaround für dieses Problem?
Der dev-Modus ermöglicht keinen Zugriff auf die .env
Das stimmt.
Jedoch wird im dev-Modus der Profiler aktiviert. Über diesen kann ich die phpinfo auslesen uns sehe darin die Zugangsdaten zur Datenbank im Klartext.
Ist mir noch gar nie aufgefallen… unschön.
Workaround: Anfragen am MySQL-Server auf IP/lokal beschränken
Generell wirst du im Symfony-Forum vermutlich mehr Glück haben, eine Antwort auf die Frage zu finden.
Rein aus Interesse: Warum nutzt Ihr dafür keine Kopie des Shops?
Zum Problem: Die Angabe zur DB in phpinfo wird direkt von PHP bereitgestellt, was in dem Fall wohl Absicht ist, auch wenn es in der genannten Konstellation natürlich unglücklich ist. Eine Verschlüsselung irgendwelcher Dateien würde das nicht verhindern, PHP (bzw. Shopware) benötigt ja den Zugriff auf die DB, also weiß es Benutzername und Passwort oder der Shop geht nicht. Einzige Lösung, wenn eine Kopie nicht sinnvoll ist, ist die Funktion phpinfo (temporär?) zu deaktivieren, entweder in der php.ini oder in der .htaccess
php_value disable_functions phpinfo