# GitHub Uygulamaları ve OAuth Uygulamaları: Doğru GitHub bağlantısını seçin
Logto entegrasyonu için GitHub Uygulamaları ve OAuth Uygulamaları'nı karşılaştırın. Güvenlik, izinler, token yönetimi gibi temel farkları öğrenin ve uygulamanız için doğru GitHub kimlik doğrulama yöntemini seçin.
GitHub kimlik doğrulamasını Logto uygulamana entegre ederken iki seçeneğin var: GitHub Uygulamaları ve GitHub OAuth Uygulamaları. Her ikisi de "GitHub ile Giriş Yap" işlevini sağlasa da, güvenlik, token yönetimi ve API erişimi açısından temelde farklı deneyimler sunar. Bu rehber, temel farkları anlamana ve kullanım durumuna en uygun yaklaşımı seçmene yardımcı olacak.
Arka plan: GitHub entegrasyonu için iki yol
Logto'nun mevcut belgeleri, sosyal giriş için bir GitHub OAuth Uygulaması kurmanı anlatır. Bu, temel kimlik doğrulama ihtiyaçları için harika çalışan daha basit ve doğrudan bir seçenektir. Ancak, GitHub Uygulamaları, GitHub tarafından önerilen modern yaklaşımı temsil eder ve gelişmiş güvenlik özellikleri ile daha ayrıntılı kontrol sunar.
Şöyle düşün: OAuth Uygulamaları, birine evinin anahtarını vermek gibidir—yetki verildikten sonra geniş bir erişim sunar. GitHub Uygulamaları ise, akıllı bir kilit sistemine benzer—farklı odalar için özel şifrelerle belirli izinler verilebilir. Kullanıcılar, uygulamanın ihtiyaç duyduğu izinleri tam olarak verebilir.
Temel farklılıklar kısa bakışla
İzinler: Kapsamlı vs. ayrıntılı
- OAuth Uygulamaları kapsamlı kapsamlar kullanır —
repotalep edildiğinde tüm depoya tam kontrol verir. - GitHub Uygulamaları ayrıntılı izinlerle çalışır—sadece "Sorunlar: Oku" iznini talep edebilir, koda dokunmaz. Kullanıcılar ayrıca kurulumda belirli depoları seçebilir, hepsini topluca vermek zorunda kalmaz.
Token güvenliği: Kalıcı vs. süresi dolan
- OAuth Uygulamaları süresiz (manuel olarak iptal edilene kadar) geçerli olan, yenileme mekanizması olmayan token'lar üretir.
- GitHub Uygulamaları ise kısa ömürlü (1 saatlik) otomatik yenilenebilen token'lar kullanır—uzun süre çalışan uygulamalar için çok daha güvenlidir.
Kimlik: Kullanıcı vs. bot
- OAuth Uygulamaları her zaman yetki veren kullanıcı olarak hareket eder (örn.
@octocat) ve onların kullanım sınırını paylaşır (5.000 istek/saat). - GitHub Uygulamaları bağımsız olarak kendi bot kimliğiyle hareket edebilir (örn.
@benim-uygulamam[bot]) ve artan kullanım ile ölçeklenebilen sınırlarla çalışır—otomasyon için idealdir.
Erişim kontrolü: Ya hep ya hiç vs. seçmeli
- OAuth Uygulamaları tüm erişilebilir kaynaklar için tek seferlik yetkilendirme gerektirir.
- GitHub Uygulamaları kullanıcıların uygulamayı yüklemesine, belirli depoları seçmesine ve izin değişiklikleriyle ilgili webhook bildirimleri almasına olanak sunar—daha iyi şeffaflık ve kontrol sağlar.
Kalıcılık: Kullanıcıya bağlı vs. bağımsız
- OAuth Uygulamaları yetki veren kullanıcıya bağlıdır—o geliştirici erişimini kaybeder ya da organizasyondan ayrılırsa uygulama çalışmaz.
- GitHub Uygulamaları uygulamayı kuran geliştirici organizasyondan ayrılmış olsa bile çalışmaya devam eder—otomasyon ve entegrasyonlar için kesintisiz hizmet sağlar.
Hangisini seçmeli?
Hem GitHub Uygulamaları hem de OAuth Uygulamaları, Logto'nun sosyal bağlantı modülüyle sorunsuz çalışır. Logto'nun Gizli Kasası (Secret Vault) her iki entegrasyondan gelen token'ları güvenle saklar—ancak her biri farklı bir deneyim sunar:
OAuth Uygulamaları ile temel sosyal giriş
Sadece kullanıcıları kimlik doğrulamak istiyorsan (GitHub ile Giriş Yap) ve daha sonra GitHub API'lerini çağırmayacaksan, OAuth Uygulaması yolu en hızlısıdır:
- Basit kurulum: kullanıcılar OAuth Uygulamanı yetkilendirir ve GitHub ile giriş yapar.
- Token'lar uzun ömürlüdür (yenilem yok): Logto erişim token'ını Gizli Kasada saklayabilir ama herhangi bir yenileme akışı yoktur — tokenlar, iptal edilene kadar geçerli kalır.
- Yalnızca kullanıcı kimliği (e-posta, ad, avatar) gerekli ve otomatik API işlemleri yapılmayacaksa en iyisi budur.
Neden bunu seçmeli: Sadece oturum açma ve ara sıra profil senkronizasyonu isteyen prototipler ya da uygulamalar için en hızlı yol.
GitHub Uygulamaları ile gelişmiş entegrasyon
Uygulaman uzun süreli GitHub API erişimi, arka plan otomasyonu ya da daha sıkı güvenlik gerektiriyorsa bir GitHub Uygulaması kullan:
- Ayrıntılı izinler ve kurulum başına depo seçimi, erişimin en aza indirilmesini ve denetlenebilir olmasını sağlar.
- Token'lar kısa ömürlüdür (genellikle 1 saat) ve GitHub Uygulamaları yenileme token'ı sağlayabilir; etkinleştirildiğinde Logto hem erişim hem yenileme token'larını Gizli Kasada saklar ve döndürme işlemini üstlenir, böylece arka ucu tekrar kullanıcı girişi olmadan çalışır.
- Uygulama kimliği (bot) ile atıf iyileşir ve büyük otomasyonlarda ölçeklenebilir sınırlarla daha güvenilir olur.
En iyi kullanım alanları:
- Kullanıcılar adına GitHub depoları yöneten SaaS platformlar
- Koda, sorunlara ya da pull request'lere etkileşen AI ajanlar
- Sürekli API erişimine gereksinim duyan uygulamalar
- Arka planda otomasyon görevleri yürüten araçlar
Logto ile GitHub Uygulaması kurmak
Bir GitHub Uygulaması kurmak, OAuth Uygulamalarıyla neredeyse aynı adımları izler; sadece birkaç önemli fark var. OAuth Uygulamasından GitHub Uygulamasına geçiş minimum çaba gerektirir.
GitHub Uygulaması Oluşturma
-
"GitHub Ayarları > Geliştirici ayarları > GitHub Uygulamaları"na git
-
"Yeni GitHub Uygulaması"na tıkla
-
Yapılandır:
- GitHub Uygulaması adı: Uygulamanın benzersiz adı
- Anasayfa URL'si: Uygulamanın internet sitesi
- Callback URL: Logto bağlantısının callback URI'si (OAuth Uygulamasıyla aynı)
- Kurulum sırasında kullanıcı yetkilendirmesi (OAuth) iste: Bunu etkinleştir
- Webhook: İhtiyacına göre opsiyonel
- İzinler: Ayrıntılı izinleri seç (örn. "Sorunlar: Oku")
- Kullanıcı izinleri: Kullanıcı adına işlem yapılacaksa hesap izinleri ekle
-
Bir istemci sırrı (client secret) oluştur (OAuth Uygulaması gibi)

Logto'da yapılandırma
Logto bağlantı ayarları neredeyse aynıdır:
- GitHub Uygulamasından İstemci Kimliği bilgisini gir
- İstemci sırrı ekle
- GitHub API'lerini çağırman gerekiyorsa **"Kalıcı API erişimi için token sakla"**yı etkinleştir
- Temel fark - Kapsamlar (Scopes):
- OAuth Uygulamaları'nda kapsamlar Logto'da eklenirken, GitHub Uygulaması izinleri GitHub Uygulamasının ayarlarında seçilir.
- Logto'da kapsam alanını boş bırak
- Yenileme token'ı iste (opsiyonel)
- Yenileme token'larını etkinleştirmek için Logto'da kapsam alanına
offline_accessekle - GitHub otomatik olarak bir yenileme token'ı üretir, Logto ise token döndürmeyi yönetir ve her iki token'ı Gizli Kasada saklar
- Not: OAuth Uygulamaları yenileme token'ını desteklemez—erişim token'ları asla süresi dolmaz, bu yüzden
offline_accessgeçerli değildir. Bu, GitHub Uygulaması entegrasyonunda farklıdır.
- Yenileme token'larını etkinleştirmek için Logto'da kapsam alanına

Sonuç
OAuth Uygulamaları temel kimlik doğrulama için geçerli bir seçenek olarak kalırken, GitHub Uygulamaları GitHub entegrasyonlarının geleceğini temsil eder. Token süresi dolması, daha hassas izin modelleri ve erişim üzerinde daha iyi kullanıcı kontrolü ile üst düzey güvenlik sunar.
Logto kullanıcıları için her iki seçenek de sosyal bağlantı aracıyla çalışır. Seçim tamamen ihtiyacına bağlı:
- Sadece kimlik doğrulama gerekiyorsa OAuth Uygulamaları ile başla
- API erişimi, otomasyon ya da gelişmiş güvenlik gerekiyorsa GitHub Uygulamalarına geç
Ve unutma — Logto'nun Gizli Kasası ve otomatik token yenileme özellikleri, GitHub Uygulaması token'larını OAuth Uygulamalarındaki kadar kolay yönetmeni sağlar, üstelik güvenliğinden ödün verilmez. İster bir AI kod asistanı, ister bir proje yönetim platformu, ister bir geliştirici verimlilik aracı inşa et—artık Logto uygulaman için doğru GitHub entegrasyonunu seçebilecek bilgiye sahipsin.
Başlamak için hazır mısın? GitHub kimlik doğrulamasını entegre etmeye bugün başlamak için Logto’nun GitHub bağlantısına göz atabilirsin.

