Trafik kuralı ya fazla kısıtlıysa modern senaryolar çözülmez, fazla ham ise operasyon kod yazmaya dönüşür.
Kurumsal uygulama trafiğinde yönlendirme kararı artık yalnızca host, path veya port üzerinden verilmez. Header düzeltme, eski uygulamaya uyum, CORS politikası, çerez güvenliği, bant genişliği sınırlama, captcha tetikleme, karantina, özel hata sayfası ve response dönüşümü gibi ihtiyaçlar aynı trafik hattında ortaya çıkar. Basit yük dengeleme kuralları bu çeşitliliği karşılamakta yetersiz kalır.
Birçok geleneksel yaklaşım iki uçtan birine savrulur. Ya operatöre yalnızca birkaç hazır aksiyon sunulur ve modern kullanım senaryoları çözülemez; ya da tam esneklik için ham script veya düşük seviye konfigürasyon yazması beklenir. İkinci modelde her kural değişikliği yazılım geliştirme, test, kod inceleme ve güvenlik denetimi gibi ağır süreçlere bağlanır.
Aksiyonların hangi servis tipinde ve hangi trafik aşamasında geçerli olduğu net kontrol edilmezse hata riski daha da artar. TCP servisinde HTTP header aksiyonu yazmak, response aşamasında request davranışı beklemek veya aynı havuzda tekrarlanmaması gereken aksiyonu birden fazla kez eklemek runtime sorunlarına yol açabilir.
Doğru model, görsel kural editörü ile derlenmiş runtime davranışını birleştirmelidir. GUI yalnızca mümkün kombinasyonları göstermeli, aksiyon metadata'sı servis tipi ve request/response aşamasını denetlemeli, özel ihtiyaçlarda ise kontrollü manuel kural kapısı açık kalmalıdır.
TR7 Trafik Kuralları Motoru bu dengeyi kurar: operatöre 56 hazır aksiyon verir, geçersiz kombinasyonları gizler, doğru kuralları doğrulanmış konfigürasyon olarak üretim trafiğine taşır.
Yaklaşımımız
TR7, trafik kurallarını aksiyon taksonomisi, aşama farkındalığı, derlenmiş konfigürasyon ve doğrulanmış geçiş modeliyle uygular.
Aksiyon metadata'sı geçerli kombinasyonları baştan belirler
Her aksiyon için servis tipi, request/response aşaması, koşul desteği, içerik ihtiyacı, hata kodu davranışı ve havuz başına kullanım limiti tanımlıdır. GUI bu metadata'yı kullanarak yalnızca geçerli kural seçeneklerini gösterir.
Kurallar doğru sırayla runtime konfigürasyonuna derlenir
Görsel editörde oluşturulan aksiyonlar çalışma konfigürasyonuna belirli öncelik sırasıyla yazılır. Böylece değişken atama, yönlendirme, header işlemleri, hata davranışı ve kurum servisi seçimi öngörülebilir sırada çalışır.
Gelişmiş aksiyonlar gerektiğinde Lua tabanlı çalışma yoluna alınır
Statik direktifle ifade edilemeyen bazı gelişmiş aksiyonlar runtime'da çağrılabilecek fonksiyonlara dönüştürülür. Operatör kod yazmadan karmaşık trafik davranışlarını kural motoru üzerinden yönetebilir.
Yeni kural seti doğrulanmadan aktif trafiğe çıkmaz
Yeni konfigürasyon önce üretilir ve doğrulama sürecinden geçirilir. Başarısız doğrulama durumunda mevcut çalışan yapı korunur; hatalı kural üretim trafiğine uygulanmaz.
Yetenekler
Trafik Kuralları Motoru, hazır aksiyonları FX koşullarıyla birleştirerek istek ve yanıt akışında kontrollü politika uygulaması sağlar.
56 hazır aksiyon ile kod yazmadan trafik davranışı tanımlanır
TR7; add_header, del_header, set_header, replace_header, redirect_scheme, req_redirect_location, set_path, normalize_uri, req_auth, cors, ipMask, cookieEncryption, bandwidthRule, advancedCaptcha, modifyResponse, silentLog, securityHeaders, cookieSecurity, deny, quarantine_table, manualRule ve prometheusService gibi 56 aksiyon sunar. Operatör bu aksiyonları görsel editörde seçer, parametrelerini doldurur ve koşula bağlar. Bu yapı, sık kullanılan trafik manipülasyonlarını script yazma işinden çıkarır. Sonuçta operasyon ekibi daha hızlı kural üretir, geliştirme ekibine bağımlılık azalır.
Aksiyon grupları request, response ve hata senaryolarını ayırır
Aksiyonlar atRequest, atResponse, errorRules, cookieBased ve tcpRules gibi semantik gruplar altında sunulur. Bu ayrım, operatörün kuralın hangi trafik aşamasında çalışacağını daha net görmesini sağlar. Request tarafındaki header veya path işlemleri ile response tarafındaki güvenlik header'ları ve hata sayfası davranışları karışmaz. GUI, teknik karmaşıklığı azaltıp kural yazımını kullanım amacına göre düzenler.
Servis tipi farkındalığı yanlış aksiyonların görünmesini engeller
Her aksiyon HTTP, TCP veya her iki servis tipiyle uyum bilgisi taşır. HTTP'ye özel CORS, header manipülasyonu, çerez güvenliği ve path işlemleri TCP servislerinde gösterilmez. TCP bağlantı yönetimi gibi TCP'ye özgü aksiyonlar da HTTP servisinde gereksiz seçenek olarak sunulmaz. Bu yaklaşım, operatörün çalışmayacak bir kuralı daha baştan seçmesini engeller.
Request ve response aşaması kontrolü runtime hatasını azaltır
Her aksiyonun hangi aşamada geçerli olduğu metadata ile tanımlanır. Request aşamasında çalışması gereken aksiyonlar response tarafına, response odaklı aksiyonlar da request tarafına yanlışlıkla bağlanmaz. Bazı aksiyonlar iki aşamada da kullanılabiliyorsa bu durum açık biçimde yönetilir. Hatalı kombinasyonlar üretim trafiğine çıkmadan doğrulama sürecinde durdurulur.
FX koşullarıyla aksiyonlar zengin trafik bağlamına bağlanır
Aksiyonlar koşulsuz çalışabileceği gibi FX ifade diliyle yazılan koşullara da bağlanabilir. Kaynak IP, ülke, ASN, path, header, cookie, body alanı, kullanıcı rolü, WAAP skoru veya zamanlayıcı değerleri aynı koşul modelinde kullanılabilir. Birden fazla koşul ACL mantığıyla birleştirilerek aksiyonun ne zaman çalışacağı belirlenir. Böylece kural motoru yalnızca statik yönlendirme değil, içerik ve bağlam farkındalıklı karar üretir.
Havuz başına limitler tekrarlı ve çelişkili kullanım riskini azaltır
Bazı aksiyonlar aynı havuzda yalnızca bir kez kullanılmalıdır. Çerez şifreleme, IP düzeltme veya header ismi koruma gibi davranışlarda ikinci bir kural eklemek beklenmeyen sonuç doğurabilir. TR7, havuz başına maksimum kullanım bilgisini metadata içinde taşır ve GUI seviyesinde ikinci eklemeyi engeller. Bu kontrol, operasyonel tutarsızlığı üretim öncesinde azaltır.
Manuel kural kapısı özel senaryolar için kontrollü esneklik sağlar
Hazır aksiyonların kapsamadığı özel durumlarda manualRule ile ham trafik kuralı eklenebilir. Bu özellik, standart motorun dışında kalan ileri seviye senaryolar için kaçış kapısı sağlar. Ancak manuel kurallar da konfigürasyon doğrulama sürecinden geçer ve servis davranışını etkilediği için dikkatli yönetilmelidir. Böylece platform hem görsel kural kolaylığını hem ileri seviye esnekliği aynı modelde sunar.
Çerez, CORS, güvenlik header'ı ve karantina aksiyonları hazır gelir
cookieSecurity aksiyonu Secure, HttpOnly ve SameSite gibi çerez güvenlik ayarlarını zorlayabilir; cookieEncryption seçilen çerez değerlerini şifreli hale getirebilir. CORS aksiyonu origin allow-list, metod, header ve preflight cache gibi ayarları tek politika altında toplar. securityHeaders ile temel güvenlik header'ları merkezi biçimde uygulanabilir. quarantine_table ise belirli IP veya istemci imzasını süreli olarak karantinaya alarak tekrar eden kötü davranışı edge seviyesinde sınırlar.
Operasyonel derinlik
Trafik kuralları; atomik geçiş, versiyonlama, küme senkronizasyonu, çelişki yönetimi, izleme ve edge case davranışlarıyla birlikte işletilir.
Atomik konfigürasyon geçişi
Yeni kural seti önce ayrı olarak üretilir ve doğrulanır. Doğrulama başarılıysa aktif konfigürasyona geçilir; başarısızsa mevcut çalışan yapı korunur. Bu model, hatalı bir kuralın üretim trafiğini kesmesini engellemeye yardımcı olur.
Versiyon ve audit kaydı
Her kural değişikliği kimlikli ve zaman bilgisiyle kaydedilmelidir. Operasyon ekibi kimin hangi kuralı değiştirdiğini, hangi havuzu etkilediğini ve gerektiğinde hangi sürüme dönüleceğini görebilir. Bu kayıtlar özellikle güvenlik ve uyumluluk incelemelerinde kritik değer taşır.
Küme senkronizasyonu
Yüksek erişilebilirlik yapılarında aynı kural setinin diğer düğümlere de aktarılması gerekir. Aksi halde aynı VIP üzerinden farklı düğümlerde farklı trafik davranışı oluşabilir. TR7, kural setlerinin küme içinde tutarlı kalmasını operasyonel modelin parçası olarak ele alır.
Çelişen aksiyon davranışı
Aynı header veya aynı trafik alanı üzerinde birden fazla aksiyon tanımlandığında öncelik sırası belirleyici olur. Sistem aksiyonları tanımlı sıraya göre üretir; son davranış bu sıraya bağlıdır. Operatör kritik kurallarda çakışma ihtimalini audit ve öncelik mantığıyla değerlendirmelidir.
Aksiyon çalışma izleme
Aksiyonların çalışıp çalışmadığı silentLog üzerinden izlenebilir ve SIEM tarafına ayrı alanlarla aktarılabilir. Bu sayede bir kuralın gerçekten kaç isteğe uygulandığı, hangi koşullarda tetiklendiği ve beklenen etkiyi üretip üretmediği incelenebilir. İzlenebilirlik, kural motorunu kara kutu olmaktan çıkarır.
HTTP/2 header davranışı
Bazı eski kurum servisleri header isimlerinin büyük/küçük harf biçimine hassas davranabilir. keepHeaderNames aksiyonu bu tür uyumluluk ihtiyaçlarında header isimlerinin korunmasına yardımcı olur. Bu ayar yalnızca gerçekten ihtiyaç olan servislerde kullanılmalı ve uygulama davranışıyla birlikte test edilmelidir.
Hangi senaryolarda kullanılır
Eski uygulama header beklentisini dönüştürme
Modernizasyon ekipleri, eski bir kurum servisinin farklı isimde beklediği header'ı replace_header veya set_header aksiyonuyla dönüştürebilir. Uygulama koduna dokunmadan trafik girişinde uyumluluk katmanı oluşturulur.
Temel güvenlik header'larını merkezi uygulama
SaaS ekipleri securityHeaders aksiyonuyla sık kullanılan güvenlik header'larını servis önünde merkezi olarak ekleyebilir. Her uygulama ekibinin ayrı ayrı aynı ayarları yapmasına gerek kalmadan güvenlik tabanı güçlendirilir.
Login akışında hız sınırı ve captcha tetikleme
Finans uygulamaları, başarısız giriş denemelerinde bandwidthRule ve advancedCaptcha aksiyonlarını birlikte kullanabilir. Şüpheli tekrarlar kullanıcı deneyimini tamamen kesmeden daha sıkı doğrulama akışına alınır.
Oturum çerezlerini istemci tarafında koruma
E-ticaret ve finans servisleri cookieEncryption ile oturum çerezlerini istemciye şifreli olarak taşıyabilir. Kurum servisi beklediği değeri görmeye devam ederken istemci tarafındaki çerez içeriği anlamlı biçimde okunamaz.
Sık sorulanlar
56 aksiyon içinde en sık kullanılan gruplar hangileridir?
Bir aksiyon yanlış aşamaya (request/response) bağlanırsa ne olur?
TCP servisleri için hangi aksiyonlar kullanılabilir?
manualRule aksiyonu ne zaman tercih edilmeli?
FX koşulları hangi veri kaynaklarını destekler?
Bir kural üretim trafiğini olumsuz etkilemeden nasıl güncellenir?
Trafik akışınızı kural motoruyla yönetin
56 hazır aksiyon, FX koşulları ve atomik konfigürasyon geçişiyle istek ve yanıt hattında tam kontrol. Kendi servislerinizle canlı bir kurulumda gezdirelim.