[MSA] Spring Cloud로 MSA를 개발해보자 7편 [설정 정보 암호화]

2024. 8. 28. 00:43· Java/Spring Boot
목차
  1. 1. 암호화의 종류
  2. 1). Symmetric Encryption (대칭키 : 암호화, 복호화 키가 동일)
  3. 2). Asymmetric Encryption (비대칭키 : 암호화, 복호화 키가 다름)
  4. 2. 암호화/복호화
  5. 1). 대칭키
  6. 2). 비대칭키

오늘은 대칭키와 비대칭키를 이용한 암/복호화, user-service application.yml의 설정 일부를 config-service으로 옮긴 뒤 config-service의 설정을 사용하게 할 것이다.

그리고 설정파일의 정보를 암호화할 것이다

1. 암호화의 종류

1). Symmetric Encryption (대칭키 : 암호화, 복호화 키가 동일)

- Using the same key

 

2). Asymmetric Encryption (비대칭키 : 암호화, 복호화 키가 다름)

- Private and Public Key : 암호화 or 복호화 할 때 Private 키와 Public 키를 사용함(중복 안되게)

- Using Java keytool : 자바에서 제공하는 암호화, 복호화 인터페이스

 

2. 암호화/복호화

1). 대칭키

(1). 암호화

// config-service -> bootstrap.yml
encrypt:
  key: abcdefg5654

 

 

(2). 복호화

 

 

config-service -> application.yml에 있는 search-locations 폴더로 이동한 뒤

name이 붙은 .yml파일 [user-service.yml]을 읽어오고 

active: dev를 사용하면 [user-service-dev.yml]을 불러온다

// user-service -> bootstrap.yml
spring:
cloud:
config:
uri: http://127.0.0.1:8888
name: user-service
# profiles:
# active: dev

 

DB 비번 암호화 한 뒤 user-service 설정파일에 등록

config-server에 설정된 폴더에 있는 user-service.yml에 DB 정보를 옮긴 뒤 비밀번호에 암호화 값을 입력

password: '{cipher}5e9e9718fbf40c6838248cb7ff6e329f6bc329193d0b79349de8ff70d38c2f79'

 

 

문제없이 DB에 접속된다

 

2). 비대칭키

(1). 키 생성

 

(2). 키 정보

 

(2). Public Key 추출

 

(2). Public Key를 .jks로 생성

 

 

(3). 공개키, 비공개키  생성 완료

 

(4). 비대칭키 암호화

 

(5). 비대칭키 복호화

 

(5). 비대칭키 암호화 테스트

 

 

gateway-service -> bootstrap.yml

spring:
  cloud:
    config:
      uri: http://127.0.0.1:8888
      name: ecommerce

 

ecommerce.yml

token:
  expiration_time: 864000000
  secret: user_token_native_application

gateway:
  ip: 127.0.0.1

 

ecommerce.yml

token:
  expiration_time: 864000000
  secret: '{cipher}AQAuwBMyHFEV48g6WqKETRy4OmhnnVr5Mykut9yZpM+Awe6Io07bcboMvUSG2EQeRlKMfNdFU220ilVBhVQqn2kuQTcBRfHDkxYPIIys0kZ0pI3LRC3OhFuUhzxHEmmBqcL2kq7tjncamff/Y4IC2odnwx4eq04qYKgCvTUwXN7Wq8L4Q5zdP58onCSrpCvNA6945a+zkReYlVnvojPARFioG3CxC5y8PVjfNVFp95IVOHUsegOay11qb40wd49UdOxuFtBTP8vD4l6wbR5g3KLt+sQDX/92n85Fn8js9MR3ZqeF4HhlLRMVLAxaQmf64sjyFTWxgRxTLvwo+URVamrlwsh0R8T1rFv3x4l0iVdK7VETfiWmN16pAjiJlGQLMNOGYEKRL9ybU1clmgs9vShh'

gateway:
  ip: 127.0.0.1

 

 

 

잘 적용되었다.

'Java > Spring Boot' 카테고리의 다른 글

[MSA] Spring Cloud로 MSA를 개발해보자 9편 [서비스간 통신-2]  (1) 2024.08.30
[MSA] Spring Cloud로 MSA를 개발해보자 8편 [서비스간 통신-1]  (1) 2024.08.29
[MSA] Spring Cloud로 MSA를 개발해보자 6편 [Spring Cloud Bus]  (1) 2024.08.27
[MSA] Spring Cloud로 MSA를 개발해보자 5편 [Config]  (1) 2024.08.26
[MSA] Spring Cloud로 MSA를 개발해보자 4편 [JWT 인증]  (0) 2024.08.25
  1. 1. 암호화의 종류
  2. 1). Symmetric Encryption (대칭키 : 암호화, 복호화 키가 동일)
  3. 2). Asymmetric Encryption (비대칭키 : 암호화, 복호화 키가 다름)
  4. 2. 암호화/복호화
  5. 1). 대칭키
  6. 2). 비대칭키
'Java/Spring Boot' 카테고리의 다른 글
  • [MSA] Spring Cloud로 MSA를 개발해보자 9편 [서비스간 통신-2]
  • [MSA] Spring Cloud로 MSA를 개발해보자 8편 [서비스간 통신-1]
  • [MSA] Spring Cloud로 MSA를 개발해보자 6편 [Spring Cloud Bus]
  • [MSA] Spring Cloud로 MSA를 개발해보자 5편 [Config]
누리는 귀여워
누리는 귀여워
안녕하세요, 누리 사료값을 벌기 위해 앞으로 나아가는 아버지의 개발 블로그입니다.
누리는 귀여워
누리아버지
누리는 귀여워
전체
오늘
어제
  • 분류 전체보기 (76)
    • Java (0)
      • Spring Boot (16)
      • JPA (1)
    • JavaScript (1)
      • React.js (1)
    • DataBase (3)
      • PostgreSQL (2)
    • DevOps (2)
      • MSA (1)
      • Docker (1)
    • OS (9)
    • Network (0)
    • CS 지식 (0)
    • Error 모음집 (0)
    • 코딩테스트 (32)
      • 기초 (31)
      • 알고리즘 (1)
    • 기타 (7)
    • 쉼터 (2)
      • 잡담 (2)
      • 하루 마무리 (0)

블로그 메뉴

  • 홈
  • 태그
  • 방명록
  • 글쓰기

공지사항

인기 글

태그

  • JPA
  • postman
  • GATEWAY
  • spring boot
  • kafka connect
  • 인텔리제이
  • kafka sink connect
  • MSA
  • Docker
  • Oracle Cloud
  • Kafka
  • Dockerfile
  • war 배포
  • centos
  • eureka
  • 깃허브연동
  • spring cloud
  • Boot
  • postgresql
  • git bash

최근 댓글

최근 글

hELLO · Designed By 정상우.v4.2.0
누리는 귀여워
[MSA] Spring Cloud로 MSA를 개발해보자 7편 [설정 정보 암호화]
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.