C.W.K.
Stream
Lesson 05 of 12 · published

Variable (비-비밀 설정)

~8 min · variables, vars, config

Level 0Apprentice
0 XP0/101 lessons0/10 achievements
0/120 XP to next level120 XP to go0% complete

모든 게 secret 은 아냐

AWS region, default model 이름, feature flag URL — 이건 설정이지 secret 아냐. 저장 시 암호화 불요. 로그에 보여야 함 (디버깅용) 그리고 repo 간 공유 가능해야 함.

GitHub 가 secret 옆에 variable 도 제공. 같은 scope (repo, org, environment), 하지만:

  • Plaintext 저장.
  • 로그에 보임 (redaction 없음).
  • secrets.NAME 대신 vars.NAME 으로 접근.
  • 같은 UI: Settings → Secrets and variables → Actions → Variables 탭.

뭐가 어디에

Variable (vars.X)Secret (secrets.X)
AWS_REGIONAWS_ACCESS_KEY_ID
OPENAI_MODELOPENAI_API_KEY
PYTHON_VERSION
STAGING_HOSTSTAGING_SSH_KEY

잣대: public 로그에 누출돼도 괜찮으면 variable. 누출되면 rotation 필요하면 secret.

Code

vars 와 secrets 혼합·yaml
      - name: Configure AWS
        env:
          AWS_REGION: ${{ vars.AWS_REGION }}
          AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
          AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
        run: aws sts get-caller-identity

External links

Exercise

Repo 하나의 secret audit. 비-민감한 거 (버전, region, auth 없는 hostname) variable 로 이동. Workflow 참조를 secrets.X 에서 vars.X 로 업데이트.

Progress

Progress is local-only — sign in to sync across devices.
이 페이지에서 버그를 발견하셨거나 피드백이 있으세요?문제 신고

댓글 0

🔔 답글 알림 (로그인 필요)
로그인댓글을 남기려면 로그인해 주세요.

아직 댓글이 없어요. 첫 댓글을 남겨보세요.