# Segurança e autenticação (Go) > JWT, OAuth2, gerenciamento de sessões, RBAC, crypto/rand vs math/rand, configuração TLS, codificação segura, melhores práticas de segurança - 24 perguntas de entrevista - Senior - [Perguntas de entrevista: Go](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista.md) ## 1. Qual é a principal diferença entre tokens JWT e sessões de servidor tradicionais? **Resposta** Os tokens JWT são stateless (sem estado no lado do servidor) e contêm todas as informações necessárias codificadas dentro do próprio token. Ao contrário das sessões tradicionais que armazenam os dados em memória ou em banco de dados no lado do servidor com apenas um session ID no lado do cliente, o JWT transfere a responsabilidade de armazenamento para o cliente. Isso facilita o escalonamento horizontal, pois nenhum estado compartilhado é necessário entre os servidores. ## 2. Quais são as três partes de um token JWT separadas por pontos? **Resposta** Um JWT é composto por três partes codificadas em Base64URL e separadas por pontos: Header (algoritmo e tipo), Payload (claims/dados) e Signature (verificação de integridade). A estrutura é header.payload.signature. O header indica o algoritmo de assinatura (HS256, RS256), o payload contém os claims (iss, sub, exp) e a signature garante que o token não foi adulterado. ## 3. Qual claim padrão de JWT define o timestamp de expiração do token? **Resposta** O claim 'exp' (expiration time) define o timestamp Unix após o qual o token não deve mais ser aceito. Os claims padrão também incluem 'iss' (issuer), 'sub' (subject), 'aud' (audience), 'iat' (issued at) e 'nbf' (not before). Validar o claim exp é crucial para limitar a duração de validade dos tokens e reduzir o impacto de um token roubado. ## Mais 21 perguntas disponiveis - Qual é a principal diferença entre HS256 e RS256 para assinar JWTs? - Como revogar um JWT antes de sua expiração natural? Cadastre-se gratis: https://sharpskill.dev/pt/login ## Outros temas de entrevista Go - [Fundamentos de Go](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/go-basics.md): 25 perguntas, Junior - [Estruturas de dados em Go](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/go-data-structures.md): 20 perguntas, Junior - [Interfaces em Go](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/go-interfaces.md): 18 perguntas, Junior - [Tratamento de erros](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/error-handling.md): 20 perguntas, Junior - [Goroutines básicas](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/goroutines-basics.md): 20 perguntas, Junior - [Channels](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/channels.md): 22 perguntas, Junior - [Go Modules](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/go-modules.md): 18 perguntas, Mid-Level - [Servidor HTTP](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/http-server.md): 24 perguntas, Mid-Level - [Cliente HTTP](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/http-client.md): 18 perguntas, Mid-Level - [Codificação JSON](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/json-encoding.md): 20 perguntas, Mid-Level - [Database/SQL](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/database-sql.md): 22 perguntas, Mid-Level - [Pacote context](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/context-package.md): 20 perguntas, Mid-Level - [Testing](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/testing.md): 22 perguntas, Mid-Level - [Padrões de concorrência](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/concurrency-patterns.md): 24 perguntas, Mid-Level - [Primitivas de sincronização](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/sync-primitives.md): 22 perguntas, Mid-Level - [Frameworks web Go](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/go-web-frameworks.md): 20 perguntas, Mid-Level - [Design de API REST](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/rest-api-design.md): 20 perguntas, Mid-Level - [gRPC](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/grpc.md): 22 perguntas, Mid-Level - [Reflection](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/reflection.md): 20 perguntas, Senior - [Gerenciamento de memória](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/memory-management.md): 24 perguntas, Senior - [Otimização de desempenho](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/performance-optimization.md): 22 perguntas, Senior - [Generics](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/generics.md): 20 perguntas, Senior - [Go Design Patterns](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/design-patterns.md): 24 perguntas, Senior - [Microservices](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/microservices.md): 24 perguntas, Senior - [Docker & Containerization](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/docker-containerization.md): 20 perguntas, Senior - [Kubernetes Basics](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/kubernetes-basics.md): 22 perguntas, Senior - [Go Avançado](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/advanced-go.md): 20 perguntas, Senior - [Desenvolvimento de CLI](https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/cli-development.md): 20 perguntas, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/pt/technologies/go/perguntas-entrevista/security-authentication