Trafiği dizin kullanıcılarına bağlama
Denetlenen trafiğin IP adresi yerine iş istasyonundaki kişiyi adlandırması için User-ID ajanını dağıtın.
- Sürüm: 0.4
- Özellik: icap
- Rol: admin_user
- Tür: görev
Denetlenen bir istek bir IP adresinden gelir. Kullanıcı kimliği atfı, o adresi bir dizin
kullanıcı adına dönüştürür; böylece Tüm Tespitler ekranındaki bir tespit 10.0.5.42 yerine bir
kişiyi adlandırır. Sorguyu, etki alanı denetleyicilerinizden gelen oturum açma olaylarıyla beslenen
küçük bir Go hizmeti olan cid-userid-agent yanıtlar.
Neye ihtiyacım var?
- Lisans
- Herhangi biri
- Rol
admin_user
Ön koşullar
- Trafik CID222'ye satır içi vekil ya da üçüncü taraf bir güvenli web ağ geçidi üzerinden zaten ulaşıyor. Bu sayfa denetlenen trafiği kişiye bağlar; hiçbir trafiği yakalamaz.
- Güvenlik olay günlüğüne etkileşimli oturum açmaları (olay 4624) kaydeden en az bir Windows etki alanı denetleyicisi.
- O denetleyicide, güvenlik olay günlüğünü okuyabilen bir hizmet hesabı ya da zamanlanmış görev kimliği.
- Etki alanı denetleyicisinden cihaza ya da ajanı çalıştırdığınız yere TCP 8090'ın açık olması.
- Kendinizin üreteceği yüksek entropili bir paylaşılan jeton — ajanın varsayılan bir kimlik bilgisi yoktur.
Cihaz bir isteği kimin gönderdiğine nasıl karar verir
Cihaz, göndereni sabit bir sırayla çözümler ve ilk isabeti alır:
| Sıra | Kaynak | Nereden gelir |
|---|---|---|
| 1 | Ağ geçidinin verdiği kullanıcı adı | ICAP'te X-Authenticated-User, HTTP çağrısında authenticatedUser |
| 2 | User-ID ajanı | Bu sayfa. Etki alanı denetleyicilerinizden gerçek zamanlı oturum açma verisi |
| 3 | Elle atıf tablosu | Panelde sürdürdüğünüz CIDR–etiket satırları; en uzun önek kazanır |
| 4 | Kayıtlı eklenti filosu | Son bir saat içinde aynı adresten kalp atışı gönderen bir tarayıcı cihazı |
Dördü de ıskaladığında olay kaynak adresini korur ve akışta bir uzun tire olarak görünür. Şu anda oturum açmış kişiyi adlandıran tek adım 2. adımdır; elle sürdürdüğünüz tablonun önünde olmasının nedeni budur.
Warning
Ajan bir oturum için değil, bir adres için yanıt verir. Paylaşılan iş istasyonları, NAT ve CGNAT adresi kimlik saymayı bozar; ev ağındaki bir dizüstü bilgisayarın ise hiç kullanışlı bir adresi yoktur. Atıf, yalnızca bir adresin bir kişi anlamına geldiği bir ağda kanıt düzeyindedir.
Ajanı dağıtın
Paylaşılan jetonu üretin
Rastgele bir dizgi üretin ve yapılandırma yönetiminizin okuyabileceği bir yerde tutun:
Bu tek değer iki yönü de doğrular — oturum açma olaylarını yazan etki alanı denetleyicisi betiğini ve sorguları okuyan cihazı.
Ajanı cihazda başlatın
Jetonu cihazın .env dosyasına ekleyin, sonra hizmeti compose profiliyle başlatın:
Konteyner 8090 portunu dinler ve yalnızca geri döngü arayüzünde yayımlanır. Başladığını
doğrulayın:
Warning
AGENT_PROTECT_READS değeri true olduğunda ajan, bir jeton yapılandırılana kadar okuma
hizmeti vermeyi reddeder — açık bir porta düşmek yerine 503 yanıtı verir. Jetonu aynı
değişiklikte ayarlayın.
Ağ geçidini ajana yönlendirin
Bunları nestjs-core üzerinde ayarlayın ve yeniden başlatın:
Açılışta ağ geçidi, URL ve zaman aşımıyla birlikte UserIdAgent enabled günlükler.
USERID_AGENT_URL olmadan istemci etkisizdir, hiç ağ çağrısı yapmaz ve günlük satırı bunu
söyler.
Yolu statik bir girdiyle kanıtlayın
Active Directory'yi işin içine katmadan önce bilinen bir yanıt tohumlayın. Ajan, adres–kullanıcı satırlarından oluşan bir JSON dosyasını okur ve her 30 saniyede bir yeniden okur:
USERID_AGENT_STATIC_FILE değişkenini dosyaya yönlendirin, sonra doğrudan ajana sorun:
Yanıt, kullanıcı adını ve onu sağlayan kaynağı taşır. Iskalama 404 döndürür.
Toplayıcıyı bir etki alanı denetleyicisine kurun
Ajanın dağıtımındaki examples/dc-agent.ps1 dosyasını denetleyiciye kopyalayın — örneğin
C:\ProgramData\cid-core\dc-agent.ps1 konumuna — ve bunu açılışta başlayan, güvenlik olay
günlüğünü okuyabilen bir kimlikle çalışan ve arıza durumunda her dakika yeniden başlayan bir
zamanlanmış görev olarak kaydedin.
Betik, güvenlik olayı 4624'e abone olur ve yalnızca etkileşimli, ağ, kilit açma ve uzak etkileşimli oturum açmaları iletir. Makine hesapları ve yerleşik hizmet kimlikleri süzülür; böylece yoğun bir denetleyici ajanı boğmaz.
Toplayıcıya jetonunu verin
Zamanlanmış görevin ortamında CID_USERID_AGENT_TOKEN değerini ayarlayın ve betiğin ajan
URL'sini cihazınıza yönlendirin:
Jeton eksik olduğunda betik hemen bir hatayla çıkar; böylece yanlış yapılandırılmış bir görev sessizce kimlik doğrulamasız çalışmak yerine görünür biçimde başarısız olur.
Bir oturum açmanın ne kadar süre sayılacağını seçin
Kerberos bilet ömrünüz farklı değilse yaşam süresini 28800 saniyelik varsayılanında bırakın.
Sekiz saat, varsayılan bilet ömrüyle örtüşür; böylece önbelleklenmiş bir girdi, anlattığı oturum açmanın anlamını yitirdiği zamana yakın bir anda süresi dolarak düşer. Daha kısa bir değer daha çok atıfsız olay üretir; daha uzun bir değer paylaşılan bir masayı ilk kullanana bağlar.
Doğrulama
- Bir iş istasyonunda bir etki alanı kullanıcısıyla oturum açın, sonra ajana o iş istasyonunun adresini sorun. Kullanıcının adını ve kalan yaşam süresini döndürür.
- Aynı iş istasyonundan satır içi vekil üzerinden yapay zeka trafiği gönderin. Tüm Tespitler ekranını açın ve satırın bir uzun tire göstermek yerine kullanıcıyı adlandırdığını doğrulayın.
- Ajanın
/statusuç noktasını sorgulayın. Etkin sağlayıcıları ve önbellek boyutunu listeler; böylece "denetleyici göndermiyor" ile "cihaz sormuyor" durumlarını ayırt edebilirsiniz. - Bir adrese ait eşlemeyi
/cache/<ip>adresine birDELETEile kaldırın ve o adres için sonraki olayın elle atıf tablosuna düştüğünü doğrulayın.
Başarısız olursa
- Her olay hâlâ atıfsız ve ağ geçidi günlüğü
UserIdAgent disableddiyor —nestjs-coreüzerindeUSERID_AGENT_URLayarlanmamıştır. İstemci bu durumda hiç ağ çağrısı yapmaz. - Ajan her okumaya 503 yanıtı veriyor —
AGENT_PROTECT_READSetkin amaAGENT_AUTH_TOKENyoktur. Bu, bilinçli olarak kapalı biçimde başarısızlık davranışıdır: jetonu ayarlayın ya da korumayı kapatın. - Oturum açtığını bildiğiniz adresler için sorgular 404 dönüyor — etki alanı denetleyicisi betiği iletmiyordur. Görevin çalıştığını, jetonun eşleştiğini ve denetleyicinin cihazdaki TCP 8090'a erişebildiğini denetleyin.
- Atıf bazı kullanıcılarda çalışıyor bazılarında çalışmıyor — betik yalnızca 2, 3, 7 ve 10 numaralı oturum açma türlerini iletir. Hizmet, toplu iş ve önbelleklenmiş oturum açmalar tasarım gereği süzülür ve hiçbir girdi üretmez.
- Bütün bir alt ağ tek bir ada çözümleniyor — istediğinizden geniş bir elle atıf satırınız vardır. Ajan tablonun önünde olduğundan bu, yalnızca ajanın yanıtı olmadığı yerde görünür.
- Sorgu, denetime gecikme ekliyor — ekleyemez. İstemci
USERID_AGENT_TIMEOUT_MSsüresinde (varsayılan 250 ms) vazgeçer ve bir alt kaynağa düşer; bir ajan arızası hiçbir zaman bir kararı engellemez.
Bilinen eksikler
- LDAP sağlayıcısı bir taslaktır.
USERID_AGENT_LDAP_URLve arkadaşları dizine bağlanır ve bağlanmayı doğrular, ancak ajan önbelleklenmiş girdileri henüz görünen ad ya da departman bilgisiyle zenginleştirmez. Gerçek zamanlı atıf, etki alanı denetleyicisi betiğinden gelir; çünkü Active Directory canlı adres–oturum bağlarını LDAP üzerinden sunmaz. - Mobil ya da BYOD atfı yoktur. Yönetilmeyen bir cihazda gözlenecek bir oturum açma yoktur.
- Etki alanı denetleyicisi betiği bir iskelettir. Hız sınırlaması, geri çekilmeli yeniden deneme ve yapılandırılmış günlükleme, örnek okunabilir kalsın diye bilinçli olarak dışarıda bırakılmıştır. Başında kimse olmadan üretimde kullanmadan önce sıkılaştırın.
Sonraki adımlar
- Satır içi vekil — olaylarını bu sayfanın kişiye bağladığı yakalama yolu.
- Uç nokta ajanı — kurulu bir ajan bedeliyle, cihazı kurumsal ağın dışına kadar izleyen atıf.
- LDAP / Active Directory yapılandırma — bu sayfadan ayrıdır: panel oturum açmasının kimliğini doğrular, trafiği kişiye bağlamaz.
Son güncelleme