OAuth2 e Authorization Server
OAuth2 e Authorization Server, flows (authorization code, client credentials), resource server, scopes
1O que é OAuth2?
O que é OAuth2?
Resposta
OAuth2 é um protocolo de autorização que permite a uma aplicação de terceiros obter acesso limitado a um serviço HTTP em nome de um usuário, sem expor as credenciais do usuário. Funciona por meio de access tokens em vez de senhas. OAuth2 é amplamente usado para autenticação delegada (login com Google, GitHub, etc.) e APIs REST seguras.
2Qual é o flow OAuth2 mais seguro para aplicações web?
Qual é o flow OAuth2 mais seguro para aplicações web?
Resposta
O Authorization Code flow é o flow mais seguro porque o access token nunca é exposto ao navegador. A aplicação backend troca um código de autorização temporário por um access token através de um canal seguro (backend-to-backend). Com PKCE (Proof Key for Code Exchange), esse flow se torna ainda mais seguro contra ataques de interceptação.
3Em que caso o Client Credentials flow deve ser usado?
Em que caso o Client Credentials flow deve ser usado?
Resposta
O Client Credentials flow foi projetado para comunicação machine-to-machine (service-to-service) sem contexto de usuário. A aplicação cliente se autentica diretamente com suas próprias credenciais (client_id e client_secret) para obter um access token. Usado para jobs batch, microsserviços ou APIs backend que atuam em nome próprio.
O que é PKCE (Proof Key for Code Exchange) no OAuth2?
Por que o Implicit flow está obsoleto no OAuth2?
+17 perguntas de entrevista
Outros temas de entrevista Spring Boot
Spring Core - IoC & DI
Spring Boot Auto-Configuration
Spring Boot Starters
Application Properties & YAML
Logging com SLF4J e Logback
Spring Boot DevTools
Spring MVC Basics
Spring REST Controllers
Request & Response Handling
Tratamento de exceções
Bean Validation
Fundamentos do Spring Data JPA
Entidades JPA e relacionamentos
Consultas JPA
Spring Data Repositories
Fundamentos do Spring Security
Spring Boot Actuator
Testes unitários com JUnit e Mockito
Testes no Spring Boot
Profiles e Environment
RestTemplate e WebClient
Async e Scheduling
Caching com Spring
Spring WebFlux (Reactive)
Transações do Spring
Autenticação e autorização avançadas
JWT e segurança stateless
Spring Boot e Docker
Microservices com Spring
Spring Cloud Config
Otimização de desempenho
GraalVM Native Images
Domine Spring Boot para sua proxima entrevista
Acesse todas as perguntas, flashcards, testes tecnicos, exercicios de code review e simuladores de entrevista.
Comece gratis