Mert Özen Her Satırda Daha İleri

Blog

Mert Özen'in yazılım geliştirme, backend, frontend ve DevOps üzerine blog yazıları.

Seriler
6 yazı bulundu #oauth
MCP ve Agent Güvenliği: Tool Poisoning, Confused Deputy, Least Privilege ve Sandboxing
Yapay Zeka SERİ 13

MCP ve Agent Güvenliği: Tool Poisoning, Confused Deputy, Least Privilege ve Sandboxing

MCP ve agent güvenliği modelin iyi davranmasına değil, modelden bağımsız kontrollere dayanır: güvenilmeyen tool tanımlarını pinlemek, token'ı yalnız kendi server'ın için kabul edip iletmemek, yıkıcı tool'ları ayrı scope'a ve onaya bağlamak, ağ çıkışını kısıtlamak. Spec'in Security Best Practices bölümünü, [Authorize] ile tool bazında yetkiyi, reddedilen denemeleri de yakalayan audit log'u ve ağsız container'da çalışan bir stdio server'ı gerçek çıktılarla görüyoruz.

8 Kas 2026 11 dk 1
ASP.NET Core'da Remote MCP Server: Streamable HTTP, Stateless Mod, State Handle'ları ve Authorization
Yapay Zeka SERİ 10

ASP.NET Core'da Remote MCP Server: Streamable HTTP, Stateless Mod, State Handle'ları ve Authorization

ASP.NET Core'da remote MCP server'ı WithHttpTransport ve MapMcp ile kurar, stateless modda çalıştırır ve OAuth resource server olarak korursun: token yalnız bu server için verilmiş olmalı, state handle'ları kullanıcıya bağlanmalı. Protected resource metadata'yı, audience hatasını, iki instance ile stateless'ın bedelini, MRTR ile imzalı requestState kullanarak onay istemeyi ve Mcp-Method/Mcp-Name header doğrulamasını curl çıktılarıyla görüyoruz.

8 Kas 2026 13 dk 1
Authorization Server Seçimi: OpenIddict, Duende IdentityServer, Keycloak ve Microsoft Entra ID Karşılaştırması
Güvenlik SERİ 15

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.

8 Kas 2026 10 dk 5
API'yi Korumak: Access Token Doğrulama, Audience, Scope Policy'leri, Client Credentials ve DPoP
Güvenlik SERİ 13

API'yi Korumak: Access Token Doğrulama, Audience, Scope Policy'leri, Client Credentials ve DPoP

API, imzası geçerli her token'ı değil, yalnız kendi audience'ı için verilmiş ve gereken scope'u taşıyan token'ı kabul etmelidir. AddJwtBearer'ı Keycloak'a bağlıyor, scope'tan policy'ye eşliyor, çıkış yapan kullanıcının JWT'sinin neden hâlâ geçtiğini introspection ile gösteriyor, client credentials token'ını cache'leyen bir DelegatingHandler yazıyor ve DPoP ile çalınan token'ın işe yaramadığını beş senaryoda doğruluyoruz.

8 Kas 2026 13 dk 3
Authorization Code Flow + PKCE Adım Adım: state, nonce, PAR ve Keycloak ile HTTP Trafiğini Okumak
Güvenlik SERİ 11

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.

8 Kas 2026 11 dk 5
OAuth 2.0'ın Mantığı: Roller, Grant Type'lar, Scope'lar ve RFC 9700 ile OAuth 2.1'in Getirdikleri
Güvenlik SERİ 10

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.

8 Kas 2026 11 dk 4
Blog Haritası