OAuth 2.0, OIDC ve PKCE
Client Credentials, consent ve eski akışlar
Makine kimliği, public client ve güncel güvenlik tercihleri.
Kavramı anlayalım
Client Credentials makinenin kendi yetkisiyle token almasıdır; bir insanın login işlemi değildir. Confidential client güvenli bir sunucuda credential koruyabilir. Elde edilen token uygulama yetkisine göre değerlendirilir; kullanıcı ownership’i gerektiren endpoint’e sahte user eklemek doğru değildir. Anahtar rotasyonu, en düşük scope ve audit gerekir.
Resource Owner Password Credentials kullanıcının şifresini uygulamaya vermesini gerektirir ve güncel OAuth güvenlik rehberinde kullanılmamalıdır. Implicit gibi token’ı front-channel’a taşıyan eski tercihler yerine desteklenen modern akış ve Code + PKCE yaklaşımı değerlendirilir. Sağlayıcının eski örneği internette bulunması güvenli veya uygun olduğu anlamına gelmez.
Consent ekranı kullanıcının hangi erişime izin verdiğini anlatır; API’nin kendi authorization denetimini kaldırmaz. Refresh token issuance, rotasyon ve token audience sağlayıcıya göre tasarlanır. Makine secret’ını Next.js public bundle’a koyma. Back-channel çağrılarda TLS, client authentication ve hedef doğrulaması gerekir. Bu ders migration veya yeni entegrasyon kararını vermene yardım eder; mevcut kimlik sağlayıcını incelemeden otomatik “tek doğru config” üretmez.
Backend job ve eski OAuth entegrasyonlarını gözden geçirirken.
Client Credentials token’ını gerçek kullanıcının session’ı gibi görmek.
Aynı konu. Üç farklı derinlik.
Backend job → client authentication → access token → permitted APIMakine kendi kimliğiyle çalışır.
Bu sayfa dış sunuculara istek göndermez. HTTP mesajları temsili, HTTP/1.1 biçiminde okunabilir gösterimlerdir; HTTP/2 ve HTTP/3 wire formatı değildir. example.test ayrılmış öğretim alan adıdır. Komut ve JavaScript örneklerini yalnız kendi test ortamında uygula; gerçek token veya cookie yayımlama.
Önce kendin dene.
Gece çalışan rapor işi hangi insan adına login oldu?
Çözümü ve açıklamasını göster
No human implied: it can use an application identity.Client credentials insan login’i oluşturmaz.