Entra External ID’de Sosyal Giriş: Native Auth GA Oldu
Dürüst olayım, bu haberi gördüğümde ilk tepkim “nihayet ya” öldü. Uzun süredir Entra External ID ile çalışan biri olarak, native uygulamalarda sosyal kimlik sağlayıcı desteğinin GA olmasını bekliyordum. Bilhassa müşteri odaklı (consumer-facing) projelerde Google, Facebook, Apple ile giriş yapılamaması ciddi bir handikaptı. Artık bu bitti — ama tabiî her şey göründüğü kadar pürüzsüz mü? Gelin beraber bakalım.
📋 İçindekiler
-
Entra External ID Tenant Konfigürasyonu
Kendi deneyimimden konuşuyorum, Önce Entra admin center’da External ID tenant’ınızda sosyal kimlik sağlayıcılarını tanımlamanız gerekiyor. Google için OAuth client ID. Secret, Facebook için App ID ve secret, Apple için service ID ve key — bunları ilgili platformların developer console’larından alıyorsunuz (bu konuda ikircikliyim). Bunu 2024’te bir fintech projesinde yapmıştık ve Apple tarafı diğerlerine göre biraz daha karmaşıktı. Apple’ın key rotation mekanizması farklı çalışıyor, dikkat etmek lazım.
Uygulama Tarafında SDK Ayarları
MSAL native auth SDK’sında
challengeTypesparametresine dikkat edin. Sosyal IdP akışı için web-view desteğini aktif etmeniz gerekiyor. Şöyle bir yapılandırma söz konusu:// iOS — MSAL Native Auth yapılandırma örneği let nativeAuthConfig = MSALNativeAuthConfiguration( clientId: "YOUR_CLIENT_ID", tenantSubdomain: "YOUR_TENANT", challengeTypes: [.oob,.password,.redirect] // redirect sosyal IdP için şart )Buradaki
.redirectchallenge type’ı, SDK’ya “sosyal sağlayıcı geldiğinde browser-delegated flow’a geçebilirsin” diyor. Bu olmadan sosyal giriş butonları çalışmaz. Geçen ay Logosoft’ta bir demo hazırlarken tam bu noktada takıldık —.redirecteklemeyi unutmuştuk ve SDK sessizce hata veriyordu (şaşırtıcı ama gerçek). Hata mesajı da pek açıklayıcı değildi, “unsupported challenge” gibi genel bir şey dönduruyordu. 20 dakika kaybettik.💡 Bilgi: SPA (Single Page Application) uygulamalarında da bu akış destekleniyor. MSAL.js’in browser modülü ile web-view delegasyonu pop-up ya da redirect modunda çalışabiliyor. Ama SPA’larda pop-up blocker’lar sorun çıkarabiliyor — bunu göz önünde bulundurun.Kurumsal ve Startup Senaryoları: Kim İçin Ne Anlama Geliyor?
Açık konuşayım, bu özelliğin değeri uygulamanızın hedef kitlesine göre çok değişiyor.
Bunu biraz açayım.
Startup / Küçük Ölçekli Uygulama
Bir startup için sosyal giriş olmazsa olmaz. Kullanıcı edinme maliyetleri zaten yüksek, bir de karmaşık kayıt formlarıyla insanları kaçırmanın anlamı yok. Entra External ID’nın native auth + sosyal giriş kombinasyonu burada çok mantıklı. Tek bir kimlik altyapısıyla hem email/password hem sosyal giriş hem de ileride B2B senaryolarını yönetebiliyorsunuz. Bir bilgi güvenliği danışmanı arkadaşım buna geçti, 3 ayda kayıt dönüşüm oranını %40 artırmış — ben inanamadım — itiraf edeyim, beklentimin üstündeydi —
Enterprise / Kurumsal Müşteri Portalları
Enterprise tarafında durum biraz farklı. Bankacılık, sigorta, telekomünikasyon gibi sektörlerde sosyal giriş “nice to have” kategorisinde kalabiliyor. Ama — gel gelelim — bu sektörlerde bile müşteri portallarında sosyal giriş talebi artıyor. 2025 başında bir telekom müşterimizde tam da bu tartışmayı yaptık: “Müşterilerimiz Google ile giriş yapmak istiyor. Regülatör ne der?” sorusu masadaydı. Burada, entra External ID’nın Conditional Access entegrasyonu burada devreye giriyor. Sosyal girişle gelen kullanıcıya MFA zorunluluğu koyabiliyorsunuz, risk bazlı erişim politikaları tanımlayabiliyorsunuz. Bu, regülasyon tarafını da bir nebze rahatlatıyor.
Ha bu arada, GitHub’da Açık Kaynak Tedarik Zincirini Korumak: Benim Sahada Gördüklerim yazımda güvenlik katmanlarının öneminden bahsetmiştim. Kimlik doğrulama da tam olarak o zincirin ilk halkası. Sosyal giriş eklerken güvenlik katmanlarını gevşetmemek şart (kendi tecrübem) Daha fazla bilgi için
Eksikler ve Eleştirilerim
Güzel özellik ama henüz ham. Biraz daha pişmesi lazım. Neden mi?
Birincisi, post-social authentication adımları hâlâ web-view’da kalıyor. Yanı kullanıcı Google ile — kendi adıma konuşayım — giriş yaptı, sonra MFA gerekiyor — MFA ekranı native değil, web-view. Bu UX kırılması ciddi. Mesela iOS’ta web-view geçişleri bazen yavaş olabiliyor ve kullanıcıda “bu uygulama mı yoksa web sitesi mi?” hissi yaratıyor (evet, doğru duydunuz)
İkincisi, desteklenen sosyal sağlayıcı sayısı şimdilik üç: Google, Facebook, Apple. Peki Twitter (X)? LinkedIn? Microsoft bir düşüneyim… hesabı ile giriş? Bunlar henüz yok. Kağıt üstünde üç sağlayıcı yeterli gibi görünüyor ama pratikte bazı pazarlarda (mesela Türkiye’de) farklı sağlayıcılar da lazım olabiliyor.
Üçüncüsü — ve bu beni en çok rahatsız eden konu — hata yönetimi. Web-view içinde bir şey ters gittiğinde (ağ hatası, timeout, sağlayıcı tarafında problem), kullanıcıya gösterilen hata mesajları çok genel kalıyor. E peki, sonuç ne öldü? AZ-500 sınavına hazırlanırken bu tür delegated flow’lardaki hata senaryolarını detaylıca çalışmıştım, ama pratikte SDK’nın hata raporlaması beklediğim kadar granüler değildi.
Neyse, uzatmayalım — bunlar ilk GA sürümü için beklenen eksikler. Microsoft’un roadmap’inde native post-social UX var, umarım 2025 sonuna kadar gelir (bizzat test ettim)
Copilot ve DevOps Entegrasyonu İle Bağlantı
Bir de şunu söyleyeyim: Bu tür kimlik altyapısı değişikliklerini CI/CD pipeline’larınıza entegre etmeyi unutmayın. Entra External ID tenant — kendi adıma konuşayım — ayarlarını Infrastructure as Code (IaC) ile yönetmek artık bir zorunluluk. Terraform veya Bicep ile sosyal IdP ayarlarını tanımlayabilirsiniz. Copilot’la Kendini Otomatikleştirmek: Ajanlarla Yeni Çalışma Şekli yazımda otomasyon yaklaşımlarından bahsetmiştim — kimlik altyapısı da bu otomasyonun bir parçası olmalı.
Logosoft’ta bir bankacılık projesinde Entra External ID konfigürasyonlarını Terraform ile yönetmeye başladık. Her değişikliğin PR üzerinden geçmesini sağladık. Böylelikle “kim ne zaman hangi sosyal sağlayıcıyı ekledi/çıkardı” sorusunun cevabı her zaman elimizin altında.
Sıkça Sorulan Sorular
Native Authentication’da sosyal giriş tamamen native mi çalışıyor?
Hayır. Giriş/kayıt ekranı native kalıyor ama sosyal sağlayıcının kimlik doğrulama adımı browser-delegated (web-view) flow ile gerçekleşiyor. Bu, Google, Facebook ve Apple’ın OAuth gereksinimleri yüzünden zorunlu bir tasarım kararı. İleride post-social adımlar için native API-driven UX planlanıyor.
Hangi sosyal kimlik sağlayıcıları destekleniyor?
Şahsen, Şu an GA olan sağlayıcılar: Google, Facebook ve Apple. Twitter/X, LinkedIn gibi sağlayıcılar henüz desteklenmiyor. Microsoft’un roadmap’inde ek sağlayıcıların gelebileceğine dair işaretler var ama kesin tarih açıklanmadı.
Conditional Access ve MFA sosyal giriş sonrası çalışıyor mu?
Şahsen, Evet, çalışıyor. Sosyal giriş sonrası Conditional Access politikalarınız devreye girebiliyor ve MFA zorunlu kılınabiliyor. Ancak bu MFA adımı şimdilik web-view içinde gerçekleşiyor, native bir MFA deneyimi henüz mevcut değil.
SPA (Single Page Application) uygulamalarında da kullanılabiliyor mu?
Evet. MSAL.js üzerinden SPA uygulamalarında da sosyal giriş destekleniyor. Pop-up veya redirect modunda çalışabiliyor. Ancak pop-up modunda tarayıcı pop-up blocker’larına dikkat etmeniz gerekiyor — bazı kullanıcılarda engellenebiliyor.
Azure AD B2C’den Entra External ID’ye geçiş yapmam gerekiyor mu?
Zorunlu değil, B2C hâlâ destekleniyor. Ama yeni projeler için Microsoft’un yönlendirmesi Entra External ID tarafına. Mevcut B2C tenant’larınız çalışmaya devam ediyor, ancak yeni özellikler artık External ID tarafında geliyor. Geçiş planlaması yapmaya başlamanızı öneririm.
Kaynaklar ve İleri Okuma
Microsoft Entra External ID — Native Authentication Dokümantasyonu
Social Identity Providers for Native Authentication — GA Duyurusu (Microsoft Identity Blog)
Entra External ID’de Sosyal Kimlik Sağlayıcı Yapılandırma Rehberi
Bu yazı yapay zeka (büyük dil modelleri) ile hazırlanmış, insan editör tarafından incelenmiştir. İçerik üretim sürecimiz.
Burak S.
Tam native değil kısmı kafama takıldı, yani arkada bir webview mi açılıyor sonuçta? Çünkü bu durum özellikle iOS tarafında kullanıcı deneyimini ciddi etkiliyor. Google ve Apple giriş akışlarında daha önce bu yüzden epey baş ağrısı çekmiştik.
Ahmet Y.
Sonunda GA oldu, consumer projelerinde sosyal giriş entegrasyonu hep biraz acı veriyordu. Ama “tam native değil” kısmı kafama takıldı, browser fallback ne zaman devreye giriyor tam olarak? Bu arada şu yazınız da güzeldi: OpenAI Neden Bir Medya Şirketi Satın Aldı: TBPN — https://www.askinkilic.com.tr/openai-neden-bir-medya-sirketi-satin-aldi-tbpn/
Yorumlar kapalı.








2 comments