Spring Boot

Gelişmiş kimlik doğrulama ve yetkilendirme

Gelişmiş kimlik doğrulama, @PreAuthorize/@PostAuthorize, roles, permissions, SpEL ile ince taneli yetkilendirme

30 mülakat soruları·
Senior
1

Spring Security'de UserDetailsService arayüzünün ana rolü nedir?

Cevap

UserDetailsService, kimlik doğrulama sırasında kullanıcı bilgilerini veri kaynağından (veritabanı, LDAP vb.) yüklemekten sorumludur. loadUserByUsername() metodu username, password, roles ve authorities içeren bir UserDetails nesnesi döndürür. Spring Security daha sonra bu bilgileri credentials'ı doğrulamak ve SecurityContext oluşturmak için kullanır.

2

Spring Security 6+ içinde metot düzeyinde güvenliği hangi anotasyon etkinleştirir?

Cevap

@EnableMethodSecurity, Spring Security 6+ içinde metot düzeyinde güvenliği etkinleştiren modern anotasyondur. Eski @EnableGlobalMethodSecurity'nin yerini alır ve varsayılan olarak @PreAuthorize, @PostAuthorize ve @Secured'ı etkinleştirir. Metot çağrılarını yakalamak ve yetkilendirmeleri kontrol etmek için AOP proxy tabanlı bir yapılandırma kullanır.

3

@PreAuthorize anotasyonu yetkilendirmeleri ne zaman kontrol eder?

Cevap

@PreAuthorize, yetkilendirmeleri metot çalıştırılmadan ÖNCE kontrol eder. SpEL koşulu false döndürürse bir AccessDeniedException fırlatılır ve metot hiç çalıştırılmaz. Bu, yetkisiz kaynaklara erişimi en baştan engeller. Buna karşılık @PostAuthorize çalıştırmadan sonra kontrol eder ki bu, sonuçları kullanıcıya göre filtrelemek için yararlıdır.

4

Spring Security'de hasRole() ile hasAuthority() arasındaki temel fark nedir?

5

Kullanıcıları bir veritabanından yükleyen özel bir UserDetailsService nasıl uygulanır?

+27 mülakat soruları

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