Mysql
 sql >> база данни >  >> RDS >> Mysql

приложението се свързва с базата данни

Разгледайте Jasypt , това е java библиотека, която позволява на разработчика да добавя основни възможности за криптиране към своите проекти с минимални усилия и без необходимост от задълбочени познания за това как работи криптографията.

В случай, че използвате Spring, можете да дефинирате вашите db.properties като:

 jdbc.driver=com.mysql.jdbc.Driver
 jdbc.url=jdbc:mysql://localhost/yourdb
 jdbc.username=userName
 jdbc.password=ENC(A6L729KukPEx7Ps8didIUWb01fdBRh7d)

и го конфигурирайте с Jasypt и Spring като:

<bean class="org.jasypt.spring.properties.EncryptablePropertyPlaceholderConfigurer">
   <constructor-arg>
     <bean class="org.jasypt.encryption.pbe.StandardPBEStringEncryptor">
       <property name="config">
         <bean class="org.jasypt.encryption.pbe.config.EnvironmentStringPBEConfig">
           <property name="algorithm" value="PBEWithMD5AndDES" />
           <property name="passwordEnvName" value="APP_ENCRYPTION_PASSWORD" />
         </bean>
       </property>
     </bean>
   </constructor-arg>
   <property name="locations">
     <list>
       <value>classpath:/META-INF/props/db/db.properties</value>
     </list>
   </property>   
</bean>

<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
    <property name="driverClassName" value="${jdbc.driverClassName}"/>
    <property name="url" value="${jdbc.url}"/>
    <property name="username" value="${jdbc.username}"/>
    <property name="password" value="${jdbc.password}"/>
</bean>

Това ще скрие действителната парола (можете да направите същото за username). ) от студенти, така че те няма да могат да извлекат низа за връзка от разглеждане на файла със свойства.

В случай, че не използвате Spring, ето Ръководство за Jasypt за да постигнете същото "ръчно"




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. създаване на база данни с pdo в php

  2. Doctrine 2 DQL MySQL еквивалентен на ROUND()?

  3. Колона 'user_id' в списъка с полета е двусмислена

  4. Какво причинява PDO грешка Не може да се изпълняват заявки, докато други небуферирани заявки са активни?

  5. Как да сравним два резултата от заявка за равенство в MySQL?