esit / cryptography
Es handelt sich um eine Erweiterung für das Open Source CMS Contao, die es ermöglicht, Werte zu ver- und entschlüsseln.
Installs: 22
Dependents: 0
Suggesters: 0
Security: 0
Stars: 1
Watchers: 1
Forks: 0
Open Issues: 0
Type:contao-bundle
Requires
- php: ~8.0
- ext-openssl: *
- contao/core-bundle: ~4.9|^5.1
Requires (Dev)
- contao/test-case: ~4.9|^5.1
- phpunit/phpunit: ^9.5
README
Beschreibung
Bei dieser Software handelt es sich um eine Erweiterung für das Open Source CMS Contao, mit der Werte ver- und entschlüsselt werden können.
Autor
e@sy Solutions IT: Patrick Froch info@easySolutionsIT.de
Lizenz
Die Software wird unter LGPL veröffentlicht. Details sind in der Datei LICENSE
zu finden.
Voraussetzungen
- php: ~8.0
- contao/core-bundle: ~4.9|^5.1
Installation
Die Installation geschieht über den ContaoManager. Einfach nach esit/cryptography
suchen und installieren.
Aleternativ kann die Erweiterung mit folgendem Befehl über Composer installiert werden:
composer require esit/cryptography
Einrichtung
In die .env
-Datei können zwei Werte eingetragen werden, das Passwort (CRYPTOGRAPHY_SECRECT
) und die
Verschlüsselungsmethode (CRYPTOGRAPHY_CIPHER
). Ein Beispiel sieht so aus:
CRYPTOGRAPHY_SECRECT="bhjRHnqCpgjqW3w94t34FjLnXCWvrhpJqsvN7VNfH9qHPKsm" CRYPTOGRAPHY_CIPHER="aes-256-cbc"
Werden die Werte nicht angegeben, müssen sie der Factory beim Erstellen des CryptographyHelper
übergeben werden!
Verwendung
Der Helper kann einfach in eigene Klassen injected werden.
<?php MyClass { public function __construct(private CryptographyFactory $factory) { } public function myTest(): void { $value = 'Mein geheimer Teststring!'; // Verwendung der Werte aus der .env Datei. $helper = $factory->createCryptographyHelper(); $encrypted = $this->cryptoHelper->encrypt($value); $decrypted = $this->cryptoHelper->decrypt($encrypted); // Verwendung der angegebenen Werte. $helper = $factory->createCryptographyHelper('password', 'aes-256-cbc'); $encrypted = $this->cryptoHelper->encrypt($value); $decrypted = $this->cryptoHelper->decrypt($encrypted); // Verwendung eines abweichenden Passworts. $encrypted = $this->cryptoHelper->encrypt($value, 'newPassword'); $decrypted = $this->cryptoHelper->decrypt($encrypted, 'newPassword'); } }
Wird der CryptographyHelper
direkt injected, müssen die Einstellunge in der .env Datei angegeben werden! Dieser Weg ist aber veraltet. Es dringend geraten, die Factory zu verwenden.