1. API Güvenliği Nedir?

API güvenliği; sadece “token koyduk” demek değildir. Amaç; kimlerin, hangi koşulda, hangi kaynağa, ne kadar ve ne sıklıkla erişebileceğini kontrol etmektir. Otel entegrasyonlarında bu kontrol; PMS/OTA sağlayıcıları, web sunucu, rezervasyon motoru, çağrı merkezi ekranları ve üçüncü servisler arasında oluşan “çoklu temas noktası” nedeniyle daha kritik hale gelir.
API güvenliği nedir, PMS/OTA entegrasyonlarında neden kritiktir?
API güvenliği; kimlik doğrulama, yetkilendirme (scope/izin), ağ kısıtları ve kötüye kullanım önleme (rate limit) ile API erişimini kontrol etmektir. PMS/OTA entegrasyonlarında kritiktir çünkü bu API’ler fiyat/müsaitlik/rezervasyon gibi gelir kritik verileri taşır; bir sızıntı veya kötüye kullanım doğrudan operasyonu ve geliri etkileyebilir.
Tehdit modeli (otel ve B2B entegrasyonlarda gerçek riskler)
- •Anahtar sızıntısı: kod deposu, CI log’u, hata log’u, ekran görüntüsü, yanlış paylaşım
- •Aşırı yetki: gereksiz scope’lar açık (least privilege yok)
- •Ağ yüzeyi geniş: IP kısıtı yok, her yerden istek atılabiliyor
- •Sınırsız trafik: rate limit yok → brute force / scraping / abuse
- •Zayıf gözlemlenebilirlik: log var ama secret’lar maskelenmemiş veya audit yok
10 dakikalık entegrasyon güvenliği kontrolü
- • API anahtarları kod deposunda veya düz metinde var mı? (olmalı: hayır)
- • Açık scope/izinler “iş gereği” minimumda mı?
- • IP allowlist/VPN ile erişim daraltıldı mı?
- • Rate limit/throttle profilleri tanımlı mı?
- • Loglarda token/anahtar/parola maskeleniyor mu?
Ne yapmalıyım?
- • Tehdit modelini netleştir: anahtar sızıntısı mı, abuse mı, yetki fazlası mı?
- • Secret’ı doğru yerde tut: secret manager/env var; repo’da asla değil.
- • Least privilege: scope’ları daralt, endpoint’leri sınırlı aç.
- • Ağ ve hız kısıtı: IP allowlist + rate limit ile “kötüye kullanımı” kapat.

2. PMS, OTA ve Rezervasyon API’lerinde Riskler
PMS ve OTA API’leri genellikle iki tür riski bir arada taşır: (1) Gelir kritik işlevler (fiyat/müsaitlik/rezervasyon) ve (2) kişisel/operasyonel veri (misafir detayları, iptal politikaları, call center notları). Bu yüzden güvenlik; yalnızca “dış saldırı” değil, aynı zamanda “yanlış yapılandırma” riskini de kapsar.
PMS–Web–Call Center akışında risk noktaları
- •Web sitenin rezervasyon akışı PMS/Channel Manager’a dokunur
- •Çağrı merkezi ekranı aynı veriyi okur/yazar
- •Üçüncü taraf servisler (CRM, e-posta, analitik) log/olay taşır
- •Bu zincirde en zayıf halka genelde “secret saklama ve loglama” olur.
B2B CRM/ERP entegrasyonlarında ek risk
B2B’de risk, API’nin sadece “okuma” değil “yazma” (update/create) yapabilmesidir. Burada scope tasarımı ve audit logging daha kritik hale gelir.
Anti-pattern (Competitor Gap): “Anahtar sızdıysa sadece web etkilenir” yanılgısı
API anahtarlarının sızdığı vakalarda saldırganlar sadece siteyi değil PMS/rezervasyon sistemlerini de hedefleyebilir; çünkü entegrasyon anahtarı çoğu zaman “arka kapı” gibi çalışır. Bu yüzden erişim daraltma (IP/scope/rate limit) ve hızlı rotasyon (anahtar yenileme) bir “opsiyon” değil, zorunlu kontrol setidir.
Risk azaltma kontrol listesi
- • Okuma/yazma yetkileri ayrıştırıldı mı?
- • “Sadece gerekli endpoint” açık mı?
- • Her entegrasyonun ayrı anahtarı var mı (tek anahtar her yerde değil)?
- • Anahtar rotasyonu planı var mı?
- • Audit log (kim, ne zaman, ne yaptı) tutuluyor mu?
Ne yapmalıyım?
- • Entegrasyonları sınıflandır: okuma-only vs yazma yetkili.
- • Her entegrasyona ayrı kimlik ver (ayrı key/token).
- • Anahtar rotasyonunu takvime bağla (ör. 90–180 gün).
- • Audit log’u KVKK kapsamında doğru sakla ve erişimi sınırla.
3. Kimlik Doğrulama (Token, OAuth, IP Kısıtı)
Kimlik doğrulama, “kim erişiyor?” sorusunu cevaplar. PMS/OTA dünyasında bazen API key, bazen bearer token, bazen OAuth akışı görülür. Buradaki ana prensip: kimliği doğrula + erişimi daralt + anahtarı güvenli sakla.
Token/OAuth seçimi için pratik yaklaşım
- •Sağlayıcı OAuth veriyorsa: token ömrü, refresh akışı, scope yönetimi iyi bir çerçeve sağlar
- •API key kullanılıyorsa: key’i “secret” gibi yönetmek zorunludur (rotasyon, sızma önlemi)
API anahtarları nasıl saklanmalı?
API anahtarları secret manager veya en azından environment variable içinde tutulmalı; kod deposuna asla düz metin olarak yazılmamalıdır. CI/CD ve loglarda anahtar görünmemeli, uygulama hata çıktılarında maskelenmelidir. Ayrıca her ortam (dev/stage/prod) için ayrı anahtar kullanılmalı ve rotasyon planı bulunmalıdır.
IP allowlist / VPN ile erişimi daraltma
IP kısıtı, “kimlik doğru olsa bile” erişim yüzeyini daraltır. Uygulamada: API sağlayıcı allowlist destekliyorsa, sadece belirli çıkış IP’lerinden erişim; gerekirse VPN/jump host üzerinden kontrollü erişim; ortam bazlı (prod ayrı, stage ayrı) IP tanımları.
Auth + ağ kısıtları kontrolü
- • Secret’lar secret manager/env var’da mı?
- • Repo’da düz metin secret yok mu?
- • IP allowlist/VPN kurgusu var mı?
- • Dev/stage/prod anahtarları ayrıldı mı?
- • Loglarda secret masking çalışıyor mu?
Ne yapmalıyım?
- • Secret management standardı yaz (repo’da asla, log’da asla).
- • IP allowlist ile erişim yüzeyini daralt (özellikle prod).
- • Ortamları ayır (dev/stage/prod ayrı secret).
- • Rotasyon + iptal prosedürü belirle (incident anında hızlı kapat).
4. Rate Limit ve İzin (Scope) Yönetimi

Bu bölüm, kötüye kullanım riskini kapatan “operasyonel güvenlik” kısmıdır. Scope yönetimi, “neye erişebilir?”; rate limit ise “ne kadar ve ne hızla erişebilir?” sorusunu yanıtlar. Birlikte tasarlanmadığında ya gereksiz risk alırsınız (fazla yetki) ya da sistemi gereksiz kırarsınız (aşırı limit).
IP kısıtı ve rate limiting ile entegrasyon güvenliğini nasıl artırırım?
IP kısıtı, erişimi belirli ağlardan sınırlandırarak yüzeyi küçültür. Rate limit ise anormal istek patlamalarını kısıtlayarak brute force ve abuse riskini azaltır. En iyi sonuç; kritik endpoint’lerde daha sıkı limit, normal operasyon uçlarında daha esnek limit ve tümünde audit log/alert ile birlikte gelir.
Least privilege — scope/izin tasarımı
- •“Her şeyi açma” anti-pattern’ini bitirin
- •Okuma ve yazmayı ayırın
- •Sadece kullanılan endpoint’leri açın
- •“Scope sözleşmesini” dokümante edin (hangi servis neye erişiyor?)
Throttle ve hata yönetimi
Rate limit sonrası 429 gibi yanıtlar kaçınılmazdır; önemli olan sistemin bunu doğru yönetmesidir: retry/backoff stratejisi, alarm eşikleri (429 patlaması = abuse veya yanlış limit) ve “kritik akışların” limit profili (rezervasyon ≠ raporlama).
Scope + rate limit kontrolü
- • Entegrasyon bazlı scope’lar minimal mi?
- • Okuma/yazma izinleri ayrıldı mı?
- • Endpoint bazlı rate limit profilleri var mı?
- • 429 ve hata yönetimi (backoff) tasarlandı mı?
- • Abuse/limit alarmı tanımlı mı?
Ne yapmalıyım?
- • Scope’ları “iş gereği minimum” seviyeye indir.
- • Rate limit’i endpoint ve iş kritikliği bazında tasarla.
- • 429 yönetimini uygulamaya ekle (backoff + retry).
- • Log/alert ile abuse’ü erken yakala.

5. Otel ve B2B İçin Güvenli Entegrasyon Örnekleri
Bu bölüm, “nasıl olmalı?”yı iki örnekle somutlaştırır: otel (PMS–web–call center) ve B2B (CRM/ERP).
Otel örneği — PMS–Web–Call Center güvenli akışı
- •Web sunucu, PMS/Channel Manager’a “sadece gerekli” uçlarla erişir
- •Call center ekranı ayrı kimlikle/ayrı scope ile çalışır
- •Secret’lar secret manager’da, loglarda maskeli
- •IP allowlist ile sadece belirli çıkışlardan erişim
- •Rate limit ile rezervasyon arama ve güncelleme uçları korunur
B2B örneği — CRM/ERP entegrasyonu
- •Okuma ve yazma anahtarları ayrılır
- •“İş ortağı profili” ile farklı rate limit ve scope uygulanır
- •Audit log: kim, ne zaman, hangi kaydı değiştirdi
- •Incident anında hızlı rotasyon + erişim iptali
Otel ve B2B için güvenli API entegrasyon akışı nasıl olmalı?
Güvenli akış; secret’ların doğru saklandığı, scope’ların minimal olduğu, IP allowlist ile erişimin daraltıldığı ve rate limit ile kötüye kullanımın sınırlandığı bir düzendir. Buna ek olarak loglar maskelenmeli, audit tutulmalı ve anahtar rotasyonu/iptal prosedürü hazır olmalıdır.
Güvenli entegrasyon standardı
- • Secret manager/env var standardı uygulanıyor
- • Repo ve loglarda secret yok (masking var)
- • Scope’lar minimal ve dokümante
- • IP allowlist/VPN ile yüzey dar
- • Rate limit + 429 yönetimi + alarm mevcut
- • Audit log ve rotasyon prosedürü hazır
Ne yapmalıyım?
- • Entegrasyonları “kimlik + scope + IP + rate limit” matrisiyle yeniden çiz.
- • Secret leakage riskini sıfıra indir (repo/log/pipeline kontrolleri).
- • Rotasyon ve incident kapatma prosedürünü tatbik et.
- • KVKK kapsamında log/audit saklama ve erişimi netleştir.



6. İçerik içi tablo (API anahtarı, IP kısıtı, rate limit örnekleri)
| Bileşen | Secret saklama | IP kısıtı | Scope/izin | Rate limit profili | Not |
|---|---|---|---|---|---|
| Web → PMS | Secret manager/env | Allowlist | Minimal (rezervasyon/müsaitlik) | Endpoint bazlı | Peak sezon profili |
| Call center → PMS | Ayrı secret | VPN/allowlist | Okuma ağırlıklı | Daha esnek | Audit şart |
| CRM/ERP → PMS/OTA | Ayrı secret | Allowlist | Okuma/yazma ayrık | Partner profili | İş ortağı istisnası |
| API Gateway | Yönetilen secret | Edge kontrol | Merkezi policy | Global + endpoint | Observability |
7. Sonuç: Entegrasyon güvenliği tek kontrol değil, kontrol setidir
PMS/OTA entegrasyon güvenliği; secret yönetimi, scope/izin tasarımı, IP kısıtları, rate limit ve güvenli loglama/audit’in birlikte çalıştığı bir kontrol setidir. Bu set doğru kurulmadığında bir anahtar sızıntısı “yalnız web” etkisi yaratmaz; gelir ve operasyon akışlarını da riske atabilir.
8. PMS/OTA API Güvenliği & Scope/Rate Limit Planlama Şablonu (v1.0)
PMS/OTA API Güvenliği & Scope/Rate Limit Planlama Şablonunu İndir — Yazılım / Sunucu ve Güvenlik (v1.0)
Bu asset; PMS/OTA entegrasyonlarında güvenliği “token var” seviyesinden çıkarıp secret yönetimi + least privilege scope + IP allowlist + rate limit standardına taşımak için hazırlanmıştır. Entegrasyon bileşenlerini (web, call center, CRM/ERP, API gateway) tek tabloda görüp riskleri hızlıca kapatmanızı sağlar. Incident anında anahtar rotasyonu ve erişim iptali için hazır prosedür üretir.
Kim Kullanır?
Otel entegrasyon geliştiricisi, ajans teknik lideri, BT/IT ve B2B entegrasyon yöneticisi.
Nasıl Kullanılır?
- Entegrasyon envanterini ve erişim yüzeyini çıkar (bileşen, endpoint, veri).
- Scope/izinleri minimalleştir, IP allowlist ve rate limit profillerini yaz.
- Audit skorla, ilk 10 aksiyonu sprint planına çevir ve rotasyon prosedürünü test et.
Ölçüm & Önceliklendirme (Kısa sürüm)
- ▢ ✅ Secret tutulduğu yer: Secret Manager / Env Var / Diğer
- ▢ ✅ Repo’da secret kontrolü (E/H)
- ▢ ✅ Log masking (E/H)
- ▢ ✅ Rotasyon periyodu (gün)
- ▢ ✅ Scope/İzin Matrisi
- ▢ ✅ IP Allowlist / Ağ Kısıtı
- ▢ ✅ Rate Limit / Throttle Profilleri
- ▢ ✅ Incident Prosedürü (kısa)
- ▢ ✅ Audit Skor (0–5): secret, scope, IP, rate limit, log/audit + KVKK
- ▢ ✅ İlk 10 aksiyon listesi
PDF içinde: Problem→Kök Neden→Çözüm tablosu + 14 gün sprint planı + önce/sonra KPI tablosu
Bir Sonraki Adım
PMS/OTA entegrasyonlarında anahtar sızıntısı ve yetki fazlası riskini azaltıp, güvenli entegrasyon mimarisi kurmak isteyen otel ve B2B ekipleri için.
Sık Sorulan Sorular
API güvenliği nedir, PMS/OTA entegrasyonlarında neden kritiktir?▾
API anahtarları nasıl saklanmalı?▾
IP kısıtı ve rate limiting ile entegrasyon güvenliğini nasıl artırırım?▾
Otel ve B2B için güvenli API entegrasyon akışı nasıl olmalı?▾
Scope (izin) yönetiminde en sık hata nedir?▾
Loglarda neden anahtar/parola görünmemeli?▾
İlgili Yazılar
