Spring Security
Bu bölüm, Spring Security ile Java uygulamalarında güvenlik sağlamak için temel ve ileri seviye konuları kapsar.
1. Authentication ve Authorization
- Username/password, LDAP, OAuth2, SAML, JWT ile kimlik doğrulama
- Role-based ve attribute-based access control
- Custom authentication provider yazımı
2. Web Security Konfigürasyonu
- Security filter chain, HttpSecurity, WebSecurityConfigurerAdapter
- CSRF, CORS, session management, remember-me
3. JWT ve Token Tabanlı Güvenlik
- JWT oluşturma, doğrulama, refresh token
- Stateless authentication, token blacklist
4. OAuth2 ve OpenID Connect
- OAuth2 flow’ları, client credentials, authorization code
- Resource server, authorization server, scope management
5. Method-Level Security
- @PreAuthorize, @PostAuthorize, @Secured, @RolesAllowed
- SpEL ile dinamik yetkilendirme
6. Güvenlikte Best Practices
- Password hashing (BCrypt, Argon2)
- Secret management, environment variable kullanımı
- Güvenli logging ve exception handling
7. Sık Karşılaşılan Sorunlar ve Çözüm Yöntemleri
- CORS hataları, session fixation, CSRF token sorunları
- Stateless uygulamalarda authentication problemleri
Her başlık altında örnekler, kod parçaları ve ileri seviye detaylar için ilgili alt bölümlere göz atabilirsiniz.