29 Mayıs 2012 Salı

Spring Security Filtereleri

Aşağıda Spring Security ve Http'yi beraber kullanırken aldığım notlarım var.

Spring Security Filtre zinciri aşağıdaki gibi.
 UsernamePasswordAuthenticationFilter

UserNamePasswordAuthenticationFilter  /j_spring_security_check adresi ile biten URL'lere cevap veriyor. Giriş için kullandığımız form  bilgileri kullanıcından aldıktan sonra "/j_spring_security_check?j_username=guest&j_password=guest" formatında POST ederse bu filtre devreye girer ve AuthenticationManager sınıfını kullanarak kimlik doğrulama yapar.

DefaultLoginPageGeneratingFilter

DefaultLoginPageGeneratingFilter eğer xml dosyasında <form-login login-page="/login.jsp" /> gibi bir satır yoksa default olarak bir login sayfası yaratn filtredir. Daha detaylı açıklamayı Announcing: Spring Security 3: The Book sayfasında bulmak mümkün.

SecurityContextHolderAwareRequestFilter

SecurityContextHolderAwareRequestFilter filtresi HttpServletRequest arayüzünün gerektirdiği isUserInRole() gibi bazı metodları Spring'in Authentication nesnesine yönlendirir.

10 Mayıs 2012 Perşembe

POSIX Sinyalleri

Bu konu çok karmaşık. İleride değinmek üzere bazı notlarımı ekliyorum.
Bu konu ile ilgili olarak Linux Sinyalleri başlıklı yazıya da göz atabilirsiniz.

sigtimedwait
Bu metod için man sayfası burada.
sigset_t _fSigMask; // beklenilen sinyaller

sigemptyset(&_fSigMask);
sigaddset(&_fSigMask, SIGUSR1);
sigaddset(&_fSigMask, SIGSEGV);

int nSig;
struct timespec tmTimeout = { nSec, nNanoSec }; // bekleme süresi
sigtimedwait(&fSigMask, &nSig, &tmTimeout);
sigwait
Bu metod için man sayfası burada. How to make thread synchronization without using mutex, semorphore, spinLock and futex? sorusunda threadler arasında klasik mekanizmaları kullanmadan senkronizasyon yapılmasına dair verilen cevaplarda hep sigwait metodu kullanılıyor.