n8n이 내 Gmail을 읽고 Slack에 메시지를 보내려면, 당연히 그 서비스에 '나 대신 들어갈 권한'이 있어야 합니다. 이 권한 정보를 n8n에서는 Credentials(자격 증명, 인증 정보)라고 부릅니다. 회사 건물의 출입증과 같습니다. 한 번 발급받아 두면 갈 때마다 신분 확인을 다시 할 필요가 없죠.
두 가지 인증 방식: OAuth와 API 키
인증 방식은 크게 두 가지입니다. OAuth는 '구글 계정으로 로그인' 버튼을 눌러 서비스가 직접 권한을 확인해 주는 방식이고, API 키는 서비스가 발급해 준 긴 비밀 문자열을 복사해 붙여넣는 방식입니다. OAuth가 지문 인식 출입이라면, API 키는 비밀번호 카드키입니다.
| 구분 | OAuth 2.0 | API 키 |
|---|---|---|
| 등록 방법 | 로그인 버튼 → 권한 동의 클릭 | 발급받은 키 문자열 붙여넣기 |
| 대표 서비스 | Gmail, 구글 시트, Slack | OpenAI, Anthropic, 텔레그램 봇 |
| 비밀번호 노출 | 없음 (서비스가 직접 확인) | 키 자체가 비밀번호이므로 관리 필수 |
| 권한 취소 | 해당 서비스 계정 설정에서 연결 해제 | 서비스에서 키 삭제/재발급 |
실습: Gmail 연결하기 (OAuth)
Gmail Credential 등록
- 워크플로우에 Gmail 노드를 추가하고 설정 창을 엽니다.
- Credential 항목에서 'Create new credential'을 선택합니다.
- 'Sign in with Google' 버튼을 누르면 구글 로그인 창이 새로 뜹니다.
- 내 계정을 선택하고, n8n이 요청하는 권한(메일 읽기/보내기 등)을 확인한 뒤 허용합니다.
- 창이 닫히고 초록색 연결 완료 표시가 뜨면 성공입니다. 이제 이 Credential은 다른 워크플로우에서도 골라 쓸 수 있습니다.
Slack도 흐름은 같습니다. Slack 노드에서 새 Credential을 만들고 OAuth 로그인으로 워크스페이스 접근을 허용하면 됩니다. 다만 Slack은 봇이 참여하지 않은 채널에는 메시지를 못 보내므로, 메시지를 보낼 채널에 n8n 앱(봇)을 초대해 두어야 합니다.
API 키 방식: OpenAI 예시
API 키 Credential 등록
- 해당 서비스(예: OpenAI 플랫폼)의 개발자 페이지에서 API 키를 발급받습니다.
- 발급 직후 키가 한 번만 표시되는 경우가 많으니 즉시 복사합니다.
- n8n에서 OpenAI 관련 노드를 추가하고 'Create new credential'을 선택합니다.
- API Key 칸에 복사한 키를 붙여넣고 저장합니다.
API 키 보관 3원칙
- 공유 금지: API 키는 집 열쇠와 같습니다. 채팅, 이메일, 스크린샷, 공개 문서에 절대 노출하지 마세요.
- n8n Credential에만 저장: 워크플로우의 노드 파라미터나 Code 노드 안에 키를 직접 써넣지 마세요. Credential로 저장해야 암호화되고, 워크플로우를 내보내기(export)해도 키가 딸려 나가지 않습니다.
- 유출 시 즉시 재발급: 실수로 노출됐다면 고민하지 말고 해당 서비스에서 기존 키를 삭제하고 새로 발급받으세요.
워크플로우 JSON을 커뮤니티에 공유하거나 동료에게 보낼 때를 특히 조심하세요. 노드 안에 키를 하드코딩했다면 그대로 유출됩니다. Credential 방식으로 저장한 키는 JSON에 포함되지 않아 안전합니다.
Credential 이름은 'Gmail - 회사계정', 'OpenAI - 개인'처럼 용도를 붙여 저장하세요. 계정이 여러 개가 되면 어떤 워크플로우가 어떤 계정을 쓰는지 헷갈리기 쉽습니다.
이제 n8n에 외부 서비스 출입증을 발급하는 방법을 알았습니다. 다음 강의부터는 드디어 AI를 워크플로우에 초대합니다.