2011-10-04 114 views
4

有什麼辦法,我可以加密應用程序上下文的條目,例如:Spring應用程序上下文加密

<bean id="securityDataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> 
    <property name="driverClassName" value="com.mysql.jdbc.Driver"/> 
    <property name="url" value="jdbc:mysql://192.168.0.1/schemaname?useUnicode=true&amp;characterEncoding=utf-8"/> 
    <property name="username" value="{this should be encrypted}"/> 
    <property name="password" value="{this should be encrypted}"/>  
</bean> 

我想要做的就是將加密的用戶名密碼&。

回答

4

您將需要使用propertyPlaceHolder對屬性進行外部化。一旦你這樣做,你可以使用支持加密的Jasypt版本的財產佔位符。

+0

你好,謝謝你的信息。我們的團隊測試了Jasypt並且它工作正常。 :) – sailhenz

3

由於票價我知道沒有加密。


但是你可以外部化的屬性,或者在應用服務器環境中完整的數據源。

0

您可以改爲創建jndi連接。例如在tomcat context.xml中添加。 這樣你就不會在應用程序或屬性文件中存儲任何信息。 Offcourse你必須設置權限context.xml ...

<Resource name="jdbc/[YourDatabaseName]" 
       auth="Container" 
       type="javax.sql.DataSource" 
       username="[DatabaseUsername]" 
       password="[DatabasePassword]" 
       driverClassName="com.mysql.jdbc.Driver" 
       url="jdbc:mysql://[yourserver]:3306/[yourapplication]" 
       maxActive="15" 
       maxIdle="3"/> 
相關問題