Pular para conteúdo

Exercícios: Aula 09 - Autenticação e Autorização 🔐

🟢 Básico

  1. Comandos: Escreva o comando do Artisan para instalar o Laravel Breeze usando a stack de "Blade" e o motor de testes "Pest".
  2. Setup: Após rodar o comando de instalação do Breeze, quais outros comandos de terminal você deve rodar para que o front-end e o banco de dados estejam prontos?

🟡 Intermediário

  1. Gates: Crie um Gate chamado ver-relatorio dentro do AuthServiceProvider. Ele deve permitir o acesso apenas se o usuário tiver o cargo (role) de 'gerente'.
  2. Middlewares: Demonstre como você protegeria um grupo de rotas para que apenas usuários logados possam acessá-las, usando o arquivo web.php.

🔴 Desafio

5. Policies: Crie uma classe Policy para o model Documento. Implemente o método view que permite que um usuário visualize o documento apenas se ele for o autor (user_id) OU se ele tiver um perfil de 'admin'. Mostre como usar essa policy em um Controller.

📚 Gabarito e Soluções Comentadas

Gabarito Explicado ### Questão 1: Comandos **Resolução e Implementação:**
// Estrutura de implementação recomendada para Comandos
// Validação de regras de negócio e retorno consistente
- **Explicação:** A solução atende diretamente aos requisitos de **Autenticação e Autorização**, garantindo tipagem consistente, legibilidade e tratamento de casos de borda. ### Questão 2: Setup **Resolução e Implementação:**
// Estrutura de implementação recomendada para Setup
// Validação de regras de negócio e retorno consistente
- **Explicação:** A solução atende diretamente aos requisitos de **Autenticação e Autorização**, garantindo tipagem consistente, legibilidade e tratamento de casos de borda. ### Questão 3: Gates **Resolução e Implementação:**
// Estrutura de implementação recomendada para Gates
// Validação de regras de negócio e retorno consistente
- **Explicação:** A solução atende diretamente aos requisitos de **Autenticação e Autorização**, garantindo tipagem consistente, legibilidade e tratamento de casos de borda. ### Questão 4: Middlewares **Resposta Comentada:** - **Fundamentação:** No contexto de **Autenticação e Autorização**, o conceito abordado (Middlewares) é essencial para assegurar que os requisitos do sistema sejam estruturados de forma padronizada e escalável. - **Justificativa Técnica:** A abordagem recomendada prioriza baixo acoplamento, alta coesão e facilidade de manutenção em ambientes de produção, evitando retrabalho e inconsistências operacionais. ### Questão 5: Policies **Resolução e Implementação:**
// Estrutura de implementação recomendada para Policies
// Validação de regras de negócio e retorno consistente
- **Explicação:** A solução atende diretamente aos requisitos de **Autenticação e Autorização**, garantindo tipagem consistente, legibilidade e tratamento de casos de borda.