Blog
Mert Özen'in yazılım geliştirme, backend, frontend ve DevOps üzerine blog yazıları.
OAuth 2.0'ın Mantığı: Roller, Grant Type'lar, Scope'lar ve RFC 9700 ile OAuth 2.1'in Getirdikleri
OAuth 2.0 bir giriş protokolü değil, yetki devri protokolüdür. Dört rolü ve front/back channel ayrımını, confidential ve public client farkını, authorization code, client credentials ve device grant'i Keycloak lab'ında .NET 10 koduyla çalıştırıyor; implicit ve password grant'in neden kaldırıldığını, RFC 9700'ün ve OAuth 2.1 draft'ının getirdiklerini ve access token'ın neden giriş kanıtı olmadığını gösteriyoruz.
Authorization Code Flow + PKCE Adım Adım: state, nonce, PAR ve Keycloak ile HTTP Trafiğini Okumak
PKCE, front channel'dan geçen code'u onu isteyen client'a bağlar; çalınan code verifier olmadan işe yaramaz. Keycloak lab'ında akışı curl'le adım adım okuyor, state ve nonce'un neyi engellediğini, yanlış verifier'dan sonra code'un yandığını ve redirect URI'nin neden birebir eşleşmesi gerektiğini gösteriyor; sonra PAR ile parametreleri back channel'a taşıyıp ASP.NET Core'un OIDC handler'ını uçtan uca izliyoruz.
OpenID Connect: ID Token, UserInfo, Discovery, ASP.NET Core'da AddOpenIdConnect ve Logout Türleri
ID token client için yazılmış bir giriş kaydıdır, access token ise API için bir yetki belgesi; ikisini karıştırmak güvenlik açığıdır. Keycloak lab'ında discovery, JWKS ve UserInfo'yu okuyor, AddOpenIdConnect'te MapInboundClaims'in claim isimlerini nasıl değiştirdiğini gösteriyor, RP-initiated logout'u izliyor ve back-channel logout endpoint'ini yazıp başka bir uygulamadan çıkışın bu uygulamadaki cookie'yi de düşürdüğünü doğruluyoruz.
Authorization Server Seçimi: OpenIddict, Duende IdentityServer, Keycloak ve Microsoft Entra ID Karşılaştırması
Doğru authorization server ekibinin neyi işletebileceğine bağlıdır: OpenIddict ve Duende framework, Keycloak ürün, Entra ID managed servis. Üçünü lab'da çalıştırıp discovery dokümanlarından bir yetenek matrisi çıkarıyor, bu matrisin neden dikkatli okunması gerektiğini gösteriyor; lisansları, işletme yükünü, SAML köprüsünü ve kendi authorization server'ını yazmamanın nedenlerini Kasım 2026 bilgisiyle karşılaştırıyoruz.