Как мы можем обеспечить безопасность, используя jasypt?

Недавно я прошел через Jasypt API для защиты записей файла свойств. Согласно Jasypt, для расшифровки записи в файле свойств, который был заключен в ENC(..), нам нужно использовать безопасный пароль, секретный ключ, как показано ниже (не веб-приложение):

    encryptor.setPassword("jasypt"); // could be got from web, env variable..

Конечно, мы можем настроить такой пароль, используя

    org.jasypt.encryption.pbe.config.SimplePBEConfig setPassword()

Но мой вопрос, если мы извлечем jar-файл, третья сторона сможет найти секретный ключ. Как мы можем обеспечить безопасность в таких случаях?

Заранее спасибо, JK

1 ответ

Секретный ключ должен храниться в переменной окружения вне приложения.

Например, в вашем весеннем конфигурационном файле:

<bean id="environmentConfig" class=  
"org.jasypt.encryption.pbe.config.EnvironmentStringPBEConfig"  
p:passwordEnvName="APP_ENCRYPTION_PASSWORD" ...

Теперь добавьте APP_ENCRYPTION_PASSWORD в переменную env в ОС или на сервере приложений.

Другие вопросы по тегам