Google 서비스 계정
n8n v2.29서비스 계정을 사용하는 방법은 OAuth2보다 복잡합니다. n8n 자격 증명을 Google 서비스 계정에 연결하려면 다음 네 단계가 필요합니다. 먼저 Google Cloud Console 프로젝트를 생성합니다. 이 섹션의 상세 내용은 n8n 공식 문서를 참조하세요.
서비스 계정을 사용하는 방법은 OAuth2보다 복잡합니다. 시작하기 전에 다음을 확인하세요.
- 사용 중인 노드가 서비스 계정과 호환되는지 확인하세요.
- 서비스 계정을 사용해야 하는지 확인하세요. 대부분의 사용 사례에서는 OAuth2가 더 나은 선택입니다.
- 서비스 계정 생성 및 관리에 대한 Google 문서를 읽어보세요.
사전 준비 사항#
- Google Cloud 계정을 생성하세요.
서비스 계정 설정#
n8n 자격 증명을 Google 서비스 계정에 연결하려면 다음 네 단계가 필요합니다.
Google Cloud Console 프로젝트 생성#
먼저 Google Cloud Console 프로젝트를 생성합니다. 이미 프로젝트가 있다면 다음 섹션으로 건너뛰세요.
이 섹션의 상세 내용은 n8n 공식 문서를 참조하세요.
API 활성화#
프로젝트를 생성했다면, 필요한 API에 대한 접근 권한을 활성화하세요.
이 섹션의 상세 내용은 n8n 공식 문서를 참조하세요.
Google Cloud 서비스 계정 설정#
-
Google Cloud Console - 라이브러리에 접속하세요. 올바른 프로젝트에 있는지 확인하세요.
.png)
Google Cloud 상단 내비게이션에서 프로젝트 드롭다운을 확인하세요
-
왼쪽 내비게이션 메뉴를 열고 APIs & Services > Credentials로 이동하세요. Google이 Credentials 페이지로 이동시켜 줍니다.
-
+ Create credentials > Service account를 선택하세요.
-
Service account name에 이름을 입력하고 Service account ID에 ID를 입력하세요. 자세한 내용은 서비스 계정 생성을 참고하세요.
-
Create and continue를 선택하세요.
-
사용 사례에 따라 해당 섹션을 사용해 Select a role과 Grant users access to this service account를 설정할 수 있습니다.
-
Done을 선택하세요.
-
Service Accounts 섹션에서 새로 생성한 서비스 계정을 선택하세요. Keys 탭을 여세요.
-
Add key > Create new key를 선택하세요.
-
나타나는 모달에서 JSON을 선택한 다음 CREATE를 선택하세요. Google이 컴퓨터에 파일을 저장합니다.
n8n 자격 증명 완료#
Google 프로젝트와 자격 증명 설정을 모두 마쳤다면, n8n 자격 증명을 완료하세요.
-
다운로드한 JSON 파일을 여세요.
-
client_email을 복사해서 n8n 자격 증명의 Service Account Email에 입력하세요. -
private_key를 복사하세요. 앞뒤의"표시는 포함하지 마세요. 이를 n8n 자격 증명의 Private Key에 입력하세요.이전 버전의 n8n
0.156.0보다 이전 버전의 n8n을 사용 중이라면, JSON 파일에 있는
\n을 모두 실제 줄바꿈으로 교체하세요. -
선택 사항: 사용자 가장(Impersonate a User)을 사용할지 선택하세요(활성화됨).
- 이 옵션을 사용하려면, Google Workspace 슈퍼 관리자로서 해당 서비스 계정에 대해 도메인 전체 위임을 활성화해야 합니다.
- 가장할 사용자의 Email을 입력하세요.
-
이 자격 증명을 HTTP Request 노드와 함께 사용할 계획이라면, Set up for use in HTTP Request node를 활성화하세요.
- 이 설정을 켜면, 노드에 **Scope(s)**를 추가해야 합니다. n8n이 일부 범위를 미리 채워줍니다. 자세한 내용은 Google API용 OAuth 2.0 범위를 참고하세요.
-
자격 증명을 **저장(Save)**하세요.
동영상#
문제 해결#
서비스 계정이 Google Drive 파일에 접근할 수 없는 경우#
내 드라이브에 대한 접근 권한 없음
Google은 2025년 4월 15일 이후에 생성된 서비스 계정이 my drive에 접근하는 것을 더 이상 허용하지 않습니다. 이제 서비스 계정은 공유 드라이브에만 접근할 수 있습니다.
권장하지는 않지만, 서비스 계정으로 my drive에 접근해야 하는 경우 도메인 전체 위임을 활성화하면 가능합니다. 자세한 내용은 커뮤니티의 이 게시글에서 확인할 수 있습니다.
서비스 계정은 자신의 연결된 사용자 이메일과 공유되지 않은 Google Drive 파일 및 폴더에 접근할 수 없습니다.
- Google Cloud Console에 접속해서 서비스 계정 이메일을 복사하세요.
- Google Drive에 접속해서 지정한 파일 또는 폴더로 이동하세요.
- 파일 또는 폴더를 마우스 오른쪽 버튼으로 클릭하고 Share를 선택하세요.
- Add People and groups에 서비스 계정 이메일을 붙여넣으세요.
- 읽기-쓰기 접근 권한을 부여하려면 Editor를, 읽기 전용 접근 권한을 부여하려면 Viewer를 선택하세요.
도메인 전체 위임 활성화#
서비스 계정으로 사용자를 가장하려면, 해당 서비스 계정에 대해 도메인 전체 위임을 활성화해야 합니다.
권장하지 않음
Google은 도메인 전체 위임 사용을 피할 것을 권장합니다. 이는 슈퍼 관리자를 포함한 모든 사용자를 가장할 수 있게 하므로 보안 위험을 초래할 수 있습니다.
서비스 계정에 도메인 전체 권한을 위임하려면, Google Workspace 도메인의 슈퍼 관리자여야 합니다. 그런 다음:
- Google Workspace 도메인의 관리 콘솔에서 햄버거 메뉴를 선택한 다음 Security > Access and data control > API Controls를 선택하세요.
- Domain wide delegation 패널에서 Manage Domain Wide Delegation을 선택하세요.
- Add new를 선택하세요.
- Client ID 필드에 서비스 계정의 Client ID를 입력하세요. Client ID를 확인하려면:
- Google Cloud Console 프로젝트를 열고 Service Accounts 페이지를 여세요.
- OAuth 2 Client ID를 복사해서 Domain Wide Delegation의 Client ID로 사용하세요.
- OAuth scopes 필드에, 애플리케이션에 접근 권한을 부여할 범위를 쉼표로 구분하여 입력하세요. 예를 들어 애플리케이션이 Google Drive API와 Google Calendar API에 대한 도메인 전체의 전체 접근 권한이 필요한 경우,
https://www.googleapis.com/auth/drive, https://www.googleapis.com/auth/calendar를 입력하세요. - Authorize를 선택하세요.
모든 Workspace 사용자를 가장할 수 있게 되기까지 5분에서 최대 24시간이 걸릴 수 있습니다.