n8n 워크플로우를 구축하다 보면 사내 구글 워크스페이스(Google Sheets, Google Drive, Gmail 등)의 데이터를 읽거나 써야 하는 경우가 많습니다. 이때 n8n과 구글 시스템을 안전하게 연결하기 위한 "통행증(API 자격 증명)"을 발급받으려면, 팀 전용의 Google Cloud Console 프로젝트가 반드시 필요합니다.

프로젝트 개설 권한 및 정책

전사 데이터 보안 및 중앙 집중식 권한 관리를 위해, 실무자 개인 계정으로 구글 클라우드 프로젝트를 임의 생성하는 것은 제한되어 있습니다.

어떤 경우에 신청해야 하나요?

신청 절차

구글 데이터 연동이 필요한 팀은 아래 양식을 작성하여 #인프라-업무요청에 문의해 주시기 바랍니다.

신청 양식

Slack #인프라-업무요청 채널에 문의

항목작성 예시
신청 팀명인사팀
프로젝트 관리 책임자팀장 또는 지정 담당자 성함
사용 목적 및 시나리오매일 접수된 구글 폼 응답을 구글 시트에 자동 기록
필요 API 항목Google Sheets API, Google Drive API

개설 완료 후 후속 작업

테크 그룹에서 프로젝트 생성이 완료되면, 신청하신 담당자에게 "프로젝트 관리자 권한"이 위임됩니다.

⚠️ OAuth2 인증 사용 금지: 개인 동의 기반의 OAuth2 인증은 퇴사·비밀번호 변경 시 인증이 만료되어 자동화가 중단될 수 있으므로 전면 금지됩니다. 반드시 서비스 계정(Service Account) 방식만 사용해 주십시오.

단계별 설정 방법

1 API 활성화

  1. Google Cloud Console 접속
  2. 상단 프로젝트 선택기에서 테크팀이 생성해준 조직 프로젝트를 선택
  3. 좌측 메뉴 → API 및 서비스 → 라이브러리
  4. 필요한 API를 검색하여 사용 버튼 클릭 (예: Google Sheets API, Google Drive API, Google Calendar API)

2 서비스 계정(Service Account) 생성

  1. 좌측 메뉴 → IAM 및 관리자 → 서비스 계정
  2. 상단의 "서비스 계정 만들기" 클릭
  3. 서비스 계정 이름 입력 (예: n8n-인사팀-자동화)
  4. "완료" 클릭

3 JSON 키 발급

  1. 생성된 서비스 계정 목록에서 방금 만든 계정을 클릭
  2. 상단 탭 중 "키" 선택
  3. "키 추가" → "JSON" 선택 → "만들기" 클릭
  4. JSON 파일이 자동 다운로드됨

주의: JSON 키 파일은 비밀번호와 동일한 수준의 보안 자산입니다. 슬랙·이메일로 공유하지 마시고, n8n Credentials에만 등록해 주십시오.

4 n8n에 크리덴셜 등록

  1. n8n → 좌측 메뉴 CredentialsAdd Credential
  2. 사용할 서비스 검색 (예: Google Sheets API, Google Drive API)
  3. 인증 방식에서 Service Account 선택 (⚠️ OAuth2를 선택하지 마세요)
  4. 3단계에서 다운로드한 .json 파일의 내용을 붙여넣기
  5. 크리덴셜 이름을 네이밍 규칙에 맞게 입력 (형식: [팀 or 이름]-[서비스명]-[용도], 예시: 인사팀-Google Sheets-주간리포트)
  6. Save 클릭

필수: Google Workspace 리소스 공유 설정

서비스 계정은 일반 사용자와 달리 자동으로 권한이 부여되지 않습니다.

  1. 서비스 계정의 이메일 주소를 확인합니다 (형식: 계정이름@프로젝트ID.iam.gserviceaccount.com)
  2. 접근하려는 Google Sheets 또는 Drive 폴더를 엽니다
  3. 공유 버튼 클릭 → 서비스 계정 이메일 주소를 입력 → 편집자 권한으로 추가
  4. 이 단계를 빠뜨리면 n8n에서 "권한 없음(403)" 에러가 발생합니다

Tip: Drive 폴더 단위로 공유하면 하위 파일에 모두 권한이 적용되므로, 파일마다 개별로 공유할 필요가 없습니다.