API Sessions Kurulumu
¶
API Sessions, oturum tanımlaması için yerleşik kuralları içerir ve çalışmaya başlamak için sadece etkin Wallarm node gerektirir. Dilerseniz, bu makalede açıklandığı gibi ihtiyaçlarınıza göre API Sessions’u detaylandırabilirsiniz.
Oturum Bağlamı¶
API Sessions’daki bağlam, oturumları mantıksal gruplara ayırmak ve oturum etkinliği hakkında daha derin bilgiler sağlamak için yanıt verilerine ek bilgiler ve meta veriler ekleyerek istek verilerini zenginleştiren bilgidir. Bağlam yapılandırması, her oturumla ilişkilendirilecek hangi yönlerin veya ek verilerin takip edileceğini belirtmenizi sağlar.
İstek ve yanıt parametrelerine ek ekleyerek, oturum bağlamını ayarlayın; oturumları hassas iş akışları ile ilişkilendirin ve kullanıcı ile kullanıcı rolü tanımlaması için kullanılabilecek parametreleri vurgulayın.
Ek Parametreler¶
API Sessions içinde, varsayılan olarak oturum içerisindeki istek detayları şunları içerir:
-
Oturum gruplaması için çalışan, sizin veya yerleşik setteki parametre.
-
Kötü niyetli istekler için - tam istek içeriği.
Oturum içeriğini; aktörün ne yaptığını ve yanıtın ne olduğunu anlamanız için gerekli olan her iki istek ve ilgili yanıtlar için ek (bağlam) parametreleri ekleyebilirsiniz. Bunu yapmak için, Wallarm Console → API Sessions → Session context parameters bölümüne bu parametreleri ekleyin. Eklendikten sonra, Wallarm bunları Wallarm Cloud’a aktarır ve oturum isteklerinizin detaylarında Wallarm Console’da gösterir.
Kullanıcılar ve Roller¶
Oturum kullanıcı adlandırması ve rol tanımlaması için kullanılması gereken oturum parametrelerini vurgulayabilirsiniz. Bunu yapmak için, Wallarm Console → API Sessions → Session context parameters bölümüne girip parametrenizi ekleyin ve Type kısmından User
veya Role
seçeneğini seçin.
Kullanıcı ve onun rolü tanımlaması için kullanılacak parametreleri yapılandırdıktan sonra, bu parametreler oturumlar için doldurulmaya başlanır. Oturumları kullanıcılar ve rollerine göre filtreleyebilirsiniz.
Oturum Gruplama¶
Wallarm, uygulama trafiğinizdeki istekleri, istek ve/veya yanıtların seçilen header/parametrelerinin eşit değerlerine dayanarak kullanıcı oturumlarına gruplar. Yapılandırmada, bu parametreler gruplama anahtarları olarak işaretlenmiştir. Gruplama anahtarlarının nasıl çalıştığını örnekte görebilirsiniz.
Varsayılan olarak, oturumlar bu parametrelerin yerleşik seti ile tanımlanır (Wallarm Console’da gösterilmez). Mantık, PHPSESSID
veya SESSION-ID
gibi en yaygın tanımlama parametrelerini denemek, çalışmazsa - istek kaynak IP ve user-agent
kombinasyonuna (veya user-agent yoksa en azından IP’ye) dayalı oturum oluşturmaktır.
Uygulamalarınızın mantığına dayalı olarak kendi tanımlama parametrelerinizi ekleyebilirsiniz. Bunu yapmak için, Wallarm Console → API Sessions → Session context parameters bölümüne gidip istek veya yanıt parametrenizi ekleyin ve bunun için Group sessions by this key seçeneğini işaretleyin.
API Abuse Prevention tarafından bot tespitine etkisi
Wallarm'ın API Abuse Prevention'ı, kötü niyetli bot tespiti için oturumları kullanır. Uygulamalarınızın mantığına dayalı olarak kendi oturum tanımlama parametrelerinizi eklemek, hem oturum tespitini hem de API Abuse Prevention’ın bot tespitini daha hassas hale getirir. Ayrıntılar için bakınız details.
Birden fazla gruplama anahtarı ekleyebilirsiniz; bunlar belirtilen sırayla denenir – bir sonraki, önceki çalışmazsa denenir. Sıralamayı değiştirmek için sürükleyin. Kendi anahtarlarınız yerleşik olanlardan her zaman önce denenir.
Mask sensitive data kuralından etkisi
Bir parametrenin gruplama anahtarı olarak çalışabilmesi için, Mask sensitive data kuralından etkilenmemesi gerekir.
Gruplama anahtarlarının nasıl çalıştığına dair örnek
Diyelim ki, response_body →
json_doc → hash → token
parametresinde belirli bir <TOKEN>
döndüren bir login rotanız var. İleriki isteklere, bu <TOKEN>
, get → token
veya post → json_doc → hash → token
şeklinde kulanılır.
Yanıt gövdesi, get ve post istekleri için gruplama anahtarları olarak kullanılacak 3 parametre yapılandırabilirsiniz. Bunlar aşağıdaki sırayla denenir (bir sonraki, önceki çalışmazsa denenir):
-
response_body → json_doc → hash → token
-
get → token
-
post → json_doc → hash → token
-
(yerleşik set, önceki hiçbirisi çalışmazsa kullanılacak)
İstekler:
-
curl
example.com -d '{in: 'bbb'}'
ile yanıt'{token: aaa}'
→ oturum "A" (gruplama anahtarı #1 çalıştı) -
curl
example.com -d '{in: 'ccc'}' '{token: 'aaa'}'
ile token içermeyen yanıt → oturum "A" (gruplama anahtarı #3 çalıştı)
Aynı parametre değeri aaa
, bu istekleri tek bir oturum altında gruplar.
Veri Koruması¶
API Sessions için, node'dan Cloud'a Wallarm, yalnızca sizin tarafından seçilen parametreleri aktarır. Bu parametreler hassas veri içeriyorsa, aktarım öncesinde mutlaka hash’leyin. Hashleme, gerçek değeri okunamaz hale getireceğinden, parametrenin varlığı ve belirli fakat bilinmeyen değerin analize sınırlı bilgi sunacağını unutmayın.
Hassas parametreleri hash’lemek için, Wallarm Console → API Sessions → Session context parameters bölümünde bunları ekledikten sonra, Hashing (secret) seçeneğini seçin.
Wallarm, seçilen parametreleri aktarmadan önce hash’ler.
Analiz Edilen Trafik¶
API Sessions, Wallarm node’unun koruması etkin olan tüm trafiği analiz eder ve oturumlara düzenler. Seçili uygulamalara/hostlara analiz sınırlaması talebinde bulunmak için Wallarm support team ile iletişime geçebilirsiniz.
Saklama Süresi¶
API Sessions bölümü, son bir haftaya ait oturumları saklar ve gösterir. Daha eski oturumlar, optimal performans ve kaynak tüketimi sağlamak amacıyla silinir.