📌 사용 계기
노출되면 안되는 중요 정보(다양한 계정 정보, JWT SecretKey 등) 가 담긴 Properties 파일을 암호화해서 올려야해 파일 암호화 기능을 사용하게 되었다.
기본 설정
📌 GPG Key만들기
gpg --gen-key
📌 Key를 Secring.gpg 형식으로 추출
gpg --export-secret-keys -o secring.gpg
📌 Key ID 포맷을 조회
gpg --list-keys --keyid-format short
📌 Key서버에 공개키 전송
Key서버 종류는 다양하므로 안된다면 여러개를 시
gpg --keyserver hkp://keyserver.ubuntu.com --send-keys [keyID]
파일 암호화
📌 해당 파일이 있는 폴더로 이동
📌 암호화 하려는 파일 tar로 압축
tar cvf [압축이름.tar] [암호화하려는 파일이름.확장자]
📌 압축파일 암호
gpg -c [암호화 할 압축파일]
파워쉘로 안됨 ㅜㅜ
git bash로 하니까 바로 됬다.
명령어치면 뜨는 창에 복호화에 사용할 비밀번호를 입력한다.
📌 이 암호한 파일을 github에 올리면 된다
CD (github action) 용으로 사용
📌 Actions secrets Key 등록
.github > workflows > gradle.yml 스크립트에 복호화에 사용되는 변수 값의 이름에 맞게 키 이름을 설정해주고
${{ secrets.PROPERTIES }} 이니까
# 암호화 했던 설정파일 복호화
- name: Decrypt applications properties
run: gpg --quiet --batch --yes --always-trust --decrypt --passphrase=${{ secrets.PROPERTIES }} --output ./src/main/resources/application.tar ./src/main/resources/application.tar.gpg
shell: bash
github에서 secets에 PROPERTIES로
그 안의 값으로 파일 암호화할때 설정해줬던 비밀번호 값을 넣어 주면 된다.
📌 규리님 없었으면 못했음 (사랑해요 규리찡) :
Github에 파일 암호화해서 올리기👨🏻💻
우리 팀 노션에 작성한 내용인데 같은 내용으로 고민하고있는 분이 있으실 수 있으니 참조하시라고 올립니다 ✨ Github Action을 이용한 CI/CD 구성시 프로젝트 빌드에 필요한 모든 파일이 깃허브에
kyuu-ng.tistory.com
'Programming > etc' 카테고리의 다른 글
Postman 사용법 (0) | 2022.11.28 |
---|---|
크롬 개발자 모드 (F12) 활용법 (0) | 2022.11.15 |