User Authentication (On HTTP Request)
User Authentication (On HTTP Request) Aksiyonu Nedir?
User Authentication (On HTTP Request) aksiyonu, HTTP Basic Authentication mekanizması ile kullanıcı adı ve şifre doğrulaması yapar. Bu aksiyon, tarayıcıda bir giriş penceresi açarak kullanıcıdan kimlik bilgilerini ister.
Bu aksiyon yalnızca istek (request) aşamasında çalışır ve User Authentication koşulu ile birlikte kullanılması gerekir.
User Authentication (On HTTP Request) Nasıl Çalışır?
User Authentication (On HTTP Request), RFC 7617'de tanımlanan standart bir kimlik doğrulama mekanizmasıdır.
İşleyiş:
- İstemci, korunan kaynağa erişmeye çalışır.
- Sunucu
401 Unauthorizedyanıtı veWWW-Authenticatebaşlığı gönderir. - Tarayıcı, kullanıcıya giriş penceresi gösterir.
- Kullanıcı kimlik bilgilerini girer.
- Tarayıcı,
Authorizationbaşlığı ile isteği tekrar gönderir. - Sunucu kimlik bilgilerini doğrular.
Tarayıcıda HTTP Basic Authentication Giriş Penceresi
Güvenlik Uyarısı
HTTP Basic Authentication, kimlik bilgilerini Base64 ile kodlar ancak şifrelemez. HTTPS olmadan kullanıldığında kimlik bilgileri ağda görünür olur. Bu aksiyon her zaman HTTPS ile birlikte kullanılır.
Koşul ve Aksiyon İlişkisi:
| Bileşen | Rolü |
|---|---|
| User Authentication (On HTTP Request) Aksiyonu | Tarayıcıda giriş penceresini tetikler ve doğrulama yapar |
| User Authentication Koşulu | Geçerli kullanıcı adı/şifre çiftlerini tanımlar |
User Authentication (On HTTP Request) Aksiyonunun Önemi
HTTP Basic Authentication, basit ve hızlı erişim kontrolü için yaygın olarak kullanılır.
User Authentication (On HTTP Request) aksiyonu;
- Admin panellerini korur,
- Geliştirme/test ortamlarına erişimi kısıtlar,
- API endpoint'lerini basit authentication ile korur,
- Staging ortamlarını yetkisiz erişimden korur,
- Belirli sayfalara ekstra güvenlik katmanı ekler.
Bu nedenle User Authentication (On HTTP Request) aksiyonu, hızlı ve basit erişim kontrolü için pratik bir çözümdür.
Kullanılabildiği vService Tipleri
Çalışma Anı
Nasıl Eklenir?
Yeni bir User Authentication (On HTTP Request) Aksiyonu, TR7 web yönetim arayüzü üzerinden aşağıdaki adımlar izlenerek eklenebilir:
- Sol altta bulunan TR7 logosuna tıklanarak Configuration Menu açılır.
- Load Balancer → Actions → Add adımları takip edilir.
- Aksiyon için benzersiz ve açıklayıcı bir isim girilir.
- Action Type olarak User Authentication (On HTTP Request) seçilir.
- Aksiyona ait ilgili konfigürasyonlar yapılandırılır.
- Conditions sekmesinden aksiyonun hangi koşul/koşullarda devreye gireceği belirlenir.
Addbutonuna tıklanarak aksiyon eklenir.
Önemli
Bu aksiyon, User Authentication koşulu ile birlikte kullanılmalıdır. Bu koşulda, geçerli kullanıcı adı ve şifre kombinasyonları tanımlanır.
User Authentication (On HTTP Request) Aksiyonu Ekleme Formu
User Authentication (On HTTP Request) Aksiyonu Ekleme Formu
INFO
Hit Counter Varsayılan: Kapalı
Hit Counter, aksiyonun her çalışmasını sayar (aksiyonun kendi koşuluyla birlikte değerlendirilir; Deny gibi sonlandırıcı aksiyonlarda bile sayım kaybolmaz). Aksiyon bazlı hız ve toplamlar, vService panosundaki Action Hits sekmesinde ve canlı istatistik ekranında görüntülenir; listelerde ayrıca bir kolon olarak görünmez. Sayaç kümülatiftir; elle sıfırlama arayüzü yoktur: sayılan aksiyon kümesi değiştiğinde veya vService yeniden yüklendiğinde sıfırdan başlar, geçmiş ise panoda hız (hit/s) olarak korunur.
Bu aksiyonda sayaç, kimlik doğrulaması istenen (401 gönderilen) istekleri sayar; başarılı girişleri saymaz.
INFO
Set Variable on Hit
Aksiyon her çalıştığında değeri atanacak bir değişken adı girilebilir (isteğe bağlı; varsayılan boş). Ad; harf, rakam ve alt çizgiden oluşabilir (en fazla 32 karakter). Aksiyon tetiklendiğinde değişken 1 değerine atanır ve aynı vService'teki diğer koşul ve aksiyonlarda %TR7VAR(ad) akıllı değişkeniyle okunarak zincirleme davranışlar kurulabilir.
INFO
Realm Varsayılan: Restricted
HTTP Basic Authentication penceresinde görüntülenecek alan adı (realm) bilgisi girilir. Bu metin, kullanıcıya hangi alana giriş yaptığını belirtir.
Örnek Değerler
Admin Panel: Yönetim paneli içinStaging Environment: Test ortamı içinAPI Access: API erişimi içinProtected Area: Korunan alan için
İpucu
Realm değeri, tarayıcının kimlik bilgilerini cache'lemesinde kullanılır. Aynı realm için bir kez giriş yapıldığında, tarayıcı oturumu boyunca tekrar sormaz.
INFO
Conditions
Bu alanda, ilgili aksiyonun hangi koşul veya koşullar sağlandığında devreye gireceği tanımlanır.
Bir veya birden fazla koşul eklenerek, and/or yapısı ile davranışın hedefli ve kontrollü şekilde uygulanması sağlanabilir.
Koşullar hakkında detaylı bilgi Conditions sayfasında yer alır.
Kullanıcı Doğrulaması Koşulu Gereklidir
Bu aksiyonun çalışması için User Authentication koşulunun mutlaka eklenmesi gerekir. Bu koşulda, geçerli kullanıcı adı ve şifre kombinasyonları tanımlanır.
Diğer koşullarla birlikte kullanılarak sadece belirli path'ler veya IP adresleri için doğrulama yapılabilir.
INFO
Form Butonları
Add
Add butonuna tıklanarak aksiyon ekleme işlemi tamamlanır.
Add & Repeat
Add & Repeat butonu ile aksiyon ekleme işlemi tamamlanır ve farklı konfigürasyonlarla ilgili pencereden çıkılmadan yeni bir aksiyon daha eklenebilir.
Aksiyon Eklendi
Parolalar yapılandırmada açık metin tutulur
Kullanıcı adı ve parolalar, koşul tanımında girildiği biçimde şifrelenmeden saklanır ve arayüzde de maskesiz görünür. Bu yöntem, yalnızca düşük hassasiyetli erişim kısıtlamaları için uygundur; kurumsal kimlik doğrulaması gereken servislerde kullanılmamalıdır.
Ayrıca Authorization başlığı Kurum Servisine olduğu gibi iletilir; uygulama tarafında bu başlığın işlenmesi gerekiyorsa dikkate alınmalıdır.
Deneme sınırı yoktur
Hatalı kimlik bilgisi girildiğinde istek yeniden sorulur; deneme sayısı sınırlanmaz ve hesap kilitleme yapılmaz. Kaba kuvvet denemelerine karşı bu aksiyon, Set Variable on Hit ile işaretlenip Quarantine aksiyonuyla birlikte kullanılmalıdır.
Koşul tanımlanmazsa aksiyon çalışmaz
Bu aksiyon User Authentication koşulu ile birlikte kullanılmak üzere tasarlanmıştır; kullanıcı adı ve parolalar o koşulda tanımlanır.
Koşul tanımlanmadan kaydedilirse kural yapılandırmaya hiçbir zaman çalışmayacak biçimde yazılır ve uyarı verilmez. Realm alanı boş bırakılırsa tarayıcı penceresinde Restricted görüntülenir.
Operasyonel ve Güvenli Kullanım Önerileri
- Her Zaman HTTPS Kullanın. HTTP Basic Authentication kimlik bilgilerini şifrelemez. HTTPS olmadan kullanmak, kimlik bilgilerinin ağda açık metin olarak iletilmesine neden olur.
- Güçlü şifreler kullanılır. Kullanıcı Doğrulaması koşulunda tanımlanan şifreler güçlü olmalıdır; brute-force saldırılarına karşı koruma için karmaşık şifreler tercih edilir.
- Rate limiting ile birlikte kullanılır. Brute-force saldırılarına karşı aksiyon, Quarantine aksiyonuyla birlikte uygulanır; bu, başarısız giriş denemelerini sınırlar.
- Hassas Sistemler için Yeterli Değil. HTTP Basic Authentication, basit koruma sağlar. Hassas sistemler için AGS - AAM (Application Access Management) veya daha gelişmiş kimlik doğrulama sistemleri tercih edilmelidir.
- Realm anlamlı tutulur. Realm değeri, kullanıcıya neye giriş yaptığını bildirir; açıklayıcı ve anlamlı realm değerleri kullanılır.
