Segurança

Segurança

Copiar página

Segurança do Workflow Transactional Email: tecnologia, hospedagem na UE, criptografia de credenciais e dados, e atualizações do app para Shopify Flow.

O Workflow Transactional Email é desenvolvido e operado pela Code Creation Labs. Esta página explica em que o aplicativo se baseia, onde ele é executado, como os dados da sua loja são protegidos e como mantemos tudo atualizado. Ela foi elaborada para proprietários de lojas e para qualquer pessoa que preencha um questionário de segurança. O que o aplicativo armazena e por quanto tempo está descrito em Dados, privacidade e segurança; os aspectos jurídicos (política de privacidade, contrato de tratamento de dados, subcontratados) estão em Informações jurídicas e proteção de dados.

Em que a aplicação se baseia

Camada O que utilizamos
Código do aplicativo TypeScript no Node.js, uma versão atual com suporte de longo prazo. As páginas de administração, o editor de layout e os serviços que executam suas etapas do Shopify Flow compartilham uma única base de código.
Banco de dados e cache PostgreSQL (Google Cloud SQL) e Redis (Google Cloud Memorystore)
Hospedagem Contêineres no Google Kubernetes Engine na região europe-west1 (Bélgica, União Europeia) do Google Cloud. Bancos de dados, caches, armazenamento de arquivos e logs de aplicativos estão localizados nessa região.
Integração com o Shopify As bibliotecas oficiais de aplicativos do Shopify, as ações do Shopify Flow, a API GraphQL do Admin para as permissões opcionais e os webhooks do Shopify
Entrega de e-mails A caixa de correio que o(a) senhor(a) conecta: seu próprio servidor SMTP, o Microsoft 365 ou o Google Workspace. Os e-mails de alerta que o próprio aplicativo envia a o(a) senhor(a) passam pelo Amazon SES em Frankfurt.
Suja loja virtual Nada é executado no seu tema nem no seu checkout.

Não há PHP, WordPress, Java ou qualquer outro ambiente de execução em nenhuma parte do serviço. O aplicativo está listado na App Store da Shopify e foi aprovado na avaliação de aplicativos da Shopify, que abrange os requisitos de segurança da Shopify e de proteção dos dados dos clientes.

Como seus dados são protegidos

Em trânsito. Todas as conexões entre o seu navegador, o Shopify, o seu provedor de e-mail e o aplicativo utilizam o protocolo TLS. O banco de dados e o cache não possuem endereço público: só podem ser acessados de dentro da nossa rede privada.

Em repouso. Todos os bancos de dados e armazenamentos de arquivos são criptografados em repouso com chaves que gerenciamos no Google Cloud KMS.

Criptografia no nível de campo como camada adicional. Tudo o que possa ser utilizado para envio recebe uma segunda camada de proteção: nomes de usuário e senhas SMTP, tokens OAuth do Microsoft 365 e do Google, os segredos que o senhor armazena, o token de acesso do Shopify da sua loja e os endereços da sua lista de cancelamento de assinatura. Cada valor é criptografado individualmente com AES-256-GCM sob uma chave separada no Cloud KMS, com rotação automática de chaves, e descriptografado na memória apenas no momento em que uma ação é executada. Cada descriptografia de um valor protegido é registrada em um registro de acesso interno. Os valores secretos são ocultados do histórico de ações antes de ele ser gravado e nunca são retornados pela API do desenvolvedor nem ao Sidekick.

Segredos. As credenciais e chaves da API do próprio serviço estão armazenadas no Google Secret Manager e são carregadas quando o serviço é iniciado. Elas não constam no código, nem nas imagens de contêiner, nem no pipeline de compilação.

Minimização de dados. O aplicativo é instalado sem acesso aos dados da sua loja. Os dados do cliente chegam a um e-mail apenas porque o senhor os transmite a partir do Shopify Flow. As quatro permissões opcionais (ler o arquivo de um metacampo em um pedido ou cliente, criar um código de desconto exclusivo) são solicitadas no momento, concedidas por meio da caixa de diálogo do próprio Shopify e podem ser revogadas a qualquer momento. Consulte Permissões: o que o aplicativo pode acessar na sua loja.

Quem tem acesso a quê

  • Apenas as suas lojas. Cada registro contém a loja a qual pertence, e cada consulta é restrita à loja que foi autenticada. Uma loja nunca pode ler ou alterar os layouts, remetentes, segredos ou histórico de outra loja.
  • Apenas solicitações verificadas. As páginas no painel de administração do Shopify são autenticadas por meio de tokens de sessão do Shopify. As etapas do Shopify Flow e os webhooks do próprio Shopify são verificados pela assinatura HMAC do Shopify antes que quaisquer dados sejam processados, e uma etapa do Shopify Flow que seja enviada duas vezes é executada apenas uma vez.
  • Conteúdo renderizado. Os layouts são renderizados em nossos servidores e o resultado é sanitizado antes do envio: scripts, manipuladores de eventos, URLs “javascript:”, iframes e elementos de formulário são removidos, de modo que um valor transmitido pelo Shopify Flow não possa se transformar em conteúdo ativo na caixa de entrada de alguém.
  • Solicitações de saída. As URLs às quais o aplicativo se conecta em seu nome - para a ação HTTP Request, para anexos obtidos de uma URL e para arquivos referenciados por um metacampo - são verificadas antes da conexão: endereços de loopback, link-local, metadados na nuvem e de redes privadas são recusados, inclusive por meio de um redirecionamento. Os redirecionamentos são limitados e o tamanho das respostas é restrito.
  • Nossa equipe. O acesso aos sistemas de produção é feito exclusivamente por meio do Google Cloud IAM, com contas individuais. As ferramentas internas de manutenção não estão expostas à internet.

Como mantemos o aplicativo atualizado

  • Todas as alterações são analisadas antes de poderem ser enviadas. O pipeline realiza verificações de tipo e linting, testes estáticos de segurança de aplicativos (SAST), detecção de segredos, análise de vulnerabilidades em dependências e análise de imagens de contêineres. Nosso critério de lançamento é zerar o número de vulnerabilidades conhecidas nas dependências e na imagem.
  • Ambiente de execução e sistema operacional. A imagem do contêiner, o Node.js em sua base Alpine Linux, é recompilada a cada lançamento, de modo que as correções para o ambiente de execução e o sistema operacional são fornecidas continuamente. A plataforma gerenciada do Kubernetes mantém os nós subjacentes atualizados.
  • Plataforma Shopify. Acompanhamos as versões da API do Shopify e os alertas de segurança relativos às bibliotecas de aplicativos do Shopify, e aplicamos as atualizações imediatamente. O aplicativo é executado em uma versão atual da API de administração.
  • Avaliações de segurança. Realizamos uma avaliação interna completa de todas as rotas, caminhos de dados e consultas a bancos de dados em intervalos regulares, tendo a mais recente ocorrido em outubro de 2026.
  • Monitoramento. A disponibilidade é monitorada 24 horas por dia e divulgada em nossa statuspágina, e os erros nos alertam. Os registros operacionais são armazenados na mesma região da UE, mantidos por no máximo 30 dias e nunca contêm credenciais ou informações confidenciais.

Retenção e exclusão

  • O histórico de ações, que registra o que foi enviado e, portanto, constitui dados do cliente, é excluído automaticamente após 30 dias.
  • A desinstalação exclui tudo: layouts, remetentes, segredos, histórico, a lista de cancelamento de inscrição e os arquivos enviados, de forma imediata e irrecuperável.
  • As solicitações de privacidade obrigatórias do Shopify (clientes/data_request, clientes/redact e shop/redact) são processadas automaticamente dentro dos prazos estabelecidos pelo Shopify, incluindo a inclusão de um cliente na lista de cancelamento de inscrição.
  • A tabela completa com as informações armazenadas encontra-se em Dados, privacidade e segurança. Os subcontratados e o cronograma de retenção constam na privacye. Um contrato de tratamento de dados assinado pode ser solicitado em workflow-transactional-email.app/dpa.

Como relatar um problema de segurança

Caso acredite ter encontrado uma vulnerabilidade ou precise que um questionário de segurança seja preenchido, envie um e-mail para support@codecreationlabs.com. Os relatórios de segurança são analisados e respondidos com prioridade.