AGS, Load Balancer condition'ları ve WAF ile birlikte nasıl kullanılır?
Kısa cevap
AGS, aynı HTTP vService'te Load Balancer condition'larıyla iki yönde çalışır. AGS'nin kendi ayarları Conditions kayıtlarından kurulur: AGS Activation Condition hangi isteklerin AGS kapsamına gireceğini, Flowchart'taki Decision Point akışın hangi dala gideceğini, Backend SSO koşulları kimlik bilgisinin hangi isteğe ekleneceğini belirler. Load Balancer tarafında ise AGS Condition kriteri (AGS username, AGS user groups, AGS user attribute gibi değişkenlerle) ve hazır IF is an authenticated AGS user koşulu, vService'in Actions ve Conditional Backend Services kurallarında ve WAF'ın koşul alanlarında AGS oturumuna göre karar verdirir. WAF ile birlikte açıkken AGS Root Path altındaki giriş ve doğrulama sayfaları WAF denetimine girmez; oturumu doğrulanmış kullanıcının istekleri ise WAF'ta tam denetlenir.
Nasıl Çalışır?
AGS oturumu istek işlenmeye başlarken doğrulanır; bu yüzden AGS'ye bağlı koşullar sonraki bütün aşamalarda kullanılabilir. Aşamaların sırası ve WAF ile ilişkisi: WAF ile AGS birlikte kullanıldığında sıralama nasıldır?
- AGS oturumu belirlenir: İstemcinin geçerli bir AGS oturumu olup olmadığı ve oturumdaki kullanıcı bilgileri hazırlanır.
- WAF taraması: AGS Root Path ile başlamayan istekler, oturum durumundan bağımsız olarak WAF'ta taranır.
- Actions: AGS condition içeren aksiyonlar bu aşamada değerlendirilir; isteği sonlandıran bir aksiyon AGS'nin giriş yönlendirmesinden önce çalışır.
- Hedef seçimi: AGS kapsamındaki ve oturumu olmayan istek giriş akışına alınır. Oturumu olan istekler için Conditional Backend Services kuralları değerlendirilir; kullanıcı grubuna göre farklı Kurum Servisi seçilebilir.
TR7'de AGS, Condition ve WAF
| Yön | Nerede | Ne için |
|---|---|---|
| Condition → AGS | AGS Activation Condition (Flowchart → General Settings) | Yalnızca belirli path ya da host'ları AGS'ye almak; koşula uymayan istekler AGS'ye uğramadan Kurum Servisine gider. AGS Root Path altındaki istekler koşuldan bağımsız olarak AGS'ye gider. |
| Condition → AGS | Decision Point adımı | Akışı koşula göre YES / NO dallarına ayırmak (ör. iç ağdan gelene ikinci faktör sormamak) |
| Condition → AGS | Backend SSO Condition, Backend session lost condition, Backend logout condition | Kimlik bilgisini yalnızca belirli isteklere eklemek; Kurum Servisi yanıtına göre oturumu izlemek |
| AGS → Load Balancer | Actions + AGS condition | Kullanıcıya ya da gruba göre header ekleme, yönlendirme, engelleme |
| AGS → Load Balancer | Conditional Backend Services + AGS condition | Gruba göre farklı Kurum Servisine yönlendirme (ör. admins grubunu yönetim sunucularına) |
| AGS → WAF | WAF koşul alanları + IF is an authenticated AGS user | Oturum açmış kullanıcıya farklı engelleme sayfası göstermek gibi WAF kararları |
AGS condition yalnızca HTTP vService'te kullanılır; AGS etkin olmayan bir vService'te tanımlanabilir ancak değerlendirilecek oturum olmadığından hiçbir zaman eşleşmez.
Sık Karıştırılan Noktalar
- "Oturumu olmayanları girişe göndermek için aksiyon gerekir." Bu yönlendirmeyi AGS kendisi yapar. Unless is an authenticated AGS user koşuluyla ayrıca engelleme aksiyonu kurulursa aksiyonun koşulunda AGS Root Path hariç tutulur; aksi hâlde giriş sayfalarına gelen istekler de aksiyona girer.
- "AGS'de oturum açmış kullanıcıyı WAF denetlemez." Doğrulanmış kullanıcının istekleri de WAF'ta tam denetlenir; WAF ile AGS birbirinin yerine geçmez. IF is an authenticated AGS user koşulu WAF'ın Whitelist Condition alanına konursa oturum açmış kullanıcıların bütün istekleri WAF denetiminden çıkar.
- "AGS Activation Condition dışında kalan istekler korumasızdır." Bu istekler yalnızca AGS'ye uğramaz; WAF ve vService'in diğer kuralları bu isteklere de uygulanır.
- "Gruba göre yönlendirme için ayrı bir AGS ayarı gerekir." Grup bilgisi oturumdadır; AGS user groups değişkeniyle kurulan AGS condition, Conditional Backend Services ya da Actions kuralında kullanılır.
Dokümantasyonda nasıl yapılır
İlgili sorular
- WAF ile AGS birlikte kullanıldığında sıralama nasıldır?
- AGS Activation Condition ve AGS Root Path neyi belirler?
- Flowchart'taki Decision Point ile Switch arasındaki fark nedir?
- Bir istek TR7 içinde hangi aşamalardan geçerek backend'e ulaşır?
- Smart Variable nedir; condition ve action'larda nasıl kullanılır?
