Enviando com segurança

Usando a segurança da AWS para desenvolvedores

Rahul Singh

Technical Product Manager

Para que serve a checklist

Dois cartões lado a lado acima de uma barra de deploy em largura total. O cartão esquerdo, "setting", tem três valores de configuração, cada um com um tique verde, e a legenda one right value. O cartão direito, "question", tem três pontos de interrogação ao lado de respostas vazias tracejadas, e a legenda your answer. Setas saem de ambos para a barra de deploy.

  • Seis perguntas, antes de você enviar
  • Não seis configurações para ativar
Usando a segurança da AWS para desenvolvedores

Seis perguntas, na ordem da requisição

Pergunte nesta ordem

  1. Quem verifica o token de quem chama?
  2. Qual identidade a AWS está checando?

O serviço de relatórios de tenant começando como um caminho vertical: usuário tenant, depois API Gateway, depois a função de relatório. Marcadores 1 e 2 nos dois pontos onde a pergunta se aplica.

Usando a segurança da AWS para desenvolvedores

Seis perguntas, na ordem da requisição

Pergunte nesta ordem

  1. Quem verifica o token de quem chama?
  2. Qual identidade a AWS está checando?
  3. O que impede um tenant de ler as linhas de outro?
  4. Onde vive a senha do banco?

O serviço de relatórios de tenant como um caminho vertical: usuário tenant, API Gateway, função de relatório e DynamoDB, com Secrets Manager ao lado. Marcadores 1 a 4 nos pontos onde as perguntas se aplicam.

Usando a segurança da AWS para desenvolvedores

Seis perguntas, na ordem da requisição

Pergunte nesta ordem

  1. Quem verifica o token de quem chama?
  2. Qual identidade a AWS está checando?
  3. O que impede um tenant de ler as linhas de outro?
  4. Onde vive a senha do banco?
  5. Quem guarda a chave e quem a usou?
  6. O download de amanhã deixará registro?

O serviço de relatórios de tenant como um caminho vertical: usuário tenant, API Gateway, função de relatório, DynamoDB e relatórios S3, com Secrets Manager e uma chave KMS ao lado. Seis marcadores nos pontos onde as perguntas se aplicam. Um contorno tracejado envolve o serviço e leva a uma caixa CloudTrail tracejada abaixo.

Usando a segurança da AWS para desenvolvedores

Marcado não é o mesmo que seguro

Três deste serviço

  1. Role, não chave: lê todos os objetos

Três fragmentos numerados do serviço de relatório. No primeiro, a função de relatório tem um tique verde e um contorno laranja tracejado alcança os três prefixes de tenant no bucket. No segundo, um filtro de tenant verde fica dentro da função enquanto um portão laranja vazio fica no caminho da requisição fora dela. No terceiro, o bucket tem um tique verde e um caminho laranja tracejado de um auditor até a chave gerenciada pela AWS é interrompido antes dela.

Usando a segurança da AWS para desenvolvedores

Marcado não é o mesmo que seguro

Três deste serviço

  1. Role, não chave: lê todos os objetos
  2. Coluna de tenant: filtro fica no seu código
  3. Criptografia ativada: a chave não pode ser compartilhada

Três fragmentos numerados do serviço de relatório. No primeiro, a função de relatório tem um tique verde e um contorno laranja tracejado alcança os três prefixes de tenant no bucket. No segundo, um filtro de tenant verde fica dentro da função enquanto um portão laranja vazio fica no caminho da requisição fora dela. No terceiro, o bucket tem um tique verde e um caminho laranja tracejado de um auditor até a chave gerenciada pela AWS é interrompido antes dela.

Usando a segurança da AWS para desenvolvedores

A lacuna que a config não mostra

Uma caixa externa "granted" contendo duas internas que não se sobrepõem. Uma caixa verde sólida "used" com três ações IAM que a role chamou. Uma caixa laranja tracejada "never called" com três ações IAM que ela nunca chamou.

  • Certo no dia em que você escreveu: toda ação que o serviço então chamou
Usando a segurança da AWS para desenvolvedores

A lacuna que a config não mostra

Uma caixa externa "granted" contendo duas internas que não se sobrepõem. Uma caixa verde sólida "used" com três ações IAM que a role chamou. Uma caixa laranja tracejada "never called" com três ações IAM que ela nunca chamou.

  • Certo no dia em que você escreveu: toda ação que o serviço então chamou
  • Ampla demais agora: a metade que parou de chamar
  • Correção: conceda o que noventa dias de trilha mostram em uso
Usando a segurança da AWS para desenvolvedores

Escreva o motivo, não a configuração

Duas metades de uma decisão

  • O valor que seu código define
  • O motivo de defini-lo

Uma linha de configuração, rotulada no repositório, acima de uma caixa tracejada vazia "why" legendada not written down. Uma seta desce até um cartão de registro verde com quatro campos: chose, rejected, would change if, e date.

Usando a segurança da AWS para desenvolvedores

Escreva o motivo, não a configuração

Duas metades de uma decisão

  • O valor que seu código define
  • O motivo de defini-lo

 

  • Registrado e aceito: uma decisão
  • Sem documentação: uma surpresa

Uma linha de configuração, rotulada no repositório, acima de uma caixa tracejada vazia "why" legendada not written down. Uma seta desce até um cartão de registro verde com quatro campos: chose, rejected, would change if, e date.

Usando a segurança da AWS para desenvolvedores

Mesmas perguntas, novos callers

Três linhas sob dois títulos, ator e caller, cada uma pareando um ator com o caller que aciona: uma pessoa com sessão no navegador (suavizada como o caso familiar), um commit com um pipeline e uma requisição com um agente. As três convergem para um único portão azul, legenda one gate, com três marcadores.

  • Workload identity: uma identidade para um caller que não é pessoa
Usando a segurança da AWS para desenvolvedores

Mesmas perguntas, novos callers

Três linhas sob dois títulos, ator e caller, cada uma pareando um ator com o caller que aciona: uma pessoa com sessão no navegador (suavizada como o caso familiar), um commit com um pipeline e uma requisição com um agente. As três convergem para um único portão azul, legenda one gate, com três marcadores.

  • Workload identity: uma identidade para um caller que não é pessoa
  • Mesmas três perguntas: uma identidade que a AWS checa, escopo só do trabalho, e registro do que fez
  • O que mudou: o caller
Usando a segurança da AWS para desenvolvedores

Para onde isso vai depois

Duas faixas empilhadas. A de cima, "the account", tem quatro caixas iguais: GuardDuty, Security Hub, AWS Config e Organizations. Abaixo de um divisor tracejado, a faixa inferior, "your service", tem os mesmos seis marcadores numerados usados antes.

  • Seu serviço: as seis perguntas
  • A conta acima: GuardDuty, Security Hub, AWS Config, Organizations
Usando a segurança da AWS para desenvolvedores

Vamos praticar!

Usando a segurança da AWS para desenvolvedores

Preparing Video For Download...