가넷sw
60
2019-05-16 10:24:08
10
59

jasypt에서 properties 값을 ENC로 읽지 못합니다.



<!-- properties encrypt -->
    <bean id="environmentVariablesConfiguration" class="org.jasypt.encryption.pbe.config.EnvironmentStringPBEConfig">  
        <property name="algorithm" value="PBEWithMD5AndDES"/>
    	<property name="passwordEnvName" value="APP_ENCRYPTION_PASSWORD"/>
	</bean>  
	       
	<bean id="configurationEncryptor" class="org.jasypt.encryption.pbe.StandardPBEStringEncryptor">  
		<property name="config" ref="environmentVariablesConfiguration" />  
		<property name="password" value="test"/>
	</bean>  
	      
	<bean id="propertyConfigurer" class="org.jasypt.spring31.properties.EncryptablePropertyPlaceholderConfigurer">  
        <constructor-arg ref="configurationEncryptor" />
        <property name="locations">
	        <list>
	            <value>/WEB-INF/property/db.properties</value>
	        </list>
	    </property>
	</bean>  



[어제 글을 위로 올렸습니다.]


jasypt 사용과 관련하여 문의 드립니다.


#mysql
jdbc.mysql.driver=com.mysql.jdbc.Driver
jdbc.mysql.url=ENC(HwtAxrl8iqbWipzjBViMEilDfxnz8O9bHmdTaswTyON+TXVopIl2WVsArbpGn3sq)
jdbc.mysql.username=ENC(pgSiFTkJMWKw2NWakyFblw==)
jdbc.mysql.password=ENC(uMXwDtUAo2QPWpM2udOX/w==)


reference를 참고하여 위와 같이 설정하여 DB설정정보를 읽어 진행하였으나
아래와 같이 읽지 못하는 에러가 발생합니다.


-> No suitable driver found for ENC(HwtAxrl8iqbWipzjBViMEilDfxnz8O9bHmdTaswTyON+TXVopIl2WVsArbpGn3sq)


ENC 인식을 하지 못하는 것 같은데 추가적으로 필요한 부분이 어떤것인지 도통 알수가 없습니다.


다른 추가적인 설정이 필요한 것인지 혹은 설정에 문제가 있는지 도움을 좀 부탁드립니다.


0
0
  • 답변 10

  • 초급개발자(오)
    478
    2019-05-16 10:34:33

    음... 답변이 안달리는건요.... 너무 광범위해서 일것 같네요...ㅎ

    우선 pom.xml 은 어떻게 설정하셨는지...

    라이브러리 버전 호환은 확인하신건지..

    암호화 클래스는 만드셨는지...

    context:property-placeholder 가 두개 존재하고 이에 추가 설정은 하셨는지... 

    등등.... 정보가 더필요할것 같아요....ㅎ


    0
  • 가넷sw
    60
    2019-05-16 10:38:50 작성 2019-05-16 10:39:07 수정됨

    [초급개발자(오)]

    1. pom.xml

    <!-- properties encrypt -->  
    <dependency>
          <groupId>org.jasypt</groupId>
          <artifactId>jasypt-spring31</artifactId>
          <version>1.9.2</version>
      </dependency>  


    2. spring4 버전이어서 jasypt-spring31 를 사용하였습니다.


    3. ENC() 선언을 하면 자동 적용되는 것이 아닌것인지요?


    4. context:property-placeholder 은 적용하지 않은 것 같습니다.


    이 상황에서 추가해야 하거나 수정해야 할 내용을 말씀해주시면 감사드리겠습니다.


    0
  • 0
  • 가넷sw
    60
    2019-05-16 11:12:32

    [초급개발자(오)]


    제시해주신 예시를 참고했으나 이미 다 설정되어 있는 것 같습니다.


    다른 이유가 없을까요?ㅠㅠ 왜 ENC를 읽어들으지 못하는지 모르겠네요

    0
  • 초급개발자(오)
    478
    2019-05-16 11:41:00

    음... jdk 버전은 어떻게 되시나요? ㅎ

    0
  • 가넷sw
    60
    2019-05-16 11:43:06

    [초급개발자(오)]


    1.8입니다.

    0
  • 초급개발자(오)
    478
    2019-05-16 11:45:39
    킁... 도움이 못되어드려서 죄송하네요...
    0
  • 가넷sw
    60
    2019-05-16 11:50:57

    [초급개발자(오)]


    아닙니다. 다른분께서 도움 주셨으면 좋겠네요~

    0
  • kmksk
    1k
    2019-05-16 14:16:41
    혹시 mysql driver 설정이 pom.xml 에서 빠진건 아닌지 확인해보셨나요?
    0
  • 가넷sw
    60
    2019-05-16 15:50:11


    <!-- MySQL -->
    		<dependency>
    		    <groupId>mysql</groupId>
    		    <artifactId>mysql-connector-java</artifactId>
    		    <version>5.1.35</version>
    		</dependency>


    [kmksk]


    아닙니다. 설정은 포홤되어 있습니다. 그 문제가 아닌거 같습니다.

    0
  • 로그인을 하시면 답변을 등록할 수 있습니다.