Genel Bakış
Amacı Nedir?
- Backend API’den dönen mesajın içindeki başlık (header), parametre (parameter) veya gövde (body) alanlarını veya değerlerini koşullu olarak değiştirir veya siler.
- Farklı kullanıcı tiplerine göre yanıt özelleştirmesi yaparak, her kullanıcı tipi için ayrı API oluşturma ihtiyacını ortadan kaldırır.
- Mesaj içeriğindeki hassas bilgileri maskeleyerek veya kaldırarak veri gizliliği sağlar.
- Koşul bazlı eylemlerle esnek veri manipülasyonu yapar, numerik, metin ve zaman veri tiplerinde çeşitli operatörler kullanır.
Çalışma Prensibi
- Yanıt Alınması: Backend API’den dönen mesaj API Gateway’e ulaşır.
- Politika Kontrolü: Veri Değiştirme politikası aktif ise, sistem aşağıdaki sırayla kontrol yapar:
- Condition (koşul) tanımlı mı? Varsa koşul sağlanıyor mu?
- Politika aktif mi (active=true)?
- Kural kümeleri tanımlı mı?
- Kural Değerlendirmesi: Her kural kümesi için:
- Değişken varlığı veya değişken değeri kontrolü yapılır.
- Koşul sağlanırsa, tanımlı eylemler sırasıyla uygulanır.
- Eylem Uygulama:
- Değiştir (Modify): Seçilen alanın değeri, veri tipine göre operatör kullanılarak değiştirilir.
- Sil (Delete): Seçilen alan veya değer mesajdan kaldırılır.
- Sonuç: Özelleştirilmiş yanıt istemciye iletilir.
İş Kuralı Politikası ile Farkları
Özellikler ve Yetenekler
Temel Özellikler
- Koşullu Veri Manipülasyonu: Değişken varlığı veya değişken değerine göre mesaj içeriğini dinamik olarak değiştirir veya siler.
- Çoklu Veri Tipi Desteği: Numerik, metin ve zaman veri tiplerinde çeşitli operatörlerle işlem yapar.
- Esnek Eylem Tanımlama: Bir kurala birden fazla eylem eklenebilir, eylemler sırasıyla uygulanır.
- Değişken Bazlı Erişim: Mesajın başlık, parametre veya gövde alanlarına değişkenlerle erişim sağlar.
- Aktif/Pasif Durum Kontrolü: Politikanın aktif veya pasif durumunu kolayca değiştirme (active/passive toggle). Pasif durumda politika uygulanmaz ancak yapılandırması saklanır.
- Koşul Bazlı Uygulama: Query Builder ile karmaşık koşullar oluşturarak politikanın ne zaman uygulanacağını belirleme (örn: sadece belirli endpoint’lere veya header değerlerine göre).
İleri Düzey Özellikler
- Gelişmiş Metin İşlemleri: Base64 encode/decode, mask, format, substring, replace, transform gibi metin manipülasyon operatörleri.
- Matematiksel İşlemler: Numerik değerlerde toplama, çıkarma, çarpma, bölme, mod alma, üs alma işlemleri.
- Zaman Manipülasyonu: Zaman değerlerine ekleme veya çıkarma işlemleri.
- XSLT ve JOLT Dönüşümleri: Transform operatörü ile XML ve JSON dönüşümleri yapabilir.
- Export/Import Özelliği: Politika yapılandırmasını ZIP dosyası olarak export etme. Farklı ortamlara (Development, Test, Production) import etme. Versiyon kontrolü ve yedekleme imkanı.
- Policy Group ve Proxy Group Desteği: Birden fazla politikayı Policy Group içinde yönetme. Proxy Group’lara toplu politika atama. Merkezi güncelleme ve deploy işlemleri.
- Deploy ve Versiyonlama: Politika değişikliklerini canlı ortama deploy etme. Hangi API Proxy’lerde kullanıldığını görme (Policy Usage). Proxy Group ve Policy Group kullanım raporları.
Kullanım Senaryoları
Politika Parametrelerini Yapılandırma
Bu adımda, kullanıcı yeni bir politika oluşturabilir ya da mevcut politika parametrelerini yapılandırarak veri manipülasyon kurallarını belirleyebilir. Tanımlanan parametreler, politikanın çalışma şeklini (örneğin hangi alanların değiştirileceği, hangi koşullarda eylem yapılacağı, koşullu aktivasyonlar vb.) doğrudan etkiler. Bu sayede politika hem kuruma özel gereksinimlere göre özelleştirilebilir hem de merkezi olarak yönetilebilir.Yeni Veri Değiştirme Politikası Oluşturma
Yapılandırma Adımları
Kural ve Eylem Detayları
Kural Oluşturma
Kural, yanıtın neye göre düzeltileceğini belirten kriterdir. Eylem ise bu kriter ile karşılaşıldığında mesajda yapılacak düzenleme işlemidir. Bir kurala birden fazla eylem eklenebilir. Verilen eylem sırasına göre mesaj özelleştirme yapılır. Ek olarak, politikada birden fazla kural olabilir. Kural konfigürasyonu için kullanılan alanlar aşağıdaki tabloda görülmektedir.Eylem Oluşturma
2 tip eylem seçilebilir:- Değiştir (Modify): İsteğin/yanıtın başlık, parametre veya gövdesi içerisinde var olan bir alanın değeri değiştirilir.
- Sil (Delete): İsteğin/yanıtın başlık, parametre veya gövdesi içerisinde var olan bir alanın değeri veya alanın tamamı silinir.

