Criando Web Services com manutenção de estado em PHP

Criando Web Services com manutenção de estado em PHP

   Nesse exercício você irá criar um Web Service usando a tecnologia SOAP (xml) 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.  

IDDescrição do requisitoEstado
1O sistema deve receber um parâmetro “show” e quando ele for igual a “all” todos os clientes deverão ser exibidos.
2O sistema deverá exibir os dados de um cliente específico quando for recebido um número de ID válido.
3O sistema não deverá mostrar senha, salário, CPF, RG quando solicitado sem uma autenticação de desenvolvedor.
4O sistema deverá prover uma forma de inserção de um novo cliente.
5A inserção deverá verificar se o CPF é único na base de dados.
6A inserção só poderá acontecer caso seja feita por um desenvolvedor autorizado.
7O sistema deve permitir que seja feito a atualização de dados de um cliente.
8A atualização só poderá acontecer por um desenvolvedor autorizado.
9A remoção de um usuário deverá acontecer somente por um administrador do sistema.
10A 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.)

Respostas

Vinicius dos Santos

Apenas um apaixonado por Ciência da Computação e forma com que ela pode transformar vidas!

Deixe uma resposta