Prévia do material em texto
Desenvolvimento para Web
1º Desafio – Linguagem PHP I
O PHP é amplamente utilizado com a busca e o processamento de informações que são preenchidas em campos de formulário.
Padrão de resposta esperado
Veja as respostas para cada questão do desafio:
1- "<?php $nome = $POST[\'nome\']; $ano = $POST[\'ano\'] $ano_atual = date(\'Y\'); $idade = $ano_atual - $ano;
2a- echo \'Seu nome é: \' . $nome . \'<br/>\'
2b- echo \'Sua idade é de: \' . $idade . \' anos\' . \'</br>\'; if($idade < 18) { echo \'Você é MENOR de idade!\'; } else { echo \'Você é MAIOR de idade!\'; } ?>"
_____________________________________________________________________________
2º Desafio - Linguagem PHP II
O uso de informações armazenadas em uma sessão é de grande importância na criação de páginas dinâmicas e também em lojas virtuais.
Partindo de um formulário onde foi digitado seu nome e seu e-mail, crie um script em PHP que pegue os dados do formulário e os salve em uma sessão. Depois, faça com que a página mostre uma mensagem personalizada de boas-vindas, buscando na sessão o nome e o e-mail digitados. Abaixo da mensagem, mostre um botão que deve realizar a saída da sessão e eliminação dos dados.
Padrão de resposta esperado
Veja como é possível solucionar cada etapa do desafio:
<?php session_start();
$_SESSION[\'nome\'] = $_POST[\'nome\'];
$_SESSION[\'email\'] = $_POST[\'email\'];
echo "<h1> Seja Bem vindo" . $_SESSION[\'nome\'] . "seu e-mail é " . $_SESSION[\'email\'] . "</h1>"; ?>
<a href="sair.php"><button>Encerrar Sessão</button></a>
?>
Dados do arquivo sair.php:
<?php session_start();
unset( $_SESSION[\'nome\'];
unset( $_SESSION[\'email\'];
session_destroy();
?>
3º Desafio - Segurança em sistema Web I
Desafio
O sistema Web da empresa onde você trabalha apresenta certas vulnerabilidades, e uma delas estão ligadas as tentativas de hackers de acesso aos dados. Você precisa proteger o sistema contra esses ataques de força-bruta - que é quando um usuário mal-intencionado fica tentando, repetidas vezes, várias e várias senhas até que consiga encontrar a senha correta para invadir o sistema. Qual é a melhor maneira de proteger o sistema da empresa desses ataques?
Padrão de resposta esperado
Para evitar esses ataques, você deve utilizar no seu sistema um Controle de tentativas de acesso - para que o sistema identifique que um mesmo usuário está tentando acessar várias vezes sem sucesso - e programar para que, após a terceira tentativa malsucedida, o sistema automaticamente bloqueie a conta deste usuário, impedindo novos ataques.
4º Desafio - Segurança em sistema web II
Você foi contratado para trabalhar como analista de sistemas em um banco e uma das suas tarefas do dia é criar um sistema de segurança em que os dados que são digitados pelo usuário/cliente fiquem protegidos ao trafegarem pela rede até a autenticação do servidor, evitando que eles possam ser interceptados durante o processo. Qual a forma mais segura para a proteção desses dados?
Padrão de resposta esperado
Você deve utilizar uma criptografia de chaves assimétricas, que utiliza uma chave para CIFRAR (chave pública) os dados e outra chave diferente para DECIFRAR os dados (chave privada). Dessa forma, mesmo que um usuário mal-intencionado consiga interceptar e até mesmo descobrir qual a chave usada para CIFRAR os dados, não conseguirá decifrá-la, pois não terá acesso à chave privada.