21 Ocak 2012 Cumartesi

SecurityContext'e filtrelerle erişim sorunu

Karşılaştığım soruna gelen çözüm şu şekilde. Unutmayayım diye aynen yapıştırdım;

SecurityContext nesneleri HTTP request’leri boyunca ThreadLocal’de tutuluyor. Request sonlanınca, ilgili SecurityContext ThreadLocal’den silinip bir sonra request’te tekrar ThreadLocal’e alınıyor. Bunun sebebi ise request’in sonlandığı thread’in, servlet container’in thread pool’una alınıp başka bir request’i ele alması ihtimali. Eski SecurityContext ThreadLocal’den silinmezse thread’de çalışan yeni request yanlış SecurityContext nesnesine erişir.


Spring Security filtrelerini kapattığım bir URL’e sahip sayfada, SecurityContext’e erişmeye çalıştım. Filtreler kapalı olduğundan SecurityContext nesnesine ThreadLocal’e alınmıyordu ve erişmeye çalıştığımda null dönüyordu. Buna dikkat etmek gerekiyor.

kaynak : http://www.basrikahveci.com/securitycontexte-ulasmak/

Paylaşım


0 Yorum

Blogger tarafından desteklenmektedir.