Segurança

Segurança

Copiar página

Segurança do Workflow Trigger Extensions para Shopify Flow: stack em TypeScript, hospedagem no Google Cloud na UE e criptografia dos dados da loja.

O Workflow Trigger Extensions é desenvolvido e operado pela Code Creation Labs. Esta página explica em que consiste o aplicativo, 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. As informações jurídicas (política de privacidade, contrato de tratamento de dados, subcontratados) estão disponíveis 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. Todas as partes do aplicativo, desde as páginas de administração até os workers que processam seus eventos, fazem parte de 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 e armazenamento de arquivos estão localizados nessa região.
Integração com o Shopify Shopify
Suja loja virtual Nada é executado no seu tema. O pixel da web opcional associado ao Acionadores de vitrine é executado dentro da área de testes de pixels do Shopify e só é instalado quando você ativa um gatilho da loja virtual.

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 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 são criptografados em repouso com chaves que gerenciamos no Google Cloud KMS.

Criptografia no nível do campo, como camada adicional. Os valores mais confidenciais recebem uma segunda camada: o token de acesso do Shopify da sua loja e os dados protegidos dos clientes (nomes, endereços de e-mail, números de telefone, endereços postais) lidos pelos gatilhos de dados pessoais com consentimento prévio. Cada registro é criptografado individualmente com AES-256-GCM sob uma chave separada no Cloud KMS, com rotação automática de chaves. Os valores são descriptografados na memória somente no momento em que são necessários, por exemplo, quando um gatilho é acionado, e nunca são gravados em logs. A detecção de alterações nos dados pessoais compara hashes, de modo que o aplicativo pode identificar que um valor foi alterado sem precisar descriptografá-lo.

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

Minimização de dados. O aplicativo não solicita acesso a dados durante a instalação. Todas as permissões são concedidas voluntariamente, limitadas a um único tipo de dado e podem ser revogadas a qualquer momento. Consulte Permissões e acesso aos dados.

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 dados 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. Os webhooks e os callbacks do Shopify Flow são verificados pela assinatura HMAC do Shopify, e as mensagens internas, por identidades assinadas pelo Google, antes que quaisquer dados sejam acessados. Cada evento do Shopify é processado uma única vez, sendo desduplicado por meio de seu ID de evento.
  • Gatilho personalizado. O JavaScript que o senhor mesmo escreve para Gatilhos personalizados é executado em um ambiente isolado (sandbox) com limite de tempo e de memória, em uma infraestrutura separada dos servidores do próprio aplicativo. Ele nunca tem acesso às credenciais do aplicativo nem ao seu token de acesso do Shopify. Seu único meio de acesso à sua loja é um token de curta duração vinculado à sua loja e que expira em menos de um minuto.
  • 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, varredura de vulnerabilidades em dependências e varredura de imagens de contêiner. Nosso critério de lançamento é zero 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.
  • Revisões de segurança. Uma auditoria de segurança automatizada é executada antes de qualquer alteração que envolva autenticação, sessões ou exposição de dados, e realizamos uma revisão interna completa de todas as rotas, caminhos de dados e consultas ao banco 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 statuspage, e os erros nos alertam. Os registros operacionais são mantidos por no máximo 30 dias e nunca contêm tokens, segredos ou dados de clientes.

Retenção e exclusão

  • O histórico de eventos é excluído automaticamente após 30 dias.
  • Os registros que o aplicativo mantém para detectar alterações (o último estado conhecido de um produto, pedido ou cliente) permanecem enquanto o aplicativo estiver instalado, pois é com base neles que a próxima alteração é detectada.
  • Quando o senhor desinstala o aplicativo, o acesso dele à sua loja é excluído imediatamente. A solicitação de remoção/supressão da Shopify, que ocorre 48 horas após a desinstalação, apaga os dados protegidos dos clientes e tudo o que seu gatilho personalizado tenha armazenado.
  • Shopify
  • Os subcontratados e o cronograma completo de retenção de dados constam na privacypolicy. Um contrato de tratamento de dados assinado pode ser solicitado em [workflow-trigger-extensions.app/dpaxml-ph-0004.

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.