Segurança & Integração com Keychain
Saiba como o HarborDB usa o Keychain do macOS e recursos de segurança para proteger suas credenciais e dados do banco de dados
Segurança & Integração com Keychain
Bem-vindo ao guia de segurança do HarborDB. Este recurso abrangente explica como o HarborDB aproveita os recursos de segurança do macOS—especialmente o Keychain—para manter suas credenciais e dados do banco de dados seguros. Se você está trabalhando com bancos de dados de desenvolvimento locais ou servidores de produção, entender esses recursos de segurança é essencial para proteger informações sensíveis.
Por que a Segurança Importa
Conexões de banco de dados geralmente contêm informações sensíveis:
- Nomes de usuário e senhas para servidores PostgreSQL
- Detalhes da conexão incluindo nomes de host e portas
- Resultados de consultas que podem conter dados confidenciais
- Arquivos de exportação com informações críticas para o negócio
O HarborDB é projetado com segurança como um princípio central, usando tecnologias nativas do macOS para fornecer proteção de nível empresarial sem comprometer a usabilidade.
Keychain do macOS: Seu Cofre Digital
O que é o Keychain?
O Keychain é o sistema de gerenciamento de senhas integrado do macOS. Pense nele como um cofre digital onde o macOS armazena:
- Senhas para aplicativos e sites
- Chaves de criptografia para comunicações seguras
- Certificados para verificação de identidade
- Notas seguras para informações sensíveis
Como o Keychain Protege Seus Dados
- Criptografia em Repouso: Todos os dados do Keychain são criptografados usando criptografia AES-256
- Controles de Acesso: Cada aplicativo deve solicitar permissão para acessar itens do Keychain
- Isolamento de Usuário: Itens do Keychain estão vinculados à sua conta de usuário
- Bloqueio Automático: O Keychain é bloqueado quando seu Mac hiberna ou é bloqueado
HarborDB e Integração com Keychain
Armazenamento Automático de Senhas
Quando você salva uma conexão no HarborDB:
- A senha é extraída das configurações da conexão
- Criptografada e armazenada no Keychain do seu usuário
- O arquivo de conexão salva apenas informações não sensíveis
- Na próxima conexão, o HarborDB recupera a senha do Keychain
O que é Armazenado Onde
| Local de Armazenamento | O que é Armazenado | Nível de Segurança | | ----------------------------- | --------------------------------------- | -------------------------------- | | Keychain do macOS | Apenas senhas | 🔒 Máximo (AES-256) | | Arquivo de Conexão | Host, porta, banco de dados, nome de usuário | 🔐 Médio (Permissões de arquivo) | | Memória do Aplicativo | Senhas descriptografadas durante a sessão | 🔐 Alto (Criptografia de RAM) | | Cache em Disco | Resultados de consultas, arquivos temporários | 🔐 Médio (FileVault) |
Estrutura do Item do Keychain
Cada conexão do HarborDB cria um item do Keychain com:
- Nome do Serviço:
HarborDB - Nome da Conta:
connection:[nome_da_conexão] - Senha: Sua senha PostgreSQL criptografada
- Grupo de Acesso: Limitado ao aplicativo HarborDB
Melhores Práticas de Segurança
1. Gerenciamento de Senhas
Faça:
- ✅ Use senhas fortes e únicas para cada banco de dados
- ✅ Altere senhas periodicamente (a cada 90 dias)
- ✅ Use gerenciadores de senhas para segurança adicional
- ✅ Habilite autenticação de dois fatores onde possível
Não Faça:
- ❌ Reutilize senhas em diferentes servidores
- ❌ Armazene senhas em arquivos de texto simples
- ❌ Compartilhe senhas do Keychain com outras pessoas
- ❌ Use senhas simples ou padrão
2. Segurança de Conexão
Bancos de Dados Locais:
Host: localhost ou 127.0.0.1
SSL: Opcional (loopback é seguro)
Keychain: Recomendado
Servidores de Desenvolvimento:
Host: dev-db.internal
SSL: Preferir ou Exigir
Keychain: Obrigatório
Firewall: Restringir à rede interna
Servidores de Produção:
Host: prod-db.example.com
SSL: Exigir ou Verificar-Completo
Keychain: Obrigatório
VPN: Recomendado para acesso
3. Segurança de Arquivos
- Armazene arquivos de conexão em locais seguros
- Use FileVault para criptografia de disco completo
- Faça backup regularmente do Keychain (via Time Machine)
- Proteja pastas de exportação com permissões apropriadas
Touch ID e Integração Biométrica
Usando Touch ID com HarborDB
Se seu Mac tiver Touch ID (ou Face ID em modelos mais novos), você pode aumentar a segurança:
- Habilite Touch ID para Keychain em Configurações do Sistema
- O HarborDB solicitará impressão digital ao acessar senhas
- Fallback para senha se a biometria falhar
Configurando Autenticação Biométrica
- Abra Configurações do Sistema → Touch ID & Senha
- Adicione suas impressões digitais (até 3)
- Marque "Keychain" na lista de usos
- Reinicie o HarborDB para que as alterações tenham efeito
Benefícios da Integração Biométrica
- Conveniência: Não precisa digitar a senha mestra
- Segurança: Única para você (não pode ser compartilhada)
- Velocidade: Mais rápido que a entrada de senha
- Rastro de auditoria: Cada acesso é identificado exclusivamente
FileVault e Criptografia de Disco
O que é FileVault?
FileVault é o recurso de criptografia de disco completo do macOS:
- Criptografa todo o disco de inicialização
- Protege dados em repouso
- Transparente para aplicativos
- Obrigatório para alguns padrões de conformidade
Habilitando FileVault
- Abra Configurações do Sistema → Privacidade & Segurança
- Clique em FileVault
- Clique em Ativar
- Escolha o método de recuperação (iCloud ou chave de recuperação)
- Aguarde a conclusão da criptografia (processo em segundo plano)
Como o FileVault Protege os Dados do HarborDB
Com o FileVault habilitado:
- Arquivos de conexão são criptografados em disco
- Arquivos de exportação são protegidos
- Arquivos temporários não podem ser recuperados
- Arquivos de cache são seguros mesmo se o Mac for roubado
Segurança de Rede (SSL/TLS)
Entendendo SSL/TLS
SSL (Secure Sockets Layer) e TLS (Transport Layer Security) criptografam dados em trânsito:
HarborDB (macOS) → Túnel Criptografado → Servidor PostgreSQL
Modos SSL no HarborDB
| Modo | Nível de Segurança | Caso de Uso | | --------------- | ------------------ | ------------------------------ | | Desabilitar | ❌ Nenhum | Apenas desenvolvimento local | | Permitir | ⚠️ Baixo | Preferir não criptografado | | Preferir | ✅ Médio | Padrão para a maioria dos casos | | Exigir | ✅ Alto | Servidores remotos | | Verificar-CA| ✅✅ Alto | Verificar autoridade certificadora | | Verificar-Completo | ✅✅✅ Mais Alto | Validação completa de certificado |
Configurando SSL no HarborDB
- Edite a conexão no HarborDB
- Selecione o Modo SSL no menu suspenso
- Importe certificados se estiver usando Verificar-Completo
- Teste a conexão para verificar o handshake SSL
Gerenciamento de Certificados
Para ambientes empresariais:
- Importe certificados CA no Acesso ao Keychain
- Use certificados de cliente para TLS mútuo
- Configure alertas de expiração de certificados
- Atualize regularmente certificados revogados
Solução de Problemas Comuns
Problemas de Acesso ao Keychain
"HarborDB não pode acessar o Keychain"
-
Verifique permissões:
# Abra o Acesso ao Keychain open /Applications/Utilities/Keychain\ Access.app -
Redefina permissões do HarborDB:
- Exclua e adicione novamente a conexão
- Conceda permissão quando solicitado
-
Repare o Keychain:
- Abra o Acesso ao Keychain
- Selecione o keychain "Login"
- Arquivo → "Primeiros Socorros do Keychain"
"Senha não encontrada no Keychain"
- Verifique se o nome da conexão não mudou
- Verifique múltiplos Keychains (Login, Sistema, iCloud)
- Reconstrua o índice do Keychain:
security delete-keychain ~/Library/Keychains/login.keychain-db # Será recriado no próximo login
Problemas de Conexão SSL
"Falha no Handshake SSL"
-
Verifique a configuração SSL do PostgreSQL:
# Em postgresql.conf ssl = on ssl_cert_file = 'server.crt' ssl_key_file = 'server.key' -
Verifique a validade do certificado:
openssl x509 -in server.crt -text -noout -
Tente um modo SSL diferente (Exigir → Preferir)
Problemas Gerais de Segurança
Erros "Permissão Negada"
-
Verifique permissões de arquivo:
ls -la ~/Library/Application\ Support/HarborDB/ -
Redefina permissões do HarborDB:
- Mova o arquivo de preferências
- Reinicie o HarborDB
-
Verifique permissões de disco:
diskutil verifyVolume /
Recursos Avançados de Segurança
Configuração Personalizada do Keychain
Para usuários avançados:
-
Crie um Keychain dedicado para o HarborDB:
security create-keychain -P harbor.keychain security set-keychain-settings harbor.keychain -
Configure timeout mais curto para conexões sensíveis:
security set-keychain-settings -t 300 harbor.keychain -
Bloqueie o Keychain quando não estiver em uso:
security lock-keychain harbor.keychain
Auditoria e Monitoramento
-
Habilite registro de conexão em Preferências
-
Revise logs de acesso ao Keychain:
log show --predicate 'subsystem == "com.apple.security"' -
Configure alertas para conexões falhadas
-
Revise regularmente logs de acesso a arquivos exportados
Considerações de Conformidade
Conformidade GDPR/CCPA:
- Criptografia de dados pessoais em repouso e em trânsito
- Registro de acesso e trilhas de auditoria
- Políticas de retenção de dados para exportações
Conformidade HIPAA:
- Criptografia de disco completo (FileVault)
- Timeout de sessão para conexões inativas
- Exclusão segura de arquivos temporários
Conformidade PCI DSS:
- Nunca armazene números de cartão de crédito em consultas
- Mascare dados sensíveis em exportações
- Avaliações de segurança regulares
Lista de Verificação de Segurança
Práticas Diárias
- [ ] Bloqueie o Mac ao se afastar
- [ ] Verifique a segurança da conexão antes de usar
- [ ] Verifique se há atualizações de segurança do macOS
- [ ] Revise tentativas de conexão recentes
Práticas Semanais
- [ ] Revise locais de arquivos exportados
- [ ] Verifique o Keychain por entradas desatualizadas
- [ ] Verifique se o FileVault está ativo
- [ ] Faça backup das configurações de segurança
Práticas Mensais
- [ ] Rotacione senhas do banco de dados
- [ ] Revise certificados SSL
- [ ] Faça auditoria de permissões de conexão
- [ ] Teste procedimentos de recuperação de desastres
Obtendo Ajuda
Incidentes de Segurança
Se você suspeitar de um problema de segurança:
-
Ações imediatas:
- Altere senhas do banco de dados afetadas
- Revogue certificados comprometidos
- Habilite registro adicional
-
Contate o suporte com:
- Período do incidente
- Conexões afetadas
- Quaisquer mensagens de erro
- Passos já tomados
Consultoria de Segurança
Para necessidades de segurança empresarial:
- Avaliações de segurança personalizadas
- Orientação de conformidade (GDPR, HIPAA, PCI DSS)
- Integração com sistemas de segurança corporativos
- Treinamento para membros da equipe
Recursos Adicionais
- Guia de Segurança da Plataforma Apple
- Documentação de Segurança do PostgreSQL
- Guia de Suporte do HarborDB
- Recursos de Segurança do macOS
A segurança é uma responsabilidade compartilhada. Ao entender e usar corretamente os recursos de segurança do macOS com o HarborDB, você cria uma defesa robusta contra violações de dados e acesso não autorizado. Lembre-se: boas práticas de segurança se tornam hábitos que protegem seus dados todos os dias.
Última atualização: {{current_date}}
Isso foi útil?
Ajude-nos a melhorar esta documentação fornecendo feedback.