-
No desenvolvimento de uma aplicação web.
-
Uma das principais coisas
que a gente vai sentir é o http.
-
Ele é basicamente a base de tudo
o que a gente faz.
-
E veja, a gente não está falando aqui
só de aplicação para o navegador.
-
O HTTP também está embarcado
em aplicações mobile
-
e mesmo alguns sistemas
-
que a gente pensa que foram desenvolvidos
com a estrutura compilada.
-
Isso porque ele trabalha
muito bem com essa ideia de interação
-
cliente servidor.
-
Muito disso se deve aos seus métodos.
-
E aí a gente pode destacar os principais,
que são o gatilho
-
que eu obtenho informação no post
que eu publico.
-
Uma informação put, eu adiciono
-
uma informação para alguém que já existe.
-
No caso, por exemplo, um usuário
ou um campo que já está determinado
-
e diluído aonde eu mando remover alguém?
-
Foi justamente essa estrutura
que moldou todo o mercado de TI
-
que a gente conhece hoje em dia,
principalmente nas aplicações web.
-
É através deles que a gente consegue
enviar, receber
-
ou alterar algum dado nos sistemas
que a gente usa no dia a dia.
-
Mas esses caras não estão sozinhos.
-
Em especial porque o HTTP normalmente
tem um problema de segurança.
-
Esses dados
eles estão expostos na rede disponível
-
para qualquer hacker poder acessar.
-
Justamente por isso que veio o http s,
-
aonde a gente tem a parte de segurança
sendo implementada.
-
E é nele, por exemplo,
que a gente vê a criptografia
-
dos dados que a gente está operando.
-
E aqui a gente também vai ter que ter
alguns detalhes a apresentar.
-
Toda URL
que esse endereço de acesso às páginas web
-
vai ser composta por protocolo
-
no caso HTTP, o HTTPS,
-
o DNS que a gente está acessando,
-
que é o nome do domínio da página
ou da aplicação que eu quero acessar.
-
É uma porta
que é um número que vai lá no final.
-
E se você nunca viu esse número antes,
-
é porque ele é subentendido em alguns
casos.
-
Por exemplo, o HTTP utiliza a porta
-
80, o HTTPS utiliza
a porta quatro, quatro três.
-
Mas caso
-
desenvolva, por exemplo,
um front end ou um dashboard de API,
-
é normal a gente colocar esse cara
lá na porta 5000.
-
E aí eu preciso especificar esse endereço.
-
Se a gente vem aqui, acessa, por exemplo,
o site do Google,
-
a gente já pode ver
como é que esse cara vai funcionar.
-
Notem que a gente já tem aqui
-
o nosso protocolo HTTPS,
-
indicando que é só uma conexão segura.
-
Mas veja, não é porque eu tenho um https
aqui que eu estou 100% seguro.
-
Na realidade isso só diz
que eu tenho um certificado em uso,
-
não necessariamente
que esse é o certificado do Google.
-
Já já a gente
vê como é que a gente valida isso.
-
Na sequência
nós temos o endereço DNS do Google
-
e aqui está subtendido
a porta quatro, quatro, três.
-
Como é
-
que a gente consegue ver
todos esses detalhes?
-
Se a gente clicar aqui
em cima do ícone do Google
-
ou clica em cima do dia
a dia em que aparece?
-
Quando a gente tem aqui o HTTPS,
-
nós conseguimos ver as informações desse
site.
-
Por exemplo, ele está indicando
que essa conexão a segura.
-
Se eu clico para pedir mais informações,
-
ele me traz um briefing
e me traz um acesso ao certificado,
-
aonde eu consigo checar, por exemplo,
-
quem foi que emitiu esse certificado.
-
No caso, esse cara foi emitido pra Google
por uma companhia chamada GTS.
-
Será um C3, que no caso é o próprio
serviço de segurança da Google.
-
A gente também consegue ver
a data de emissão
-
e os efeitos de uso desse certificado,
-
como por exemplo a chave pública.
-
Isso porque toda comunicação https
funciona
-
baseada em chave pública e privada.
-
A chave pública a gente vai utilizar
-
para assinar qualquer
dado qualquer e mandar para o servidor,
-
afinal,
-
só a chave privada vai abrir esse dado.
-
Já quando eu assino com a chave privada,
a pública consegue abrir.
-
E isso não é tão interessante
quando eu quero garantir segurança.
-
E aí, como é que eu faço?
-
Normalmente, quando eu chamo esse site,
a gente já negocia ali,
-
utilizando as chaves públicas,
um acordo de senha para a gente
-
usar um outro certificado privado
para a gente usar.
-
E dessa forma a gente escapa
desse problema
-
do assinar com a chave privada
e ler com a chave pública.
-
Outro detalhe importante
é que a gente tem mais algumas informações
-
e detalhes sobre esse certificado.
-
Mas voltando aqui no quadradinho,
vejam que a gente também
-
vai ter algumas opções,
como os cookies que estão em uso ou mesmo
-
as informações sobre os
-
trekkings, que são os acessos
que a gente está pedindo.
-
Os trekkings vão ser referentes
a basicamente
-
qualquer coisa que a gente queira acessar,
desde a localização
-
ou até a possibilidade de armazenar
algum dado no computador.
-
Só que o CUC ele
é um pouquinho mais delicado, o cookie.
-
Teoricamente
são dados que nós estamos salvando
-
nessa máquina
para acelerar a nossa página.
-
Ela é uma espécie de client side
-
ou processamento do lado cliente,
-
aonde a gente
consegue aliviar o tráfego do servidor,
-
só que expondo ao risco de ter parte
-
do meu código disponível
na máquina do usuário.
-
Além disso, Cookie também salva
vários outros componentes da página,
-
como fotos muito acessadas,
logomarcas e coisas do gênero.
-
Então ele está em Minas sendo usado.
-
O problema é qual dado eu to passando
pra ele já.
-
Quando a gente fala do server side,
ele vai compor
-
todos os dados
que a gente tem do lado do servidor
-
e aí a gente termina
tendo um pouco mais de segurança.
-
Eu vou me preocupar muito com o ataque
que vou tentar explorar,
-
mas isso tudo vai vir via rede
-
e não simplesmente disponibilizei esse
código aberto para todo mundo.
-
Além disso,
-
essa nossa
interação nem sempre é bem sucedida
-
e justamente por isso o HTTP tem códigos.
-
Toda vez que você recebe um código
200, por exemplo,
-
é porque a sua solicitação deu certo.
-
Toda a família 200
quer dizer, solicitação bem sucedida.
-
Já quando a gente fala da família 500,
a gente está falando
-
da família, dos erros.
-
O famoso erro 404 já está noutra família
-
para indicar falha no server side,
aonde eu não consegui achar o endereço.
-
Então cada código
vai ter ali a sua família
-
e dentro dessas famílias
os erros que ele está justificando.
-
Veja que só para manter uma aplicação
web no ar
-
a gente já tem que ter
-
uma série de cuidados
e trabalhar minunciosamente vários pontos.
-
Mas são justamente esses pequenos pontos
-
que me permitem arquitetar uma solução web
-
que vai ser ao
mesmo tempo útil e segura. E.