복붙노트

[SPRING] Spring에서 JndiObjectFactoryBean을 재정의하고 java에서 암호를 해독하는 방법

SPRING

Spring에서 JndiObjectFactoryBean을 재정의하고 java에서 암호를 해독하는 방법

나는 일부 알고리즘을 사용하여 암호화 된 암호를 가지고있는 Tomcat에 데이터 소스를 가지고 있으며 DB와의 연결을 설정할 때 암호를 해독하려고합니다.

다음은 내 스프링 구성 코드입니다.

<!--<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
    <property name="jndiName" value="${jdbc.jndiName}"/>
</bean>-->

<bean id="dataSource" class="my.app.util.EncryptedDataSource">
    <property name="jndiName" value="${jdbc.jndiName}"/>
</bean>

위의 빈은 JndiObjectFactoryBean을 확장 한 커스텀 bean이다.

public class EncryptedDataSource extends JndiObjectFactoryBean{ ... }

암호화 된 비밀번호를 가져와 다시 설정하려면 어떻게해야합니까? 내 암호 해독 알고리즘을 가지고 있지만 어떤 수퍼 클래스 메서드가 나에게 다시 설정할 수있는 암호를 가져올 지 확신하지 못합니다.

제발 제안해라, 나는 검색을했고, 많이 시험해 보았다.

해결법

  1. ==============================

    1.JndiBeanFacotry를 재정의하는 대신 Tomcat 데이터 소스 "factory"속성을 사용하여 데이터 소스 조회가 인스턴스화 될 때마다 호출되는 사용자 정의 리소스 팩토리 클래스를 가질 수 있습니다.

    JndiBeanFacotry를 재정의하는 대신 Tomcat 데이터 소스 "factory"속성을 사용하여 데이터 소스 조회가 인스턴스화 될 때마다 호출되는 사용자 정의 리소스 팩토리 클래스를 가질 수 있습니다.

    아래 링크는 단계별 구성을 지정하며,

    http://tomcat.apache.org/tomcat-6.0-doc/jndi-resources-howto.html

    "사용자 정의 자원 팩토리 추가"절에서는 간단한 사용자 정의 자원 팩토리 작성 방법을 강조합니다.

    감사.

  2. from https://stackoverflow.com/questions/32387651/how-to-override-jndiobjectfactorybean-in-spring-and-set-decrypted-password-in-ja by cc-by-sa and MIT license