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. PerlからMySQLストアドプロシージャを呼び出すにはどうすればよいですか?

    2. インストールせずにWindowsでpostgresqlとpgadminを起動する

    3. postgresqlでvarchar列を列挙型にアップグレードする

    4. 継続的なデータベース監視の改善のための秘訣