Skip to main content
O armazenamento de produção do CaseBender é de propriedade do cliente e provisionado externamente. A aplicação executa apenas operações de data-plane de objetos. Ela nunca cria, exclui ou configura um bucket ou contêiner em tempo de execução.

Status da release atual

A autoridade legível por máquina é scripts/storage/certification-matrix.json:
O repositório possui resultados de emulador, mas a compatibilidade com emulador não é certificação live. A certificação live atual do ODF/Ceph RGW está pendente de credenciais fornecidas pelo cliente e de evidência de versão exata. O perfil está configurado e pronto para qualificação, não certificado.
“Implementado” significa que existe um adaptador para operações de objeto. “Declarado como suportado” significa que a matriz da release seleciona um perfil de produto para um gate de suporte. “Certificado” exige, adicionalmente, evidência live completa e assinada para o produto e a versão exatos. Nunca infira certificação a partir de um nome de adaptador, execução de emulador, renderização do Kubernetes ou resultado de outro cliente.

Contrato de configuração

Use um STORAGE_CONFIG_FILE montado (preferencial) ou STORAGE_CONFIG_JSON com três perfis: quarantine, records e ephemeral. A ponte legada de perfil único usa apenas estes IDs canônicos de provedor e variáveis:
  • s3: S3_BUCKET, AWS_REGION, S3_ENDPOINT HTTPS opcional
  • gcs: GCS_BUCKET, GCS_PROJECT_ID opcional
  • azure: AZURE_STORAGE_ACCOUNT, AZURE_CONTAINER
  • local: STORAGE_PATH, somente fora de produção
azure-blob, AWS_S3_BUCKET e AZURE_STORAGE_CONTAINER não são nomes válidos em tempo de execução. A produção rejeita configuração de armazenamento explícita ausente, perfis local e endpoints HTTP personalizados. Use identidade de carga de trabalho ou a cadeia de credenciais padrão do provedor. Chaves estáticas do S3, arquivos de chave do GCS, chaves compartilhadas do Azure e connection strings do Azure são apenas modos de compatibilidade. Armazene quaisquer credenciais no gerenciador de segredos da plataforma; nunca as coloque em código-fonte, ConfigMaps, imagens, histórico do shell, logs, evidências ou pacotes de suporte.

Limite obrigatório de produção

  • Use buckets ou contêineres externos pré-criados, sem acesso público.
  • Separe quarentena, records duráveis e objetos efêmeros para que retenção, scanner e política de expiração possam diferir.
  • Mantenha a verificação TLS habilitada; monte bundles de CA privada quando necessário.
  • Exija criptografia em repouso e em trânsito, versionamento, backups e verificação SHA-256 da aplicação.
  • Habilite e qualifique os controles de retenção/legal-hold quando a implantação exigir WORM. Versões exatas de objeto são obrigatórias para operações de retenção e hold.
  • Não habilite geração de URL assinada, URL pré-assinada ou SAS. Os downloads passam pela autorização autenticada do CaseBender.
  • Configure o clamd externo; os uploads do usuário permanecem em quarentena e indisponíveis quando a varredura não puder produzir um veredito limpo terminal.
  • Monitore prontidão, idade do canário profundo, dead letters de mutação, idade da quarentena, objetos ausentes, órfãos confirmados, falhas de checksum, latência e capacidade.
Consulte Linha de base de segurança do armazenamento e Saúde e solução de problemas do armazenamento.

Qualificação e controle de mudanças

Valide a partir da mesma rede, identidade, endpoint e contexto de CA dos workloads web e worker. Reexecute a qualificação após um upgrade do CaseBender, upgrade do provedor, alteração de política de bucket, rotação de credenciais, rotação de CA, alteração de política de rede ou alteração de WORM.
A validação live específica do provedor e a evidência assinada são exigidas além dos testes do repositório. Consulte Seleção e certificação de provedor e Certificação compatível com S3.

Referências de ciclo de vida