< Return to Video

vimeo.com/.../929617616

  • 0:08 - 0:10
    No desenvolvimento
    de uma aplicação web,
  • 0:10 - 0:15
    uma das principais coisas
    que vamos ter é o http,
  • 0:15 - 0:19
    ele é basicamente a base de tudo
    o que nós fazemos.
  • 0:19 - 0:24
    E veja, não estamos falando aqui
    só de aplicação para o navegador,
  • 0:24 - 0:28
    o HTTP também está embarcado
    em aplicações mobile
  • 0:28 - 0:33
    e mesmo alguns sistemas que nós
    pensamos que foram desenvolvidos
  • 0:33 - 0:34
    com a estrutura compilada.
  • 0:34 - 0:37
    Isso porque ele trabalha
    muito bem
  • 0:37 - 0:41
    com essa ideia de interação
    cliente servidor.
  • 0:41 - 0:44
    Muito disso se deve
    aos seus métodos.
  • 0:44 - 0:46
    E aí podemos destacar os principais,
  • 0:46 - 0:50
    que são: o GET
    que eu obtenho informação,
  • 0:50 - 0:54
    o POST que eu publico
    uma informação,
  • 0:54 - 1:00
    PUT, eu adiciono uma informação
    para alguém que já existe.
  • 1:00 - 1:04
    No caso, por exemplo, um usuário
    ou um campo que já está determinado
  • 1:04 - 1:07
    e DELETE onde eu mando
    remover alguém.
  • 1:07 - 1:09
    Foi justamente essa estrutura
  • 1:09 - 1:13
    que moldou todo o mercado de TI
    que conhecemos hoje em dia,
  • 1:13 - 1:16
    principalmente
    nas aplicações web.
  • 1:16 - 1:17
    É através deles que conseguimos
  • 1:17 - 1:20
    enviar, receber ou alterar
    algum dado
  • 1:20 - 1:23
    nos sistemas que usamos
    no dia a dia.
  • 1:23 - 1:26
    Mas esses caras
    não estão sozinhos,
  • 1:26 - 1:28
    em especial porque o HTTP
  • 1:28 - 1:30
    normalmente tem um problema
    de segurança.
  • 1:30 - 1:33
    Esses dados estão expostos
    na rede
  • 1:33 - 1:37
    disponível para qualquer hacker
    poder acessar.
  • 1:37 - 1:41
    Justamente por isso
    que veio o https,
  • 1:41 - 1:45
    onde temos a parte de segurança
    sendo implementada.
  • 1:45 - 1:46
    E é nele, por exemplo,
  • 1:46 - 1:48
    que ganhamos a criptografia
  • 1:48 - 1:51
    dos dados
    que estamos operando.
  • 1:51 - 1:56
    E aqui também vamos ter que ter
    alguns detalhes a se atentar
  • 1:56 - 2:01
    toda URL que esse endereço
    de acesso às páginas web
  • 2:01 - 2:04
    será composta
    por protocolo
  • 2:04 - 2:08
    no caso HTTP,
    o HTTPS,
  • 2:08 - 2:11
    o DNS que
    estamos acessando,
  • 2:11 - 2:16
    que é o nome do domínio da página
    ou da aplicação que eu quero acessar,
  • 2:16 - 2:20
    e uma porta, que é um número
    que vai lá no final.
  • 2:20 - 2:23
    E se você nunca viu
    esse número antes,
  • 2:23 - 2:26
    é porque ele é subentendido
    em alguns casos.
  • 2:26 - 2:30
    Por exemplo,
    o HTTP utiliza a porta 80,
  • 2:30 - 2:34
    o HTTPS utiliza
    a porta 443.
  • 2:34 - 2:36
    Mas caso desenvolva,
    por exemplo,
  • 2:36 - 2:39
    um front end ou um
    dashboard de API,
  • 2:39 - 2:43
    é normal colocarmos esse cara
    lá na porta 5000,
  • 2:43 - 2:45
    e aí eu preciso especificar
    esse endereço.
  • 2:45 - 2:48
    Se nós acessamos, por exemplo,
    o site do Google,
  • 2:48 - 2:51
    já podemos ver
    como é que esse cara vai funcionar.
  • 2:51 - 2:56
    Notem que já temos aqui
    o nosso protocolo HTTPS,
  • 2:56 - 3:00
    indicando que é só
    uma conexão segura.
  • 3:00 - 3:03
    Mas veja, não é porque
    eu tenho um https aqui
  • 3:03 - 3:05
    que eu estou 100% seguro.
  • 3:05 - 3:11
    Na realidade isso só diz
    que eu tenho um certificado em uso,
  • 3:11 - 3:15
    não necessariamente
    que esse é o certificado do Google,
  • 3:15 - 3:17
    já já nós vamos ver como
    é que validamos isso.
  • 3:17 - 3:22
    Na sequência
    nós temos o endereço DNS do Google
  • 3:22 - 3:27
    e aqui está subtendido
    a porta 443.
  • 3:27 - 3:31
    "Professor, como é que conseguimos
    vertodos esses detalhes?"
  • 3:31 - 3:34
    se clicarmos aqui
    em cima do ícone do Google
  • 3:34 - 3:37
    ou clicar em cima
    do cadeado que aparece
  • 3:37 - 3:40
    quando temos
    aqui o HTTPS,
  • 3:40 - 3:44
    nós conseguimos ver
    as informações desse site.
  • 3:44 - 3:48
    Por exemplo, ele está indicando
    que essa conexão a segura,
  • 3:48 - 3:50
    se eu clico para pedir
    mais informações,
  • 3:50 - 3:55
    ele me traz um briefing
    e me traz um acesso ao certificado.
  • 3:55 - 3:57
    Onde eu consigo checar,
    por exemplo,
  • 3:57 - 4:00
    quem foi que emitiu
    esse certificado.
  • 4:00 - 4:03
    No caso, esse certificado
    foi emitido para o Google
  • 4:03 - 4:07
    por uma companhia
    chamada "GTS CA 1C3"
  • 4:07 - 4:11
    que no caso é o próprio
    serviço de segurança da Google.
  • 4:11 - 4:14
    Também conseguimos ver
    a data de emissão
  • 4:14 - 4:17
    e os efeitos de uso
    desse certificado,
  • 4:17 - 4:20
    como por exemplo
    a chave pública.
  • 4:20 - 4:23
    Isso porque toda comunicação https
  • 4:23 - 4:27
    funciona baseada
    em chave pública e privada.
  • 4:27 - 4:30
    A chave pública
    nós vamos utilizar
  • 4:30 - 4:34
    para assinar qualquer dado
    e mandar para o servidor,
  • 4:34 - 4:35
    afinal, só a chave privada
    vai abrir esse dado.
  • 4:38 - 4:42
    Já quando eu assino com a chave privada,
    a pública consegue abrir,
  • 4:42 - 4:47
    e isso não é tão interessante
    quando eu quero garantir segurança.
  • 4:47 - 4:49
    E aí, como é que eu faço?
  • 4:49 - 4:53
    Normalmente, quando eu chamo esse site,
    a gente já negocia ali,
  • 4:53 - 4:58
    utilizando as chaves públicas,
    um acordo de senha para a gente
  • 4:58 - 5:02
    usar um outro certificado privado
    para a gente usar.
  • 5:02 - 5:05
    E dessa forma a gente escapa
    desse problema
  • 5:05 - 5:10
    do assinar com a chave privada
    e ler com a chave pública.
  • 5:10 - 5:14
    Outro detalhe importante
    é que a gente tem mais algumas informações
  • 5:14 - 5:17
    e detalhes sobre esse certificado.
  • 5:17 - 5:20
    Mas voltando aqui no quadradinho,
    vejam que a gente também
  • 5:20 - 5:27
    vai ter algumas opções,
    como os cookies que estão em uso ou mesmo
  • 5:27 - 5:28
    as informações sobre os
  • 5:28 - 5:32
    trekkings, que são os acessos
    que a gente está pedindo.
  • 5:32 - 5:35
    Os trekkings vão ser referentes
    a basicamente
  • 5:35 - 5:39
    qualquer coisa que a gente queira acessar,
    desde a localização
  • 5:39 - 5:43
    ou até a possibilidade de armazenar
    algum dado no computador.
  • 5:43 - 5:48
    Só que o CUC ele
    é um pouquinho mais delicado, o cookie.
  • 5:48 - 5:51
    Teoricamente
    são dados que nós estamos salvando
  • 5:51 - 5:54
    nessa máquina
    para acelerar a nossa página.
  • 5:54 - 5:57
    Ela é uma espécie de client side
  • 5:57 - 6:00
    ou processamento do lado cliente,
  • 6:00 - 6:04
    aonde a gente
    consegue aliviar o tráfego do servidor,
  • 6:04 - 6:07
    só que expondo ao risco de ter parte
  • 6:07 - 6:10
    do meu código disponível
    na máquina do usuário.
  • 6:10 - 6:15
    Além disso, Cookie também salva
    vários outros componentes da página,
  • 6:15 - 6:19
    como fotos muito acessadas,
    logomarcas e coisas do gênero.
  • 6:19 - 6:21
    Então ele está em Minas sendo usado.
  • 6:21 - 6:25
    O problema é qual dado eu to passando
    pra ele já.
  • 6:25 - 6:29
    Quando a gente fala do server side,
    ele vai compor
  • 6:29 - 6:33
    todos os dados
    que a gente tem do lado do servidor
  • 6:33 - 6:36
    e aí a gente termina
    tendo um pouco mais de segurança.
  • 6:36 - 6:39
    Eu vou me preocupar muito com o ataque
    que vou tentar explorar,
  • 6:39 - 6:42
    mas isso tudo vai vir via rede
  • 6:42 - 6:48
    e não simplesmente disponibilizei esse
    código aberto para todo mundo.
  • 6:48 - 6:49
    Além disso,
  • 6:49 - 6:53
    essa nossa
    interação nem sempre é bem sucedida
  • 6:53 - 6:56
    e justamente por isso o HTTP tem códigos.
  • 6:56 - 6:59
    Toda vez que você recebe um código
    200, por exemplo,
  • 6:59 - 7:03
    é porque a sua solicitação deu certo.
  • 7:03 - 7:07
    Toda a família 200
    quer dizer, solicitação bem sucedida.
  • 7:07 - 7:10
    Já quando a gente fala da família 500,
    a gente está falando
  • 7:10 - 7:12
    da família, dos erros.
  • 7:12 - 7:16
    O famoso erro 404 já está noutra família
  • 7:16 - 7:21
    para indicar falha no server side,
    aonde eu não consegui achar o endereço.
  • 7:21 - 7:25
    Então cada código
    vai ter ali a sua família
  • 7:26 - 7:30
    e dentro dessas famílias
    os erros que ele está justificando.
  • 7:31 - 7:34
    Veja que só para manter uma aplicação
    web no ar
  • 7:34 - 7:34
    a gente já tem que ter
  • 7:34 - 7:39
    uma série de cuidados
    e trabalhar minunciosamente vários pontos.
  • 7:39 - 7:41
    Mas são justamente esses pequenos pontos
  • 7:41 - 7:45
    que me permitem arquitetar uma solução web
  • 7:45 - 7:49
    que vai ser ao
    mesmo tempo útil e segura. E.
Title:
vimeo.com/.../929617616
Video Language:
Portuguese, Brazilian
Duration:
07:52

Portuguese, Brazilian subtitles

Revisions Compare revisions