DB 비번 등을 소스에서 분리

aws를 통해 3가지 정도 제시되는 듯

  • aws system manager (SSM) 의 parameter store
  • aws secret manager
  • IAM DB auth (for mysql and postegre only)

aws system manager (SSM) 의 parameter store 를 사용

파라미터 스토어의 시크릿 매니저

다음의 가이드를 따르면 되는데, 이 가이드를 따르면 java client 가 parameter store 에서 값을 가져오기 위한 access key 를 알아야 한다. 그러나 ec2 자체에 해당 IAM role 을 부여 했다면 그럴 필요도 없다. system 에서 curl 등으로 paramter store 의 값을 가져와 java에서 로딩 하면 된다.

ec2 자체에 롤 부여

또 다른 secret manager 제품도 있다.

이는 RDS 안의 user / password 를 암호화 해서 저정한 새로운 형태의 credential 이다. 평문으로는 ID/PW 가 뭔제 application 은 몰라도 된다.

차이점은 공식 문서를 참고 할 수 있는데 parameter store 는 적절한 사용 수준에서는 무료라는게 장점인듯.

마지막으로 IAM DB 인증이 있다. mysql / postegre 에 aws 가 심어놓은 플러그인을 통해 인증 하는 것. AWSAuthenticationPlugin

  • 15분짜리 인증 토큰
  • IAM 만 관리하면 되니까 DB 사용자는 관리할 필요 없게 됨.
  • EC2 안의 APP 이라면 IAM role 만 있으면 DB에는 자동으로
  • IAM 데이터베이스 인증 방식은 개인이 일시적으로 데이터베이스에 액세스하기 위한 메커니즘으로 사용 : 토큰식 로그인

댓글 남기기

이메일 주소는 공개되지 않습니다. 필수 항목은 *(으)로 표시합니다