Как мы можем дать зашифрованный пароль в JNDI весной
Не могли бы вы рассказать, как мы можем предоставить зашифрованный пароль в конфигурации JNDI и как мы можем расшифровать его в SPRING. Весной,
Я вижу, что мы должны настроить источник данных, используя
<bean id="DatabaseName" class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName" value="java:comp/env/jdbc/DatabaseName"/>
</bean>
но как мы можем переопределить и расшифровать пароль в этом, не могли бы вы помочь мне
Спасибо Вивек
1 ответ
Ваша проблема на самом деле не имеет ничего общего с Spring - это больше похоже на "Как скрыть пароль базы данных". Одним из лучших способов является создание источника данных вручную из консоли J2EE. Weblogic и IBM Websphere поддерживают это и автоматически скрывают пароль. Затем ваша программа запрашивает у контейнера соединение с базой данных, и нет необходимости указывать пароль. (Существует предположение, что если у вас есть права на развертывание на сервере, вы можете свободно подключаться к источникам данных сервера).
Tomcat немного более проблематичен. Источник данных будет указан в../conf/context.xml, а пароль будет в текстовом виде. Вам необходимо использовать права доступа к файлам Unix, чтобы не пускать тех, кто не должен знать пароль.
Этот ответ Как скрыть пароль базы данных в конфигурационном файле показывает, что это нетривиальная проблема.