Tengo un TextEncryptor primavera definido como esto¿Cuál es la forma correcta de configurar un TextEncryptor espiral para usar con Heroku
<bean id="textEncryptor" class="org.springframework.security.crypto.encrypt.Encryptors"
factory-method="text">
<constructor-arg value="${security.encryptPassword}" />
<constructor-arg value="${security.encryptSalt}" />
</bean>
que se alimenta estas propiedades
security.encryptPassword=47582920264f212c566d5e5a6d
security.encryptSalt=39783e315e6a207e733d6f4141
que funciona muy bien en mi local, ambiente. Cuando despliego a Heroku obtengo
java.lang.IllegalArgumentException: Unable to initialize due to invalid secret key
at org.springframework.security.crypto.encrypt.CipherUtils.initCipher(CipherUtils.java:110)
at org.springframework.security.crypto.encrypt.AesBytesEncryptor.encrypt(AesBytesEncryptor.java:65)
at org.springframework.security.crypto.encrypt.HexEncodingTextEncryptor.encrypt(HexEncodingTextEncryptor.java:36)
...
Caused by: java.security.InvalidKeyException: Illegal key size
at javax.crypto.Cipher.checkCryptoPerm(Cipher.java:972)
at javax.crypto.Cipher.implInit(Cipher.java:738)
at javax.crypto.Cipher.chooseProvider(Cipher.java:797)
at javax.crypto.Cipher.init(Cipher.java:1276)
at javax.crypto.Cipher.init(Cipher.java:1215)
at org.springframework.security.crypto.encrypt.CipherUtils.initCipher(CipherUtils.java:105)
... 53 more
Así que probé algunas teclas más pequeñas, pero siempre tengo el mismo problema. ¿Cuál es el tamaño de clave correcto para usar en Heroku?
Sí, esa es la solución correcta para una instalación local. El punto está en una plataforma administrada remota como heroku, no tenemos control sobre el JDK. –
Simplemente sorprendente: por qué estos archivos no están incluidos en java. – msangel
@msangel Diría que es una restricción de exportación de criptografía de EE. UU. Me sorprende que nosotros (los que no son ciudadanos estadounidenses) tengamos acceso gratuito a ellos). – HankCa