Wir betreiben eine Syfmonfy 3.1.2 Site auf einem Server, auf dem PHP 5.5.9 installiert ist. Alles funktioniert gut, außer, dass wir mit einem Problem beschäftigen, die CSRF-Token zu erstellen:Symfony - Zufallsgenerator für das CSRF-Token erzeugt Fehler
Es gibt keine geeigneten CSPRNG auf dem System installiert ist
Dies ist related zum Random Compat Bündel. Es scheint, dass /dev/urandom
nicht verfügbar ist.
Wir wollen noch unsere Formulare mit einer CSRF-Token und sie sogar provide a fallback sichern:
try {
$bytes = random_bytes(32);
} catch (Exception $ex) {
$strong = false;
$bytes = openssl_random_pseudo_bytes(32, $strong);
if (!$strong) {
throw $ex;
}
}
Nun, wie kann ich das umsetzen? Ich möchte weder den Symfony Core noch das Bundle optimieren, um nicht mit jedem zukünftigen Update in Schwierigkeiten zu geraten. Ich habe einfach keine Ahnung, wo ich es anschließen soll.
Vielen Dank für Ihre Eingabe. Ich dachte auch, dass ich in diesem Fall meinen eigenen Token-Generator schreiben könnte. Das Beispiel, das Sie gezeigt haben, erklärt, wie Sie dem Anmeldeformular einen Token-Generator hinzufügen. Aber wie stelle ich einen Token-Generator für alle anderen Formulare zur Verfügung? Ich kann keinen Platz in den Konfigurationsdateien finden. – lampshade