Google: 서비스 계정#
서비스 계정을 사용하는 것은 OAuth2보다 더 복잡합니다. 시작하기 전에:
- 귀하의 노드가 서비스 계정과 호환되는지 확인하세요.
- 서비스 계정을 사용해야 하는지 확인하세요. 대부분의 사용 사례에서는 OAuth2가 더 나은 옵션입니다.
- 서비스 계정 생성 및 관리에 대한 Google 문서를 읽어보세요.
전제 조건#
- Google Cloud 계정을 생성하세요.
서비스 계정 설정#
n8n 자격 증명을 Google 서비스 계정에 연결하는 데는 네 가지 단계가 있습니다:
Google Cloud Console 프로젝트 만들기#
먼저 Google Cloud Console 프로젝트를 생성합니다. 이미 프로젝트가 있는 경우 다음 섹션으로 넘어갑니다:
- Google Cloud Console에
Google 자격 증명으로 로그인합니다. - 상단 메뉴에서 프로젝트 드롭다운을 선택한 후,
새 프로젝트(New project) 를 선택하거나
새 프로젝트 만들기(New Project) 페이지로 이동합니다. - 프로젝트 이름(Project name) 을 입력하고,
위치(Location) 를 선택합니다. - 생성(Create) 을 선택합니다.
- 상단 메뉴에서 프로젝트 드롭다운을 확인하고,
방금 생성한 프로젝트가 선택되어 있는지 확인합니다.
선택되어 있지 않다면, 새로 만든 프로젝트를 선택하세요.

API 사용 설정#
프로젝트가 생성되면 액세스해야 하는 API를 사용하도록 설정합니다:
-
Google Cloud Console - 라이브러리에 접속합니다. 올바른 프로젝트에 있는지 확인하세요.
-
APIs & Services > Library 로 이동합니다.
- 활성화할 API를 검색하고 선택합니다.
예를 들어, Gmail 노드를 사용하려면 Gmail API 를 검색하여 활성화하세요. - 일부 통합 서비스는 추가 API 활성화 또는 액세스 요청이 필요할 수 있습니다: * Google Perspective API: API 액세스 요청 * Google Ads: 개발자 토큰(Developer Token){:target=_blank .external-link) 발급 필요
Google Drive API 필요
다음 서비스는 자체 API 외에도 Google Drive API 를 활성화해야 합니다: * Google Docs * Google Sheets * Google Slides
Google Vertex AI API
Vertex AI API 를 활성화할 뿐만 아니라,
Cloud Resource Manager API도 활성화해야 합니다.
- ENABLE 버튼을 선택하여 API를 활성화합니다.
Google Cloud 서비스 계정 설정#
-
Google Cloud Console - 라이브러리에 접속합니다. 올바른 프로젝트에 있는지 확인하세요.
-
햄버거 메뉴 > API 및 서비스 > 자격 증명을 선택합니다. Google이 자격 증명 페이지로 이동합니다.
- + 자격 증명 만들기 > 서비스 계정을 선택합니다.
- 서비스 계정 이름에 이름을 입력하고 서비스 계정 ID에 ID를 입력합니다. 서비스 계정 생성을 참조하여 자세한 정보를 확인하세요.
- 생성 및 계속을 선택합니다.
- 사용 사례에 따라 역할 선택 및 이 서비스 계정에 대한 사용자 액세스 허용을 원하는 섹션에서 선택할 수 있습니다.
- 완료를 선택합니다.
- 서비스 계정 섹션에서 새로 생성한 서비스 계정을 선택합니다. 키 탭을 엽니다.
- 키 추가 > 새 키 만들기를 선택합니다.
- 나타나는 모달에서 JSON을 선택한 후 생성을 선택합니다. Google이 파일을 컴퓨터에 저장합니다.
n8n 자격 증명 마무리#
Google 프로젝트 및 자격 증명이 완전히 구성되면 n8n 자격 증명을 마무리합니다:
- 다운로드한 JSON 파일을 엽니다.
client_email
을 복사한 후 n8n 자격 증명에서 서비스 계정 이메일로 입력합니다.-
private_key
를 복사합니다. 주변의"
기호는 포함하지 마세요. 이를 n8n 자격 증명의 개인 키로 입력합니다.이전 버전의 n8n
n8n 버전이 0.156.0보다 이전인 경우 JSON 파일의 모든
\n
인스턴스를 새 줄로 바꿉니다. -
선택적: 사용자 사칭을 활성화할지 선택합니다.
- 이 옵션을 사용하려면 Google Workspace 슈퍼 관리자가 서비스 계정에 대해 도메인 전체 위임을 활성화해야 합니다.
- 사칭하고자 하는 사용자의 이메일을 입력합니다.
- 이 자격 증명을 HTTP 요청 노드와 함께 사용할 계획이라면 HTTP 요청 노드에서 사용하도록 설정을 활성화합니다.
- 이 설정을 활성화하면 노드에 대한 범위를 추가해야 합니다. n8n은 몇 가지 범위를 미리 채웁니다. 자세한 정보는 Google API용 OAuth 2.0 범위를 참조하세요.
- 자격 증명 저장을 선택합니다.
비디오#
다음 비디오는 위에 설명된 단계를 보여줍니다.
문제 해결#
서비스 계정이 Google Drive 파일에 액세스할 수 없음#
서비스 계정은 연결된 사용자 이메일과 공유되지 않은 Google Drive 파일 및 폴더에 액세스할 수 없습니다.
- Google Cloud Console에 액세스하고 서비스 계정 이메일을 복사합니다.
- Google Drive에 액세스하여 지정된 파일이나 폴더로 이동합니다.
- 파일이나 폴더에서 마우스 오른쪽 버튼을 클릭하고 공유를 선택합니다.
- 사람 및 그룹 추가에 서비스 계정 이메일을 붙여넣습니다.
- 읽기-쓰기를 원할 경우 편집자를 선택하거나 읽기 전용으로 원할 경우 뷰어를 선택합니다.
도메인 전체 위임 활성화#
서비스 계정으로 사용자를 가장하려면 서비스 계정에 대한 도메인 전체 위임을 활성화해야 합니다.
권장하지 않음
Google은 도메인 전체 위임 사용을 피할 것을 권장합니다, 이는 모든 사용자(슈퍼 관리자 포함)를 가장할 수 있으며 보안 위험을 초래할 수 있습니다.
서비스 계정에 도메인 전체 권한을 위임하려면 Google Workspace 도메인의 슈퍼 관리자가 되어야 합니다. 그런 다음:
- Google Workspace 도메인의 관리 콘솔에서 햄버거 메뉴를 선택한 다음 보안 > 액세스 및 데이터 제어 > API 제어를 선택합니다.
- 도메인 전체 위임 창에서 도메인 전체 위임 관리를 선택합니다.
- 새로 추가를 선택합니다.
- 클라이언트 ID 필드에 서비스 계정의 클라이언트 ID를 입력합니다. 클라이언트 ID를 얻으려면:
- Google Cloud Console 프로젝트를 열고 서비스 계정 페이지를 엽니다.
- OAuth 2 클라이언트 ID를 복사하고 이를 도메인 전체 위임의 클라이언트 ID로 사용합니다.
- OAuth 범위 필드에 애플리케이션에 대한 액세스를 부여할 쉼표로 구분된 범위 목록을 입력합니다. 예를 들어 애플리케이션이 Google Drive API와 Google Calendar API에 대한 도메인 전체 전체 액세스를 필요로 하는 경우, 다음을 입력합니다:
https://www.googleapis.com/auth/drive, https://www.googleapis.com/auth/calendar
. - 승인을 선택합니다.
모든 사용자를 Workspace에서 가장할 수 있기까지 5분에서 24시간이 걸릴 수 있습니다.