Amaç
MHM Rentiva API katmanındaki veri alışverişinin bütünlüğünü ve gizliliğini sağlamak için kullanılan güvenlik protokollerini açıklar.
🔐 API Güvenlik Mimarisi
Sistem, hem dahili hem de harici talepler için çok katmanlı bir doğrulama stratejisi izler.
🛡️ 1. Kimlik Doğrulama Yöntemleri
A. Nonce (CSRF) Koruması (Internal)
Dahili AJAX ve Interactivity API taleplerinde kullanılır.
- Header:
X-WP-Nonce - Doğrulama:
check_ajax_referer()veyarest_cookie_check_errors().
B. API Key (External)
Dış entegrasyonlar için AuthHelper ile yönetilir.
- Header:
X-Rentiva-API-Key - İşlev: API anahtarı, o anahtara atanmış yetki seviyesini (Read/Write) belirler.
C. HMAC İmza Doğrulaması (Webhook)
Ödeme geri bildirimleri (Callback) için kritik güvenlik adımıdır.
- Header:
X-Rentiva-Signature - Mantık: Gelen JSON gövdesi ve gizli anahtar (Secret Key) kullanılarak üretilen hash, başlıktaki veriyle karşılaştırılır.
🚦 2. Yetkilendirme (Authorization)
Kimlik doğrulandıktan sonra, kullanıcının işlem yetkisi kontrol edilir:
current_user_can('manage_options'): Admin bazlı işlemler.current_user_can('rentiva_vendor'): Tedarikçi bazlı işlemler.Mode::featureEnabled(): Lisans seviyesine göre özellik kısıtlaması.
🚀 3. İstek Güvenliği ve Sanitizasyon
Parametre Doğrulama
Tüm uç noktalar args dizisi üzerinden veri doğrulaması yapar:
'id' => [
'validate_callback' => function($param) {
return is_numeric($param);
},
'sanitize_callback' => 'absint',
]
Rate Limiting
RateLimiter::check() metodu ile aynı IP veya API anahtarından gelen aşırı istekler bloklanır. Varsayılan limit: Dakikada 60 istek.
📦 4. Veri Taşıma Güvenliği
- HTTPS: Tüm API uç noktaları için HTTPS zorunludur.
- Secrets: API anahtarları veritabanında şifrelenmiş olarak saklanır.
- Preflight (CORS): Sadece izin verilen alan adlarından (Origin) gelen talepler kabul edilir.
Denetim Listesi
- Tüm POST isteklerinde Nonce kontrolü var mı?
AuthHelperile API Key doğrulaması yapılıyor mu?- Hassas veriler JSON yanıtında gizlenmiş mi?
RateLimiteraktif mi?
Değişiklik Günlüğü
| Tarih | Sürüm | Not |
|---|---|---|
| 19.03.2026 | 4.21.2 | Nonce, API Key, HMAC ve Rate Limiting detayları eklendi. |