2010-02-22 2 views
2

ли есть ли способ защитить пароль базы данных в файле с помощью -servlet.xml пружиныЕсть ли способ защитить пароль в .xml с помощью пружины

<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> 
    <property name="driverClassName"><value>com.mysql.jdbc.Driver</value></property> 
    <property name="url"><value>jdbc:mysql:///BUSINESS</value></property> 
    <property name="username"><value>root</value></property> 
    <property name="password"><value>password</value></property>  
</bean> 

ответ

2

Встроенных, нет. Но вы можете проверить this blogpost, который показывает, как расширить DataSource, чтобы обеспечить шифрование AES паролей.

Другим подходом может быть расширение PropertyPlaceholderConfigurer и обработка шифрования AES (или RSA).

Однако, как отмечается в комментариях связанного блога, наличие ключа шифрования, хранящегося в том же файле, не добавляет существенной защиты - это только добавляет обфускацию. Таким образом, в обоих подходах выше вы должны получить ключ AES/RSA из другого места, возможно, доступный только для пользователя, под которым запускается ваш сервер приложений (это связано с безопасностью ОС).

1

Подход, часто используемый для этого, заключается в том, чтобы пароль хранился во внешнем файле свойств на производственной машине. Доступ к этому файлу может быть ограничен.

Смотрите здесь, как настроить весеннюю часть этого:

property-placeholder location from another property