n8n ile Google Otomasyonlarında Profesyonel Yol: Service Account vs OAuth2
- Alper AKBAS
- 6 Oca
- 2 dakikada okunur
Google Workspace (Sheets, Drive, Gmail, Calendar) ve Google Cloud servislerini n8n ile entegre ederken en sık karşılaşılan soru şudur:
“OAuth mu? Yoksa Service Account mı?”
Bu makalede n8n’de hem Cloud ortamında (n8n.io) hem de lokal ortamlarda (Docker / VM) Google servislerini bağlarken hangi authentication yönteminin neden daha doğru olduğunu açıklayacağız.
🚀 1. n8n Cloud’da Google Entegrasyonları (Hızlı OAuth)
n8n.io üzerinde Google Workspace servisleri ile entegrasyon çok daha kolaydır:
Google Sheets
Gmail
Google Calendar
Contacts
Bu servisler için n8n.io’da:
✅ Tek tıkla Google ile bağlan
✅ OAuth 2.0 penceresi çıkar
✅ Yetki verilir
👉 Hazır bir redirect URI olduğundan ekstra publish gereksinimi yok
Bu, yeni başlayan / eğitim amaçlı kullanıcılar için en hızlı ve sorunsuz çözümdür.
🔐 2. Local n8n’de Durum Farklıdır
Eğer n8n’i:
Docker’da
Yerel bir sunucuda
VPS üzerinde
kullanıyorsan Google gibi OAuth 2.0 isteyen servislerde işler karmaşıklaşabilir:
🔹 Google Cloud Console’a OAuth app kaydı
🔹 Redirect URI tanımlama
🔹 Consent screen ayarları
🔹 Uygulamanın publish edilmesi
🔹 Test user listeleri
Bu süreç, yeni başlayan kişiler için kafa karıştırıcı olabilir ve sık hata aldırır.
🤝 3. Service Account: “Makine Hesabı” Nedir?
Service Account, Google Cloud üzerinde çalışan bir makine/uygulama hesabıdır.
Bu hesap tipinin avantajları:
Kullanıcı login’i gerektirmez
Redirect URI derdi yok
Kullanıcı bağımsız, sunucu odaklı
CI/CD ve prod ortamlar için ideal
Servis hesabı ile:
Firestore
BigQuery
Cloud Storage
Google Drive (dosya bazlı işlemler)
gibi backend-benzeri servisleri yönetmek çok daha sağlıklıdır.
🧠 4. Service Account Ne Zaman Kullanılır?
📌 Firebase / Firestore
Veri okuma/yazma
Toplu işlemler
Admin seviyesinde kontroller
👉 Service Account birinci tercih.
📌 Cloud Storage / BigQuery
Median ya da büyük veri işlemleri
Backend pipeline’ları
Log & raporlama
👉 OAuth yerine Service Account çok daha temiz.
📌 Google Drive
Drive’in “benim hesabım” mantığı olsa da
otomasyon açısından:
👉 paylaşılan bir klasöre erişim + Service Account daha stabil bir yoldur.
❗ 5. OAuth2 Nereye Geri Gelir?
OAuth2, özellikle:
👉 Kullanıcı hesabı adına işlem yapıyorsan
gereklidir. Örnek:
Kullanıcının kendi Gmail’den mail gönderimi
Kullanıcının kendi Drive’ına kişisel erişim
Burada:
OAuth2 redirect olayı gereklidir
Kullanıcıdan izin istenmesi gerekir
Ancak çoğu otomasyon:
👉 Production odaklıdır
👉 Tek hesap / tek servis bazlıdır
Bu yüzden Service Account çok daha akıllı tercih olur.
📊 6. n8n Cloud vs Local Karşılaştırması
Özellik | n8n Cloud | Lokal n8n |
OAuth2 redirect hazır mı? | ✔️ | ❌ |
Google Workspace OAuth kolaylığı | ✔️ | ⚠️ |
Production-ready Authentication | ⚠️ | ✔️ (Service Account) |
Firebase/BigQuery entegrasyonu | ⭕ | ✔️ |
Local debugging kolaylığı | ❌ | ✔️ |
📌 7. Bilmen Gerekenler
🎯 Eğitimlerde — OAuth2 ile hızlı Sheets / Gmail bağlantısı harika bir başlangıç.
🎯 Production’da — Service Account ile:
Sheets
Drive
BigQuery
Cloud Storage
Firestore
gibi sistemleri bağlamak daha sürdürülebilir.
🎯 Kullanıcı adına özel erişim gerekiyorsa OAuth2 şarttır.
🎯 Sonuç
Lokal n8n + Backend odaklı Google servisleri → Service Account en doğru tercih.
Kullanıcı hesabı bazlı işler → OAuth2’in yeri hâlâ var.
Videolu Anlatım:
Çok yakında burada

Yorumlar