Spring Boot

OAuth2 ve Authorization Server

OAuth2 ve Authorization Server, flow'lar (authorization code, client credentials), resource server, scope'lar

20 mülakat soruları·
Senior
1

OAuth2 nedir?

Cevap

OAuth2, üçüncü taraf bir uygulamanın kullanıcının credentials'larını ifşa etmeden, kullanıcı adına bir HTTP servisine sınırlı erişim elde etmesini sağlayan bir yetkilendirme protokolüdür. Parolalar yerine access token'lar aracılığıyla çalışır. OAuth2, yetki devri ile kimlik doğrulama (Google, GitHub vb. ile giriş) ve güvenli REST API'ler için yaygın olarak kullanılır.

2

Web uygulamaları için en güvenli OAuth2 flow'u hangisidir?

Cevap

Authorization Code flow en güvenli flow'dur çünkü access token hiçbir zaman tarayıcıya ifşa edilmez. Backend uygulaması, geçici bir authorization code'u güvenli bir kanal (backend-to-backend) üzerinden bir access token ile takas eder. PKCE (Proof Key for Code Exchange) ile bu flow, müdahale saldırılarına karşı daha da güvenli hale gelir.

3

Client Credentials flow hangi durumda kullanılmalıdır?

Cevap

Client Credentials flow, kullanıcı bağlamı olmadan machine-to-machine (service-to-service) iletişim için tasarlanmıştır. İstemci uygulaması, bir access token almak için kendi credentials'larıyla (client_id ve client_secret) doğrudan kimlik doğrular. Batch işleri, microservice'ler veya kendi adına hareket eden backend API'leri için kullanılır.

4

OAuth2'de PKCE (Proof Key for Code Exchange) nedir?

5

OAuth2'de Implicit flow neden kullanımdan kaldırılmıştır?

+17 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