
Yetkilendirme ve RBAC
Rol tabanlı erişim kontrolü, özel guard'lar, decorator'lar, izinler, kaynak sahipliği
1RBAC (Role-Based Access Control) nedir?
RBAC (Role-Based Access Control) nedir?
Cevap
RBAC, kullanıcılara rollerine göre izin veren bir erişim kontrol sistemidir. Her kullanıcı için izinleri ayrı ayrı yönetmek yerine, RBAC izinleri rollerde (ör: ADMIN, USER, MANAGER) gruplar ve bu rolleri kullanıcılara atar. Bu, uygulamalarda erişim yönetimini basitleştirir ve özellikle NestJS'te özel guard'lar ve metadata decorator'larıyla kullanışlıdır.
2Kimlik doğrulama (authentication) ile yetkilendirme (authorization) arasındaki fark nedir?
Kimlik doğrulama (authentication) ile yetkilendirme (authorization) arasındaki fark nedir?
Cevap
Kimlik doğrulama, kullanıcının kimliğini (siz kimsiniz?) genellikle giriş/parola veya JWT token aracılığıyla doğrular. Yetkilendirme ise kullanıcının izinlerini (ne yapabilirsiniz?) doğrular ve roller veya izinlere göre kaynaklara erişimi kontrol eder. NestJS'te kimlik doğrulama genellikle JwtAuthGuard kullanırken, yetkilendirme erişim haklarını kontrol etmek için RolesGuard gibi özel guard'lar kullanır.
3Hangi NestJS decorator'ı özel bir guard oluşturmaya olanak tanır?
Hangi NestJS decorator'ı özel bir guard oluşturmaya olanak tanır?
Cevap
NestJS'te özel bir guard oluşturmak için, CanActivate arayüzünü uygulayan ve @Injectable() ile süslenmiş bir sınıf oluşturulur. Bu arayüz, boolean veya Promise döndüren canActivate(context: ExecutionContext) metodunu gerektirir. Guard daha sonra @UseGuards() ile route'lara uygulanabilir. Bu mimari, karmaşık doğrulamalar yapmak için guard'a bağımlılıkların (servisler, repository'ler) enjekte edilmesine olanak tanır.
RBAC'te bir 'izin' (permission) neyi temsil eder?
NestJS'te bir controller'a bir guard nasıl eklenir?
+17 mülakat soruları
Diğer Node.js / NestJS mülakat konuları
Node.js Temelleri
Node.js Çekirdek API'leri
Asenkron Programlama
Express.js Temelleri
NestJS Temelleri
REST API Tasarımı
Doğrulama ve DTO
API Dokümantasyonu ve Sözleşmeler
Hata Yönetimi
Birim Testleri
Görev Zamanlama
NestJS Modülleri ve DI
Yapılandırma ve Ortam Yönetimi
JWT Kimlik Doğrulama
TypeORM ile Veritabanı
Prisma ORM
Middleware ve Interceptor
Dosya yükleme
WebSockets
NestJS ile GraphQL
Uçtan Uca Test
Redis ile Önbellekleme
Bull ile Kuyruklar
DevOps, Logging ve CI/CD
Docker ve Konteynerleştirme
Microservices
Güvenlik En İyi Uygulamaları
Performans ve Bulut Dağıtımı
Bir sonraki mülakatın için Node.js / NestJS'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