Ana içeriğe geç

Güvenlik Olayları (Security Events)

bilgi

Yönetim → Denetim & Uyumluluk → Güvenlik Olayları yolunu izleyerek bu ekrana erişebilirsiniz.

İki Sekme

Ekran iki sekmeden oluşur ve sekmeler yalnızca hangi istekleri kapsadıkları bakımından ayrılır. Filtreler, kolonlar ve yetki kuralı ikisinde de aynıdır.

SekmeKapsamıKoleksiyonVarsayılan olarak kaydedilir mi
API GüvenliğiYalnızca bir politikanın engellediği veya hatayla sonuçlanan isteklerlog_apisecurityeventEvet, her zaman
API ErişimiAğ geçidinden geçen her istek, başarılılar dâhillog_apiaccessHayır — bkz. API Erişimi

Sekme değiştirdiğinizde filtreleriniz korunur; böylece aynı tarih aralığı ve API Proxy ile iki görünümü karşılaştırabilirsiniz. Değişen tek filtre Sonuç'tur: Başarılı değeri yalnızca API Erişimi sekmesinde sunulur ve seçiliyken API Güvenliği sekmesine döndüğünüzde sizin için temizlenir — çünkü API Güvenliği hattında eşleşecek başarılı istek yoktur.

Güvenlik Olayları API Güvenliği sekmesi: filtre çubuğu ve sonuç tablosu
Güvenlik Olayları — API Güvenliği sekmesi

Genel Bakış

Güvenlik Olayları ekranının API Güvenliği sekmesi, ağ geçidinde engellenen veya hata veren her HTTP, gRPC ve WebSocket isteğini kaydeder. Başarıyla tamamlanan istekler bu sekmede hiçbir zaman görünmez; onlar, hat açıksa API Erişimi sekmesinde yer alır.

Her iki sekmedeki her kayıt gövdesizdir — istek/yanıt gövdesi, header'lar, sorgu dizesi ve herhangi bir gizli değer hiçbir zaman tutulmaz:

  • Yol kolonunda sorgu dizesi bulunmaz ve değer 512 karakterle sınırlıdır.
  • İstemci IP kolonu yalnızca isteğin doğrudan bağlandığı adresi taşır; iletilen başlıklar (X-Forwarded-For vb.) dikkate alınmaz.
  • İstek herhangi bir kimlik bilgisi taşımıyorsa Kimlik Bilgisi kolonunda anonymous gösterilir.
  • Çözülen kimlik bilgisinin kendisi canlı bir gizli değer gibi görünüyorsa — bir bearer token, bir JWT veya benzer opak-token-şekilli bir değer, ki bu bir Kota veya Hız Sınırlama politikası sınırını bir header üzerinden uyguladığında ortaya çıkabilir — Kimlik Bilgisi kolonu ham değer yerine kısa, tek yönlü bir özet (hash) gösterir; böylece yakalanmış bir gizli değer bir Güvenlik Olayları kaydından asla geri okunamaz. Düz bir kullanıcı adı veya adlandırılmış bir API anahtarı bundan etkilenmez ve olduğu gibi gösterilir.

Kategoriler

Her kayıt, isteği durduran veya hataya yol açan durumun ailesine göre aşağıdaki kategorilerden birine atanır:

KategoriNe zaman atanır
Kimlik DoğrulamaKimlik doğrulama hatası — Basic Auth, API Key gibi genel kimlik doğrulama kontrolleri, OIDC, OAuth2, SAML, JOSE token doğrulaması, karşılıklı TLS (mTLS) istemci sertifikası veya WS-Security kimlik doğrulaması başarısız olduğunda.
YetkilendirmeYetkilendirme hatası — rol/grup kontrolü veya istemci engelleme (banner) kuralı isteği durdurduğunda.
KotaBir kota politikası aşıldığında.
Hız SınırlamaHız sınırlama devreye girdiğinde — endpoint hız sınırı ve AI token hız sınırlama dahil.
Doğrulamaİçerik filtresi, mesaj boyutu sınırı, JSON/XML şema doğrulaması veya şifre çözme/imza doğrulaması başarısız olduğunda.
IP GüvenliğiIP beyaz/kara liste kuralı, izinli çalışma saatleri veya CORS kuralı isteği engellediğinde.
TehditBir AI koruma politikası (prompt koruması, veri sızıntısı önleme, döngü/konu koruması, bağlam bütünlüğü, groundedness, RAG enjeksiyon koruması veya kişisel veri maskeleme) isteği durdurduğunda.
YönlendirmeYönlendirme veya AI yönlendirme sırasında bir hata oluştuğunda.
Ağ GeçidiProxy yapılandırması, koşul değerlendirmesi, lisans veya ağ geçidinin iç işleyişiyle ilgili bir hata oluştuğunda.
DiğerYukarıdaki kategorilerin hiçbirine girmeyen politika hataları.
not

gRPC ve WebSocket isteklerinde hata tipi bilgisi taşınmaz; bu nedenle kategori kaba biçimde belirlenir — engellenen bir istek Diğer, hata veren bir istek Ağ Geçidi kategorisine düşer ve Hata Tipi kolonu boş kalır.

Sonuç

Her kayıt iki sonuçtan biriyle etiketlenir:

  • Başarılı — istek tamamlandı. Yalnızca API Erişimi sekmesinde görünür.
  • Reddedildi — bir güvenlik veya politika kuralı isteği durdurdu (örneğin kimlik doğrulama başarısız oldu, kota aşıldı veya IP listesi eşleşti).
  • Başarısız — istek işlenirken beklenmeyen bir hata oluştu (örneğin ağ geçidi iç hatası veya yönlendirme hatası).

Kolonlar

KolonAçıklama
ZamanOlayın gerçekleştiği zaman damgası.
KategoriOlayın ait olduğu güvenlik kategorisi (yukarıdaki tabloya bakınız).
Hata Tipiİsteği durduran veya hataya yol açan spesifik hata tipi. HTTP isteklerinde her zaman doldurulur; gRPC ve WebSocket isteklerinde boştur.
SonuçBaşarılı (yalnızca API Erişimi sekmesinde), Reddedildi veya Başarısız.
Durum Koduİsteğe verilen HTTP/gRPC/WebSocket durum kodu.
Protokolİsteğin protokolü — HTTP, gRPC veya WebSocket.
MetotHTTP metodu (HTTP isteklerinde) veya gRPC metot adı; WebSocket isteklerinde boştur.
Yolİsteğin yolu. Sorgu dizesi hiçbir zaman kaydedilmez ve yol 512 karakterle sınırlıdır.
API Proxyİsteğin yönlendirildiği API Proxy.
İstemci IPİsteği gönderen istemcinin doğrudan bağlandığı adres.
Kimlik Bilgisiİsteğin taşıdığı kimlik bilgisi veya istemci anahtarı; istek herhangi bir kimlik bilgisi taşımıyorsa anonymous gösterilir. Çözülen kimlik bilgisi bir isim yerine token-şekilliyse ham değer yerine kısa bir özet (hash) olarak gösterilir — yukarıya bakınız.
Correlation IDAynı isteğe ait diğer kayıtlarla eşleştirme için kullanılan kimlik.
Gecikme (ms)İsteğin işlenme süresi (milisaniye).

Filtreleme

Sayfanın üst tarafındaki filtre bölümünden aşağıdaki kriterlerle sonuçları daraltabilirsiniz: tarih aralığı, kategori (birden çok seçilebilir), hata tipi, API Proxy, istemci IP, kimlik bilgisi, durum kodu, protokol ve sonuç.

Tarih alanları saat bilgisi de taşır. Takvimden bir gün seçtiğinizde başlangıç alanı 00:00:00, bitiş alanı 23:59:59 olarak gelir; böylece seçtiğiniz günler bütünüyle kapsanır. Belirli bir zaman aralığı istiyorsanız saat değerlerini elle değiştirebilirsiniz.

Serbest metin filtreleri — Hata Tipi, İstemci IP ve Kimlik Bilgisi — tam eşleşme ile çalışır, parça eşleşmesiyle değil: 203.0.113 hiçbir kayıt getirmez, 203.0.113.7 o adrese ait kayıtları getirir.

Özet (hash) olarak gösterilen bir kimlik bilgisini arama

Kimlik Bilgisi filtresi tam eşleşme olduğu için, token-şekilli bir kimlik bilgisini aramak token'ı değil özetini (hash) aramak demektir. Kaydın taşıdığı değeri kendiniz üretmek için kimlik bilgisinin SHA-256 özetini alın, onaltılık çıktının ilk 16 karakterini saklayın ve başına sha256: ekleyin.

Özetini aldığınız metin, Kimlik Bilgisi kolonunda ham hâliyle görünecek olan dizenin birebir aynısı olmalıdır; bu nedenle üç noktaya dikkat edin:

  • Şema önekini dahil edin. Bir Kota veya Hız Sınırlama politikası sınırını Authorization header'ı üzerinden uyguladığında kimlik bilgisi, başlığın tamamıdır — tek başına token değil, Bearer eyJ… biçimidir.
  • Kota ve Hız Sınırlama için URL-kodlanmış biçimi kullanın. Bu iki politika, sınırı uyguladıkları kimliği URL-kodlar; bu nedenle Bearer sonrasındaki boşluk kayda + olarak (Bearer+eyJ…), standart Base64 bir değerin + / = karakterleri ise %2B %2F %3D olarak ulaşır.
  • Baştaki ve sondaki boşlukları atın. Değer özeti alınmadan önce kırpılır.
# Linux: sha256sum | macOS: shasum -a 256

# Sınırını Authorization header'ı üzerinden uygulayan bir Kota/Hız Sınırlama politikası
# (URL-kodlanmış biçim — token-şekilli kimlik bilgisinde olağan durum):
printf '%s' 'Bearer+eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiIxIn0.sig' | sha256sum | cut -c1-16
# 6a6b046bb257973a → aranacak değer: sha256:6a6b046bb257973a

# Değerin kayda olduğu gibi ulaştığı diğer kaynaklar:
printf '%s' 'Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiIxIn0.sig' | sha256sum | cut -c1-16
# 09268e89ea3eb2a2 → aranacak değer: sha256:09268e89ea3eb2a2

Kaydın hangi biçimi taşıdığından emin değilseniz ikisini de deneyin; özet almanın maliyeti yoktur ve yalnızca biri eşleşebilir.

Detay Ekranı

Bu ekranda — iki sekmede de — satır bazlı bir detay görünümü yoktur. Her kayıt zaten gövdesiz olduğu için — istek/yanıt gövdesi, header'lar ve sorgu dizesi hiçbir zaman tutulmadığı için — tablodaki kolonlar kaydın taşıdığı tüm bilgiyi kapsar.

Kimlerin Erişebileceği

Sistem Yöneticisi ve Proje Yöneticisi rolündeki kullanıcılar tüm kayıtları görür. Diğer kullanıcılar yalnızca Denetim → Görüntüleme yetkisine sahip oldukları projelerin güvenlik olaylarını görebilir — bu, Denetim Kayıtları sayfasındaki kapsam kuralıyla aynıdır.

API Erişimi

API Erişimi sekmesi yalnızca ters gideni değil, ağ geçidinin işlediği her şeyi kapsar; bu yüzden "ne engellendi" değil "kim neyi ne zaman çağırdı" sorusunu yanıtlamak istediğinizde başvuracağınız sekmedir. Bu tamlığın bir bedeli vardır: istek başına bir satır yazılır, yani koleksiyon trafik hacminizle birlikte büyür.

Bu nedenle sekme varsayılan olarak kapalıdır ve sürüm yükseltmesinden sonra da kapalı kalır. Açmak için Yönetim → Sistem Ayarları → SIEM ve Log Yönlendirme → Hatlar yolunu izleyin ve API Erişimi satırındaki Apinizer veritabanında sakla anahtarını açın. Anahtar açılmadan önce onay ister; değişiklik sayfayı kaydettiğinizde uygulanır. Anahtar kapalıyken sekme boş kalır — hat bir SIEM hedefine yönlendiriliyor olsa bile, çünkü o ayrı bir ayardır.

Açmadan önce koleksiyona kısa bir saklama süresi tanımlayın: API Güvenliği için uygun olan 30 güne karşılık burada önerilen aralık 3-7 gündür.

ipucu

Engellenen veya hata veren bir istek iki sekmede birden görünür. Bu bilinçlidir: API Erişimi açık olsun ya da olmasın, API Güvenliği sekmesi temiz bir olay listesi olarak kalır. İki hattı da bir SIEM'e yönlendirdiğinizde çift sayımı nasıl önleyeceğiniz için bkz. SIEM ve Log Yönlendirme.

Güvenlik Olayları API Erişimi sekmesi: yerel saklama kapalıyken boş liste ve bilgi bandı
Güvenlik Olayları — API Erişimi sekmesi

Saklama

API Güvenliği olayları, Denetim ve Oturum kayıtları gibi Apinizer veritabanında her zaman saklanır; o sekme için yerel saklama kapatılamaz. API Erişimi olayları ise yalnızca kendi anahtarı açıkken yazılır (yukarıya bakınız).

Otomatik temizleme her ikisi için de isteğe bağlıdır ve varsayılan olarak kapalıdır:

açılabilir; her iki ekran da hem günlük hem saatlik temizleme görevini kapsar. Açıldığında varsayılan birim gündür; varsayılan değer API Güvenliği için 30, API Erişimi için 7 gündür.

Veri Saklama Profili ile İlişkisi

Bir proxy ya da proje Kalıcı Kayıt Yok (NO_PERSIST) profilindeyse, o proxy/proje kapsamındaki olay iki sekmenin hiçbirine ve SIEM hedefine yazılmaz — trafik logu ile aynı kapı uygulanır. Gövde Yok (NO_PAYLOAD) profili bu ekranı etkilemez; güvenlik olayları zaten gövde taşımadığı için bu profilin engellediği bir şey yoktur.

SIEM ile İlişki

Bu ekranda görüntülenen olaylar, isteğe bağlı olarak SIEM sisteminize de yönlendirilebilir: API Güvenliği sekmesi API Güvenliği hattı, API Erişimi sekmesi ise API Erişimi hattı olarak. Yapılandırma için SIEM ve Log Yönlendirme sayfasına bakınız; bu hat üzerinden yalnızca Apinizer JSON v2, CEF veya LEEF yük profilleri kullanılabilir. Bu hat için oluşturduğunuz bir hedef, varsayılan bir maskeleme profiliyle (TCKN, IBAN, kart numarası) başlar; kaydetmeden önce hedefin gizlilik tablosundan gözden geçirebilir ve düzenleyebilirsiniz.