[태그:] API키

  • API 키·토큰 안전하게 보관하는 법: AI 채팅에 절대 붙이지 않기

    API 키·토큰 안전하게 보관하는 법: AI 채팅에 절대 붙이지 않기

    AI한테 "이 키로 연결해 줘" 하면서 채팅창에 키를 붙여 넣으면 안 될까요? 제일 빠르긴 해요. 근데 제일 위험한 방법이었어요.

    자동화를 만들다 보면 비밀번호 같은 값이 계속 생겨요. OpenAI API 키, 인스타그램 토큰, 스레드 토큰, 블로그 응용 프로그램 비밀번호까지요. 이걸 어떻게 보관하는지, API 키 보관법을 코딩 몰라도 따라 할 수 있게 적어 볼게요.

    키를 넣으면 안 되는 곳과 넣어야 하는 곳

    API 키 보관법 한눈에 보기

    • 키와 토큰은 AI 채팅, 메신저, 코드 파일, 화면 캡처에 남기지 않아요
    • 내 컴퓨터의 "사용자 환경변수"에만 넣고, 자동화는 거기서 읽기만 해요
    • 넣을 때도 화면에 안 보이게 입력해요
    • 오류 메시지와 기록(로그)에도 키가 안 찍히게 가려요
    • 새어 나갔다 싶으면 바로 새 키로 바꿔요

    왜 AI 채팅에 붙이면 안 될까

    AI 채팅에 붙인 건 대화 기록에 남아요. 나중에 그 대화를 공유하거나, 다른 기기에서 열거나, 화면을 캡처해서 누구한테 보여 주는 순간 키도 같이 퍼져요.

    키는 그 자체가 열쇠예요. 누가 제 키를 가지면 제 돈으로 AI를 쓰거나, 제 계정으로 게시물을 올릴 수 있어요.

    저도 한 번 아찔했어요. 블로그 관리자 화면을 캡처해서 AI한테 보여 주다가, 2단계 인증용 QR 코드가 같이 찍힌 거예요. 그 QR은 안 쓰기로 하고 캡처 파일도 지웠어요. 캡처도 붙여 넣기랑 똑같다는 걸 그때 배웠어요.

    어디에 넣을까, 사용자 환경변수

    윈도우에는 "사용자 환경변수"라는 칸이 있어요. 내 계정에서 돌아가는 프로그램이 읽을 수 있는, 이름표 붙은 저장 칸이에요.

    저는 키마다 이름을 붙여서 이 칸에 넣어요. 블로그 주소, 블로그 아이디, 블로그 응용 프로그램 비밀번호를 각각 다른 이름으로요. 자동화 코드는 그 이름으로 값을 읽기만 해요. 코드 파일에는 키가 한 글자도 안 들어가요.

    넣을 때도 화면에 안 보이게

    환경변수에 넣을 때 화면에 키가 그대로 보이면, 그것도 캡처나 기록에 남을 수 있어요. 그래서 저는 윈도우 PowerShell에서 이렇게 넣어요.

    $p = Read-Host "비밀번호" -AsSecureString; [Environment]::SetEnvironmentVariable('이름', [Runtime.InteropServices.Marshal]::PtrToStringAuto([Runtime.InteropServices.Marshal]::SecureStringToBSTR($p)), 'User')

    실행하면 "비밀번호"를 물어봐요. 붙여 넣어도 화면엔 별표처럼 가려져 보이고, 엔터를 누르면 그 값이 '이름' 칸에 저장돼요. '이름' 자리에 원하는 이름을 넣으면 돼요.

    한번은 이걸 붙여 넣었는데 PowerShell에서 안 들어가더라고요. 시프트+엔터를 쳤더니 됐어요. 별것 아닌데 한참 헤맸어요.

    기록에도 안 남게 가려요

    자동화가 실패하면 오류 메시지가 기록에 남아요. 근데 어떤 오류는 요청에 쓴 키를 그대로 보여 주기도 해요.

    그래서 자동화가 기록을 남기거나 알림 메일을 보낼 때, 키처럼 생긴 값은 [REDACTED]로 바꿔서 남기게 했어요. 오류를 들여다볼 때도 키는 안 보여요.

    새어 나갔다 싶을 때

    바로 새 키를 만들고, 예전 키는 지워요. 대부분 서비스는 키를 지우는 순간 그 키로는 아무것도 못 해요.

    사용 기록도 확인해요. 내가 안 쓴 사용량이 있는지 보는 거예요.

    그리고 사용 한도를 걸어 둬요. 한도가 있으면 최악이어도 피해가 그 안에서 멈춰요.

    정리하면, 키를 넣으면 안 되는 곳은 이래요. AI 채팅, 메신저, 메일, 코드 파일, 공유 문서, 화면 캡처, 스크린 녹화, 오류 기록과 알림 메일이요.

    키 보관은 귀찮아도 한 번만 정해 두면 돼요. 저는 이 원칙을 자동화 규칙 파일에 적어 두고, AI한테도 "비밀값은 채팅에 붙이지 말고 환경변수에만"을 지키게 해요.

    API 키를 처음 만들고 한도를 거는 방법은 이 글에 있어요.

    → OpenAI API 키 발급 방법: 프로젝트 나누기와 사용 한도 설정까지

    AI한테 일 시킬 때 지킬 것들을 모은 글도 같이 보세요.

    → AI 프롬프트 작성법: 코딩 몰라도 AI에게 일 잘 시키는 말하기 (실제 지시문 예시)

  • OpenAI API 키 발급 방법: 프로젝트 나누기와 사용 한도 설정까지

    OpenAI API 키 발급 방법: 프로젝트 나누기와 사용 한도 설정까지

    ChatGPT를 구독하고 있으면 API도 그냥 쓸 수 있을까요? 아니에요. 저도 처음에 여기서 헷갈렸어요.

    자동화에서 AI 사진을 만들려면 OpenAI API 키가 필요했어요. ChatGPT 구독이랑은 따로고, 쓴 만큼 돈이 나가는 방식이에요. 그래서 OpenAI API 키 발급할 때 제일 신경 쓴 건 "어떻게 만드나"보다 "돈이 얼마나 나갈 수 있나"였어요. 프로젝트를 따로 나누고, 한도부터 건 순서를 적어 볼게요.

    OpenAI API 키를 안전하게 만드는 네 단계

    OpenAI API 키 발급 한눈에 보기

    • ChatGPT 구독(Plus, Pro)과 API는 따로 결제돼요. API는 쓴 만큼 내요
    • 자동화 전용 프로젝트를 새로 만들어 다른 용도랑 안 섞이게 해요
    • 키를 쓰기 전에 프로젝트에 월 사용 한도부터 걸어요 (저는 월 10달러)
    • 한도 100%에 닿으면 메일이 오게 알림을 걸어요
    • 키는 만든 순간 한 번만 보여요. 바로 안전한 곳에 넣어요

    ChatGPT 구독이랑 API는 달라요

    ChatGPT Pro를 쓰고 있어도 API는 따로예요. ChatGPT 구독은 채팅 화면에서 쓰는 요금제라 매달 정해진 돈이 나가요. API는 프로그램이 AI를 직접 부르는 방식이라, 쓴 만큼 충전해 둔 크레딧에서 빠져나가고요.

    자동화가 사진을 만들 때는 API를 써요. 그래서 API 결제랑 한도는 따로 챙겨야 해요.

    한번은 다른 사업 자동화에 쓰던 API 잔액이 바닥난 줄도 모르고 있다가, 뒤늦게 30달러를 충전한 적도 있어요. 잔액은 가끔 들여다봐야 하더라고요.

    1단계. 자동화 전용 프로젝트를 만들어요

    OpenAI 플랫폼에서는 "프로젝트" 단위로 키랑 한도를 관리할 수 있어요. 저는 자동화 전용 프로젝트를 새로 만들었어요.

    나눠 두면 이 자동화가 얼마를 썼는지 따로 보여요. 한도도 이 프로젝트에만 걸 수 있고, 키가 새어 나가도 이 프로젝트만 막으면 돼요.

    그럼 키를 새로 만들 때마다 따로 충전해야 할까요? 저도 그게 궁금했는데, 아니에요. 크레딧 잔액은 같은 조직 안에서 같이 쓰고, 프로젝트는 쓰임새랑 한도를 나누는 칸이에요.

    2단계. 키를 쓰기 전에 한도부터 걸어요

    프로젝트 설정(Settings)의 한도(Limits) 탭에서 월 사용 한도(Project spend limit)를 정해요. 저는 월 10달러로 정했어요.

    화면에 "Limit enforced"라고 뜨면 강제 한도가 걸린 거예요. 한도에 닿으면 그 뒤 요청은 실패하니까, 그 이상은 돈이 나갈 수가 없어요.

    같은 화면에서 한도 100%에 닿으면 메일이 오게 알림도 넣었어요. 한도에 닿은 걸 모르면 "왜 사진이 안 만들어지지?" 하고 한참 헤매거든요.

    프로젝트에 월 10달러 강제 한도와 알림을 걸어 둔 화면

    3단계. API 키를 만들어요

    한도를 건 다음에 그 프로젝트 안에서 API 키를 만들어요. 키에는 알아보기 쉬운 이름을 붙여요. 나중에 어떤 프로그램이 쓰는 키인지 알 수 있게요.

    키는 만든 순간 딱 한 번만 전체가 보여요. 창을 닫으면 다시 못 봐요. 그래서 바로 안전한 곳에 넣어요. 저는 컴퓨터 환경변수에 넣고, 자동화는 거기서 읽기만 해요.

    4단계. 코드에도 한 겹 더 걸어요

    사이트 한도만으로도 큰 사고는 막아요. 근데 한도에 닿으면 그 달은 사진을 더 못 만들잖아요.

    그래서 자동화 코드에도 한 달 200장(약 8달러)을 넘으면 API를 부르기 전에 멈추는 장치를 넣었어요. 사이트 한도보다 조금 낮게 잡아서, 혹시 코드 쪽 기록이 틀려도 사이트 한도가 한 번 더 막아 줘요.

    하지 말아야 할 것

    키를 AI 채팅이나 메신저에 붙이지 마세요. 대화 기록에 남아요.

    코드 파일 안에 키를 적지도 마세요. 파일을 공유하거나 올리는 순간 같이 퍼져요.

    그리고 한도 없이 키부터 쓰지 마세요. 자동화는 제가 자는 동안에도 돌거든요.

    API 키 만들기는 몇 분이면 끝나요. 근데 한도부터 걸어 두는 습관 하나가 자동화를 마음 편히 돌리게 해 줘요.

    이렇게 만든 키로 사진 한 장에 얼마가 드는지는 이 글에 계산해 뒀어요.

    → AI 이미지 생성 API 비용, 요금 폭탄 없이 쓰는 법 (한 장 약 60원 계산과 한도 설정)

    API 키를 안전하게 보관하는 방법은 다음 글에 있어요.

    → API 키·토큰 안전하게 보관하는 법: AI 채팅에 절대 붙이지 않기

    ※ 화면 이름과 메뉴는 2026년 10월 기준이에요. 최신 안내는 OpenAI 공식 문서를 확인하세요: https://platform.openai.com/docs