Advertisement

[Exercicio] Criando Web Services com manutenção de estado




Nesse exercício você irá criar um Web Service que realize as quatro operações de um banco de dados (CRUD – Create, Read, Update e Delete). Esse Web Service irá distinguir qual operação realizar através de parâmetros passados via URL (GET) ou no corpo da sua requisição (POST).

O seu Web Service irá fornecer um serviço de manipulação de clientes de um sistema. Cada cliente deverá conter: id, nome completo, e-mail, senha, cargo, salário, CPF, RG, atribuições, data de início na empresa, data de nascimento.

Uma parte importante do Web Service é a segurança, já que existem soluções prontas para solucionar o problema da segurança, como por exemplo o OAuth2.0. No entanto, nesse exercício você irá implementar uma lógica própria apenas para suprir as necessidades de segurança do seu Web Service.

Para que o exercício esteja completo você deverá seguir uma tabela de teste. Os testes deverão ser feitos em seu Web Service e todos deverão ser satisfeitos.

ID
Descrição do requisito
Estado
1
O sistema deve receber um parâmetro “show” e quando ele for igual a “all” todos os clientes deverão ser exibidos.
-
2
O sistema deverá exibir os dados de um cliente específico quando for recebido um número de ID válido.
-
3
O sistema não deverá mostrar senha, salário, CPF, RG quando solicitado sem uma autenticação de desenvolvedor.
-
4
O sistema deverá prover uma forma de inserção de um novo cliente.
-
5
A inserção deverá verificar se o CPF é único na base de dados.
-
6
A inserção só poderá acontecer caso seja feita por um desenvolvedor autorizado.
-
7
O sistema deve permitir que seja feito a atualização de dados de um cliente.
-
8
A atualização só poderá acontecer por um desenvolvedor autorizado.
-
9
A remoção de um usuário deverá acontecer somente por um administrador do sistema.
-
10
A exclusão deverá ser apenas lógica. Os dados não são realmente excluídos do sistema, mas deve existir uma forma de sinalizar que esses dados foram excluídos.
-

Versão 01 – O sistema deve ser implementado usando um JSON como base de dados.
Versão 02 – O sistema deve ser implementado usando um banco de dados relacional ou Orientado a objetos como Base de dados (mysql, postgres, mongodb, mariadb etc.)

Nenhum comentário

Conta pra mim sua opinião!

Fale comigo