Capítulo 34 — Criptografia e serviços de confiança: integração
Mapa da aula
Aula 34 publicada. Mapa, exemplo, EX100.
flowchart TD
N0["34.1 Pontos de integração"]
N1["34.2 Contratos de interface"]
N2["34.3 Testes de ponta a ponta"]
N3["Síntese"]
N0 --> N1 --> N2 --> N3
N3 --> EX["Exemplo resolvido"]
EX --> Q["Exercício EX100"]
Desenho lógico
flowchart LR
N0["34.1 Pontos de integração"]
N1["34.2 Contratos de interface"]
N2["34.3 Testes de ponta a ponta"]
N3["Síntese"]
N0 --> N1 --> N2 --> N3 --> Q["EX100"]
[34.1 Pontos de integração]
|
v
[34.2 Contratos de interface]
|
v
[34.3 Testes de ponta a ponta]
|
v
[Síntese]
|
v
[Exemplo resolvido] --> [Exercício EX100]
Objetivos de aprendizagem
Você vai (1) integrar o serviço de confiança ao faturamento, às operações de campo e ao monitoramento; (2) definir contratos de interface; (3) testar os fluxos de ponta a ponta.
34.1 Pontos de integração
O serviço de confiança toca muitos sistemas: o faturamento verifica as leituras, as operações de campo provisionam medidores substitutos, o monitoramento recebe alertas, o sistema de build solicita assinaturas de firmware e o gerenciamento de identidades controla o acesso da equipe. Aiyana lista cada integração com seus dados, protocolo e autenticação. Ela descobre que a ferramenta portátil das operações de campo precisa solicitar uma nova chave de medidor durante a substituição, o que não tinha sido projetado. A análise de integração revela fluxos ausentes como esse antes da implantação, quando mudar as interfaces ainda é barato. Ela registra cada fluxo numa tabela compartilhada que as equipes donas revisam juntas.
34.2 Contratos de interface
Para cada integração, Aiyana escreve um contrato: formatos de requisição e de resposta, códigos de erro, limites de taxa, método de autenticação e o que acontece quando o tempo se esgota (timeout). O contrato de assinatura diz que o sistema de build envia o digest do manifesto, e não a imagem inteira, e só recebe uma assinatura se dois aprovadores tiverem autorizado a versão. O contrato de provisionamento de chaves diz que as ferramentas portáteis nunca recebem chaves de medidor; elas recebem um blob cifrado que só o elemento seguro do medidor de destino consegue desembrulhar. Os contratos permitem que as equipes trabalhem de forma independente, preservando as propriedades de segurança.
34.3 Testes de ponta a ponta
Aiyana executa testes de ponta a ponta que atravessam todas as integrações: provisionar um medidor substituto, obter uma leitura, verificá-la no faturamento, enviar uma atualização de firmware, revogar o medidor antigo e confirmar que suas leituras são rejeitadas. Os testes rodam num ambiente de homologação (staging) com chaves sintéticas. Um teste revela que o faturamento ainda aceita as leituras do medidor antigo, porque o evento de revogação vai para o monitoramento, mas não para o faturamento. A correção encaminha as revogações por uma fila de mensagens que todos os verificadores assinam. Esses testes rodam antes de cada versão de qualquer sistema conectado.
Exemplo resolvido
Aiyana mapeia cinco integrações, escreve contratos para a assinatura e o provisionamento e descobre, com testes de ponta a ponta, que os eventos de revogação nunca chegavam ao faturamento.
Caso sintético. Os sistemas são inventados.
Erros e limites
Os contratos se desviam se não forem testados automaticamente. Os testes de ponta a ponta são lentos, então mantenha-os focados nos fluxos críticos para a segurança.
Exercícios
-
EX100 — Fluxo ausente. Que fluxo faltava antes da análise de integração? Rubrica: 3 = a ferramenta portátil solicitando uma nova chave de medidor durante a substituição;; 2 = provisionamento;; 1 = vago;; 0 = nenhuma.
-
EX101 — Blob da ferramenta portátil. Por que as ferramentas portáteis recebem um blob cifrado em vez de uma chave? Rubrica: 3 = só o elemento seguro do medidor consegue desembrulhá-lo, então as ferramentas nunca guardam chaves;; 2 = proteger a chave;; 1 = velocidade;; 0 = nenhuma.
-
EX102 — Encaminhamento da revogação. O que os testes de ponta a ponta revelaram sobre a revogação, e o que corrigiu isso? Rubrica: 3 = as revogações chegavam ao monitoramento, mas não ao faturamento; encaminhá-las por uma fila que todos os verificadores assinam;; 2 = só o achado;; 1 = só a correção;; 0 = nenhuma.
Síntese
A integração com contratos explícitos e testes de ponta a ponta faz o serviço de confiança funcionar entre sistemas sem vazar chaves nem perder eventos.
Continue estudando — aula 34 (capítulo 34 de 50)
← Capítulo 33 · Índice das aulas · Capítulo 35 →
Continue para a próxima aula já escrita.