API, şirket verisine ve kritik iş fonksiyonlarına doğrudan erişim sağlayabildiği için güvenlik tasarımının sonradan eklenen katman değil mimarinin parçası olması gerekir.
Authentication tek başına yeterli değildir. Bir kullanıcının kim olduğunu doğrulamak, her kaynağa erişme hakkı olduğu anlamına gelmez.
TLS Zorunlu Olmalı
Credential ve token’ların ağ üzerinde açık biçimde taşınmaması için production API trafiği TLS üzerinden çalışmalıdır.
OAuth 2.0
OAuth 2.0 farklı client türleri ve yetkilendirme senaryoları için standart yapı sunar. Flow seçimi kullanım senaryosuna göre yapılmalıdır.
Access Token Yaşam Süresi
Çok uzun ömürlü access token ele geçirildiğinde risk büyür. Gerektiğinde kısa access token ve kontrollü refresh token kullanılabilir.
Authorization
Endpoint erişimi rol veya permission seviyesinde kontrol edilmelidir. Object-level authorization ayrıca önemlidir; kullanıcı başka müşterinin ID’sini değiştirerek veriye erişememelidir.
Scope Kullanımı
Token’a yalnız gerekli kaynak ve işlemler için yetki verilmesi least privilege ilkesini destekler.
Rate Limiting
Kötüye kullanım, brute-force ve hatalı istemci döngülerine karşı kullanıcı, client veya IP bazlı limit uygulanabilir.
Secret Management
API key ve client secret Git repository içinde tutulmamalıdır. Environment variable veya secret vault kullanılabilir.
Input Validation
API’ye gelen tüm input güvenilmeyen veri kabul edilmeli ve schema, tip, uzunluk ve business rule seviyesinde doğrulanmalıdır.
Audit Log
- Kim işlem yaptı?
- Hangi kaynağa erişildi?
- Hangi işlem yapıldı?
- Ne zaman yapıldı?
- İşlem başarılı mıydı?
Production Ortamında Entegrasyon Kontrol Listesi
API Güvenliği: OAuth 2.0, Token, Rate Limit ve Yetkilendirme konusu production ortamına taşınırken TLS Zorunlu Olmalı, OAuth 2.0 ve Access Token Yaşam Süresi yalnız geliştirme aşamasının değil işletim modelinin de parçası olmalıdır. Her entegrasyon için kaynak sistem, hedef sistem, data owner, authentication yöntemi, veri mapping tablosu ve hata sorumlusu açıkça tanımlanmalıdır. Bir endpoint teknik olarak çalışsa bile yanlış ürün, müşteri veya sipariş kaydını güncelliyorsa entegrasyon başarılı kabul edilmemelidir.
Üretim ortamında timeout, rate limit, geçici network kesintisi, duplicate request ve beklenmeyen response gibi senaryolar normal çalışma koşullarının parçası kabul edilmelidir. Retry yalnız geçici hatalara uygulanmalı, tekrar çalıştırılması finansal veya operasyonel yan etki yaratabilecek işlemlerde idempotency kullanılmalıdır. Uzun süren işler queue’ya taşındığında kullanıcı request’i dış servis performansına doğrudan bağımlı olmaktan çıkar; başarısız işler ise kontrollü biçimde yeniden işlenebilir.
Monitoring katmanında yalnız HTTP status code değil business sonucu da izlenmelidir. Örneğin API 200 response üretirken hiçbir sipariş ERP’ye işlenmemiş olabilir. Bu nedenle request count, error rate, P95 latency, retry sayısı, queue backlog ve son başarılı senkronizasyon zamanı gibi teknik metrikler; aktarılan sipariş, stok veya müşteri sayısı gibi iş metrikleriyle birlikte dashboard’a taşınmalıdır. Correlation ID ve structured logging kullanılması incident sırasında tek işlemin farklı servislerdeki izini takip etmeyi kolaylaştırır.
- Authentication ve secret yönetimi
- Veri mapping ve schema validation
- Timeout ve retry politikası
- Idempotency ve duplicate kontrolü
- Rate limit yönetimi
- Structured log ve correlation ID
- Business reconciliation
- Alert ve dashboard
API Sözleşmesi, Failure Mode ve Veri Tutarlılığı
API Güvenliği: OAuth 2.0, Token, Rate Limit ve Yetkilendirme konusu production ortamında uygulanırken yalnız başarılı request-response akışı tasarlanmamalıdır. Özellikle TLS Zorunlu Olmalı, OAuth 2.0 ve Access Token Yaşam Süresi için açık bir API sözleşmesi oluşturulmalıdır. Bu sözleşmede zorunlu alanlar, veri tipleri, enum değerleri, authentication yöntemi, timeout sınırı, hata kodları ve breaking change yaklaşımı tanımlanmalıdır. İstemci sistemin hangi response karşısında retry yapacağı, hangi durumda işlemi durduracağı ve hangi hatanın insan müdahalesine taşınacağı önceden belirlenirse entegrasyon davranışı daha öngörülebilir hale gelir.
Failure-mode tasarımında dış servisin tamamen erişilemez olması dışında yavaş response, kısmi veri, duplicate event, yanlış sıra ile gelen event, rate limit ve geçici authentication problemi de hesaba katılmalıdır. Retry uygulanacak işlemlerde exponential backoff ve uygun olduğunda jitter kullanılabilir. Sipariş, ödeme, stok veya müşteri kaydı gibi yan etkili işlemlerde idempotency veya benzersiz business key bulunması aynı isteğin tekrar işlenmesi sonucunda duplicate kayıt oluşma riskini azaltır.
Veri tutarlılığı açısından API response’unun başarılı olması tek başına yeterli değildir. Kaynak ve hedef sistem arasında periyodik reconciliation yapılması; kayıt sayısı, toplam tutar, son senkronizasyon zamanı veya business ID üzerinden uyuşmazlık kontrolü gerçekleştirilmesi gerekir. Structured log, correlation ID ve merkezi error tracking kullanıldığında bir işlemin hangi serviste başarısız olduğu daha hızlı bulunabilir. Bu kontroller entegrasyonu çalışan bir bağlantıdan çıkarıp denetlenebilir ve sürdürülebilir bir operasyon bileşenine dönüştürür.
- Request ve response schema doğrulaması
- Timeout ve retry matrisi
- Idempotency veya benzersiz business key
- Rate limit ve kapasite yönetimi
- Correlation ID ve structured logging
- Kaynak-hedef reconciliation kontrolü
- Breaking change ve versioning politikası
B10 Digital Agency Entegrasyon Yaklaşımı
B10 Digital Agency entegrasyon projelerini yalnız API bağlantısı kurmak olarak değil; veri sözleşmesi, güvenlik, retry, queue, observability, reconciliation ve operasyon süreçlerinin birlikte tasarlandığı sistem mimarisi olarak ele alır.
Sıkça Sorulan Sorular
OAuth 2.0 authentication protokolü müdür?
OAuth esas olarak authorization framework’üdür. Kimlik doğrulama senaryolarında OpenID Connect gibi katmanlarla birlikte kullanılabilir.
JWT her API için gerekli midir?
Hayır. Token formatı mimari ihtiyaca göre seçilmelidir.
Rate limit güvenlik için yeterli midir?
Hayır. Yalnız savunma katmanlarından biridir.
API key kaynak kodda tutulabilir mi?
Production secret’larının kaynak kod ve repository dışında yönetilmesi gerekir.
İlgili İçerikler
- API-First Geliştirme: Backend’i Ayrıştırmak, Uygulamayı Çoklu Kanal Yapmak
- SEO + İçerik Yapısı için Headless CMS + GraphQL + Schema Best Practices
- Web Geliştirme & Güvenli Altyapı
Sistemlerinizi Güvenilir Veri Akışıyla Birleştirin
ERP, CRM, pazaryeri, özel yazılım ve üçüncü taraf servislerin entegrasyon mimarisini planlamak için B10 Digital Agency API & Sistem Entegrasyonları hizmetini inceleyebilirsiniz.