Pesquisar
Projeto exclusivo

Desenvolver um sistema web seguro, anônimo e automatizado

hoje às 16:28

Descrição do Projeto:

1. Visão Geral do Projeto
Desenvolver um sistema web seguro, anônimo e automatizado para a consultoria V.E.S., com duas funcionalidades independentes:
Análise de Riscos Psicossociais: Questionário para diagnóstico.
Canal para Solução de Conflitos: Formulário para registro anônimo.
Diretriz Principal: O sistema deve ser construído sob o princípio de "segurança por design" (security by design). O anonimato do colaborador e a integridade dos dados são inegociáveis. O fluxo de envio em duas etapas, onde o usuário recebe o protocolo de comprovação antes da submissão final, é um requisito mandatório.
2. Arquitetura Geral
Frontend: HTML Service do Google Apps Script (Interface do usuário).
Backend & Automação: Google Apps Script (Lógica, processamento, segurança).
Banco de Dados: Google Sheets (Armazenamento dos dados processados e anonimizados).
Visualização (BI): Google Looker Studio (Dashboards para o cliente final).
Segurança Adicional: O projeto Apps Script deve ser associado a um projeto Google Cloud Platform (GCP) para gerenciamento avançado de segurança e APIs.
3. Requisitos Técnicos e de Segurança Obrigatórios
A implementação deve seguir estritamente os pontos abaixo.
A — Fluxo de Coleta em Duas Etapas (HTML Service)
A interface não será um Google Form, mas sim um App da Web (doGet) construído com HTML Service.
Etapa 1 (Gerar Protocolo): O usuário preenche o formulário e clica no primeiro botão. O script deve:
Gerar um token/protocolo único, imprevisível e com tempo de expiração (ex: 30 minutos).
Criptografar o payload (as respostas) usando uma chave segura.
Salvar os dados temporariamente em uma aba de "submissões pendentes" (PendingSubmissions) na planilha, contendo: protocolo, payload_criptografado, timestamp, expiracao.
Exibir uma página de confirmação ao usuário com o protocolo/QR Code.
Etapa 2 (Confirmar Envio): O usuário clica no segundo botão. O script deve:
Recuperar o registro pendente pelo protocolo.
Validar se o token não expirou e se é de uso único.
Descriptografar o payload.
Salvar os dados finais e anonimizados na planilha principal (Dados Consolidados PGR ou Log de Conflitos).
Excluir o registro da aba PendingSubmissions.
Utilizar LockService para prevenir condições de corrida (race conditions) durante a confirmação.
B — Criptografia e Gerenciamento de Chaves
O payload temporário na aba PendingSubmissions DEVE ser armazenado de forma criptografada (AES).
A chave de criptografia NÃO PODE estar no código. Ela deve ser armazenada de forma segura usando PropertiesService ou, preferencialmente, o Google Secret Manager associado ao projeto GCP.
C — Proteção do Endpoint e Mitigação de Abusos
Implementar Rate Limiting para limitar o número de tentativas de geração de protocolo por um mesmo IP em um curto espaço de tempo.
A implementação de Google reCAPTCHA v3 no formulário HTML é recomendada para mitigar o risco de bots e scraping.
D — Minimização de Metadados e LGPD
O sistema NÃO PODE, em nenhuma hipótese, salvar na planilha final dados como timestamp exato da submissão, endereço de IP ou User-Agent.
A comunicação com o cliente final (contrato) deve deixar claro que logs do provedor (Google) existem e estão fora do nosso controle, mas que o aplicativo em si não armazena esses dados.
Incluir um banner de consentimento no formulário HTML.
E — Segurança da Conta e do Projeto
A conta Google proprietária do projeto DEVE ter autenticação de dois fatores (2FA) ativada.
O projeto Apps Script deve ser associado a um projeto GCP para permitir auditoria, uso do Secret Manager e Cloud Logging.
O acesso às planilhas de banco de dados deve ser restrito ao mínimo de pessoas possível (idealmente, apenas a conta de serviço).
4. Requisitos Adicionais de Segurança (Para o Dashboard)
Regra de Anonimato para Grupos Pequenos: No Dashboard do Looker Studio (Painel de Riscos Psicossociais), qualquer filtro por "Setor" ou "Departamento" deve ser configurado com uma regra de segurança.
Lógica: O dashboard só pode exibir os dados de um setor específico se houver um mínimo de 5 (cinco) respostas registradas para aquele setor na planilha.
Se houver menos de 5 respostas, o dashboard deve exibir uma mensagem padrão, como "Dados insuficientes para exibição anônima deste setor."
5. Checklist de Entrega e Critérios de Aceitação
O pagamento final só será liberado após a entrega e validação dos seguintes itens:
[ ] Funcionalidade Completa: App da Web funcional com o fluxo de duas etapas para ambos os serviços (Análise e Conflitos).
[ ] Criptografia Implementada: Prova de que os dados temporários estão sendo salvos de forma criptografada.
[ ] Segurança do Protocolo: Demonstração de que o protocolo expira e é de uso único (tentativas de "replay" falham).
[ ] Anonimato Garantido: Verificação de que nenhum dado de identificação pessoal ou metadado sensível é salvo na base de dados final.ra
**[ ] Reg
nt

Habilidades desejadas:

Google Apps Google Sheets

Atividades do cliente nesse projeto:

Última visualização: hoje às 19:12

Tem dúvidas? Faça uma pergunta.

ou

Enviar proposta

Informações adicionais

Categoria: Web, Mobile & Software
Subcategoria: Desenvolvimento Web
Orçamento: Aberto
Nível de experiência: Iniciante
Visibilidade: Público
Propostas: 7
Interessados: 12
Tempo restante:
Valor Mínimo: R$ 50,00
Propostas (7)
  • Freelancer novo Promovida Aceita Aceita Rejeitada

    Submetido: | Oferta: Privado | Duração estimada: Privado

  • Freelancer novo Promovida Aceita Aceita Rejeitada

    Submetido: | Oferta: Privado | Duração estimada: Privado

  • Freelancer novo Promovida Aceita Aceita Rejeitada

    Submetido: | Oferta: Privado | Duração estimada: Privado

  • Freelancer novo Promovida Aceita Aceita Rejeitada

    Submetido: | Oferta: Privado | Duração estimada: Privado

  • Freelancer novo Promovida Aceita Aceita Rejeitada

    Submetido: | Oferta: Privado | Duração estimada: Privado

  • Freelancer novo Promovida Aceita Aceita Rejeitada

    Submetido: | Oferta: Privado | Duração estimada: Privado

  • Freelancer novo Promovida Aceita Aceita Rejeitada

    Submetido: | Oferta: Privado | Duração estimada: Privado

Nenhuma proposta foi encontrada.

Carregando...
Projetos semelhantes no 99Freelas

Ajustes - Laravel e React - Estamos em busca de um desenvolvedor comprometido e experiente para realizar alguns pequenos ajustes em um projeto já existente. O backend é desenvolvido em Laravel e o frontend em Re...

Criação de site One Page profissional responsivo - Preciso de um site One Page profissional com captura de leads, moderno, elegante e responsivo (desktop e mobile). O objetivo do site é transmitir autoridade e profissionalismo, além ...

Desenvolvimento de site de roupas - Preciso do desenvolvimento de um site de roupas, contendo: • Página inicial (Home), com listagem de produtos, exibição de novidades e promoções. • Uma...

Atualização de site e e-commerce - Gostaria de uma atualização do meu site e do meu e-commerce. Já tenho um site, mas gostaria de uma reformulação total.

Desenvolvimento de landing page institucional de alta conversão - O projeto consiste no desenvolvimento de uma landing page institucional de alta conversão. O objetivo é apresentar de forma clara a tecnologia, diferenciais, benefícios e uma c...

Carregando...

Carregando...

Pesquisar

FREELANCERS
PROJETOS
Ocorreu um erro inesperado. Caso o erro persista, entre em contato conosco através do e-mail suporte@99freelas.com.br.