Spring Security Temelleri
Spring Security, kimlik doğrulama, yetkilendirme, SecurityFilterChain, UserDetailsService, PasswordEncoder
1Spring Security nedir?
Spring Security nedir?
Cevap
Spring Security, Spring uygulamaları için kimlik doğrulama ve yetkilendirme özellikleri sağlayan bir güvenlik framework'üdür. Uygulamaları yaygın saldırılara (CSRF, XSS, session fixation) karşı korur ve çeşitli kimlik doğrulama mekanizmalarıyla (form login, HTTP Basic, OAuth2, JWT) entegrasyon sunar. Framework, HTTP isteklerini controller'lara ulaşmadan önce yakalayıp işlemek için bir filtre zinciri (Security Filter Chain) kullanır.
2Spring Security'de kimlik doğrulama ile yetkilendirme arasındaki fark nedir?
Spring Security'de kimlik doğrulama ile yetkilendirme arasındaki fark nedir?
Cevap
Kimlik doğrulama, kullanıcının kimliğini (sen kimsin?) doğrular ve genellikle username/password ile yapılır; yetkilendirme ise izinleri (ne yapabilirsin?) doğrular. Önce kimlik doğrulama gerçekleşir ve kullanıcı bilgilerini içeren bir SecurityContext oluşturur. Ardından yetkilendirme bu bilgileri kullanarak kullanıcının belirli bir kaynağa erişip erişemeyeceğine karar verir. Örneğin, bir kullanıcı başarıyla kimliği doğrulanmış olsa bile, rolü ADMIN değil USER ise /admin adresine erişmeye yetkili olmayabilir.
3Spring Security'de SecurityContext nedir?
Spring Security'de SecurityContext nedir?
Cevap
SecurityContext, o anda kimliği doğrulanmış kullanıcının güvenlik bilgilerini, başlıca Authentication nesnesini içeren bir nesnedir. SecurityContextHolder içinde saklanır ve istek işleme süreci boyunca erişilebilir. Başarılı bir kimlik doğrulamadan sonra Spring Security, kullanıcı ayrıntılarını (username, authorities, credentials) içeren bir Authentication barındıran bir SecurityContext oluşturur. Bu bağlam, uygulamanın mevcut kullanıcının kim olduğunu ve hangi izinlere sahip olduğunu kontrol etmesini sağlar.
SecurityContextHolder, SecurityContext'i varsayılan olarak nasıl saklar?
Spring Security'de UserDetails arayüzünün rolü nedir?
+22 mülakat soruları
Diğer Spring Boot mülakat konuları
Spring Core - IoC & DI
Spring Boot Auto-Configuration
Spring Boot Starters
Application Properties & YAML
SLF4J ve Logback ile Logging
Spring Boot DevTools
Spring MVC Basics
Spring REST Controllers
Request & Response Handling
İstisna Yönetimi
Bean Validation
Spring Data JPA Temelleri
JPA Varlıkları ve İlişkiler
JPA Sorguları
Spring Data Repositories
Spring Boot Actuator
JUnit ve Mockito ile Birim Testleri
Spring Boot Test
Profiles ve Environment
RestTemplate ve WebClient
Async ve Scheduling
Spring ile Caching
Spring WebFlux (Reactive)
Spring İşlemleri
Gelişmiş kimlik doğrulama ve yetkilendirme
JWT ve Stateless Güvenlik
OAuth2 ve Authorization Server
Spring Boot ve Docker
Spring ile Microservices
Spring Cloud Config
Performans Optimizasyonu
GraalVM Native Images
Bir sonraki mülakatın için Spring Boot'de uzmanlaş
Tüm sorulara, flashcards'a, teknik testlere, code review alıştırmalarına ve mülakat simülatörlerine eriş.
Ücretsiz başla