Image
CI\CD/GitHub Actions

[GitHub Actions] 보안이 필요한 값을 Secrets 기능을 통해 저장하기

보안이 필요한 변수와 Environment Variable

앞선 글에서 Environment Variable을 사용해 변수에 값을 저장하는 방법에 대해 배웠다. 하지만 Environment Variable을 사용해 DB이름이나 계정의 비밀번호 혹은 토큰을 저장하게 되면 보안에 문제가 생길 수 있다. 이를 해결하기 위해 쓰는 것이 바로 Secrets이다.

 

Secrets는 Environment Variable과 비슷하게 동작하지만, 외부로 공개되지 않는 Key-Value 쌍이다. 따라서 토큰이나 비밀번호 같은 보안이 필요한 정보들은 Secrets를 통해 저장해야 한다.

 

자 Secrets를 설정하는 방법에 대해 알아보자.

 

Secrets 설정하기

1. Settings -Secrets - Actions 에 진입한다.

 

 

2. new repository secrets 버튼을 누른다.

 

 

3. Name에 Key 값을 Secret에 Value 값을 입력한다. 여기서는 Key로 TEST_TOKEN 을 사용하고 이에 매핑되는 Secret을 test-token으로 설정했다.

 

 

 

Add secret을 누르면 Screts 설정이 끝난다. 자 이제 Secrets에 접근하는 법을 알아보자.

 

Secrets에 접근하기

1. Secrets에 접근하는 Workflow 파일을 만든다. 아래 파일은 Token 에 접근한다.

name: Environment Variable - Secrets

on: workflow_dispatch

jobs:
  secrets-test:
    runs-on: ubuntu-latest

    steps:
      - name: Access Secrets
        run: |
          echo "Secret Token : ${{ secrets.TEST_TOKEN }}"

 

2. 하지만 이 코드는 아무것도 출력하지 않는다. 이유는 Secrets로 설정된 값은 출력이 되지 않기 때문이다.

 

 

* 출력은 되지 않지만 코드 내부에서는 접근이 되었다. 

반응형

 

이 글의 저작권은 '조세영의 Kotlin World' 에 있습니다. 글, 이미지 무단 재배포 및 변경을 금지합니다.

 

 

Kotlin, Android, Spring 사용자 오픈 카톡

오셔서 궁금한 점을 질문해보세요!
비밀번호 : kotlin22

open.kakao.com