Ich habe eine Feder TextEncryptor wie folgt definiert
%Vor%Welche diese Eigenschaften erhalten
%Vor%Was in meiner lokalen Umgebung gut funktioniert. Wenn ich nach Heroku stelle, bekomme ich
%Vor%Also habe ich ein paar kleinere Tasten ausprobiert, aber ich bekomme immer das gleiche Problem. Was ist die richtige Schlüsselgröße für Heroku?
Also ich denke, ich habe daraus geschlossen, dass Heroku schlichtweg keine 256 Bit AEP unterstützt, was den TextTecEcoder im Feder-Sicherheitseinsatz nutzt.
Stattdessen habe ich den BasicTextEncryptor aus der Bibliothek Java Simplified Encryption als alternatives Backend verwendet und die TextEncryptor-Schnittstelle implementiert.
>Es ist weniger sicher, aber es funktioniert. Es bietet keinen Salting-Mechanismus, obwohl ich denke, dass es anderswo in der Bibliothek dafür Bestimmungen gibt.
Wenn jemand irgendwelche Ideen hat, wie man die Original-Verschlüsselungsgeräte auf Heroku bringt, dann wäre das immer noch besser, denke ich.
Meine Antwort ist ein bisschen spät, aber ich schrieb es, um jedem zu helfen, der es braucht. Standardmäßig verwendet Spring Security einen 256-Bit-Schlüssel für die Verschlüsselung. Dies wird vom JDK standardmäßig nicht erlaubt, da es nur bis zu 128-Bit-Schlüssel unterstützt.
Um dies zu beheben, müssen Sie die local_policy.jar & amp; US_export_policy.jar jars von oracle (Java-Kryptographie. Java-Kryptographie ) Extension (JCE) Unlimited Strength Jurisdiction Policy Dateien 7 Download ) und ersetzen Sie diese in jdk_path / jre / lib / security /. Stellen Sie sicher, dass Sie den Anwendungsserver neu starten, damit die Änderungen wirksam werden.
In einer separaten Notiz würde ich den geheimen Schlüssel nicht in einer Eigenschaftendatei platzieren. Stattdessen empfehle ich Ihnen, es in einen Schlüsselspeicher zu legen. Wenn Sie Hilfe brauchen, lassen Sie es mich wissen.
Sie können auch Folgendes tun. Dies scheint jedoch auf den neuesten Builds von Java 8 zu funktionieren.
%Vor%Tags und Links heroku spring-security