RDS와 Weblogic/DMS 엔드포인트 간에 SSL 구성

2262 단어 dmsawsencryptionssl
배경

앱과 RDS DB 간의 연결을 위해 엔드 투 엔드 암호화를 활성화해야 합니다.

Oracle RDS 측

Oracle 인스턴스 생성 시 옵션 그룹 SSL 설정을 아래와 같이 구성합니다.



웹로직 측면에서
  • 연결 풀이 생성된 후 아래 URL 필드를 업데이트합니다. 예를 들어,

  • jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=(PROTOCOL=tcps)(HOST=<weblogic-host>)(PORT=2484))(CONNECT_DATA=(SERVICE_NAME=DEMOWLST)))
    


  • 연결 속성에서 다음을 추가합니다.

  • user=wlsdbuser
    databaseName=DEMOWLST
    javax.net.ssl.trustStore=/prod/applc/wls/domain/base_domain/certs/trust.jks
    javax.net.ssl.trustStoreType=JKS
    javax.net.ssl.trustStorePassword=<password, default to Admin password>
    




    신뢰할 수 있는 JKS/지갑 만들기
  • RDS 인증서를 추출하려면,

  • openssl s_client -showcerts -connect "{{ datasource.rdsHostName }}:{{ datasource.rdsSSLPort }}" </dev/null | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > /tmp/rds.pem
    
    csplit -z -f tmpRDScert- /tmp/rds.pem '/-----BEGIN CERTIFICATE-----/' '{*}'
    
    cp `ls -1 tmpRDScert-* | tail -1` /tmp/rdsRoot.pem
    


  • 루트 인증서를 JKS 키 저장소로 가져오려면

  • keytool -import -alias rds-rootcert -file /tmp/rdsRoot.pem -keystore /prod/applc/wls/domain/base_domain/certs/trust.jks -storepass {{ domain_password }} -noprompt
    


  • 루트 인증서를 Oracle Wallet으로 가져오려면(DMS 끝점에 필요함),

  • /prod/applc/wls/oracle_common/bin/orapki wallet create -wallet /tmp/ssl_wallet -auto_login_only
    /prod/applc/wls/oracle_common/bin/orapki wallet add -wallet /tmp/ssl_wallet -trusted_cert -cert /tmp/rdsRoot.pem -auto_login_only
    


    Oracle DMS 끝점의 경우 "verify-ca"옵션으로 SSL을 활성화할 때 rds-oracle-wallet을 선택하고 포트를 SSL 활성화 포트로 지정해야 합니다.

    좋은 웹페이지 즐겨찾기