Seguridad e Integración con Keychain
Aprenda cómo HarborDB usa Keychain de macOS y características de seguridad para proteger sus credenciales y datos de base de datos
Seguridad e Integración con Keychain
Bienvenido a la guía de seguridad de HarborDB. Este recurso integral explica cómo HarborDB aprovecha las características de seguridad de macOS, especialmente Keychain, para mantener seguras sus credenciales y datos de base de datos. Ya sea que trabaje con bases de datos de desarrollo local o servidores de producción, comprender estas características de seguridad es esencial para proteger información sensible.
Por qué Importa la Seguridad
Las conexiones de base de datos a menudo contienen información sensible:
- Nombres de usuario y contraseñas para servidores PostgreSQL
- Detalles de conexión incluyendo nombres de host y puertos
- Resultados de consultas que pueden contener datos confidenciales
- Archivos de exportación con información crítica para el negocio
HarborDB está diseñado con la seguridad como principio central, utilizando tecnologías nativas de macOS para proporcionar protección de nivel empresarial sin comprometer la usabilidad.
Keychain de macOS: Su Caja Fuerte Digital
¿Qué es Keychain?
Keychain es el sistema de gestión de contraseñas incorporado en macOS. Piense en él como una caja fuerte digital donde macOS almacena:
- Contraseñas para aplicaciones y sitios web
- Claves de cifrado para comunicaciones seguras
- Certificados para verificación de identidad
- Notas seguras para información sensible
Cómo Keychain Protege Sus Datos
- Cifrado en Reposo: Todos los datos de Keychain están cifrados usando cifrado AES-256
- Controles de Acceso: Cada aplicación debe solicitar permiso para acceder a elementos de Keychain
- Aislamiento de Usuario: Los elementos de Keychain están vinculados a su cuenta de usuario
- Bloqueo Automático: Keychain se bloquea cuando su Mac se suspende o bloquea
HarborDB e Integración con Keychain
Almacenamiento Automático de Contraseñas
Cuando guarda una conexión en HarborDB:
- La contraseña se extrae de la configuración de conexión
- Se cifra y almacena en el Keychain de su usuario
- El archivo de conexión guarda solo información no sensible
- En la próxima conexión, HarborDB recupera la contraseña de Keychain
Qué Se Almacena Dónde
| Ubicación de Almacenamiento | Qué Se Almacena | Nivel de Seguridad | | --------------------------- | ------------------------------------ | ----------------------------- | | Keychain de macOS | Solo contraseñas | 🔒 Máximo (AES-256) | | Archivo de Conexión | Host, puerto, base de datos, usuario | 🔐 Medio (Permisos de archivo) | | Memoria de Aplicación | Contraseñas descifradas durante sesión | 🔐 Alta (Cifrado de RAM) | | Caché de Disco | Resultados de consultas, archivos temporales | 🔐 Medio (FileVault) |
Estructura del Elemento de Keychain
Cada conexión de HarborDB crea un elemento de Keychain con:
- Nombre del Servicio:
HarborDB - Nombre de Cuenta:
connection:[nombre_conexión] - Contraseña: Su contraseña PostgreSQL cifrada
- Grupo de Acceso: Limitado a la aplicación HarborDB
Mejores Prácticas de Seguridad
1. Gestión de Contraseñas
Hacer:
- ✅ Usar contraseñas fuertes y únicas para cada base de datos
- ✅ Cambiar contraseñas periódicamente (cada 90 días)
- ✅ Usar gestores de contraseñas para seguridad adicional
- ✅ Habilitar autenticación de dos factores donde sea posible
No Hacer:
- ❌ Reutilizar contraseñas en diferentes servidores
- ❌ Almacenar contraseñas en archivos de texto plano
- ❌ Compartir contraseñas de Keychain con otros
- ❌ Usar contraseñas simples o predeterminadas
2. Seguridad de Conexión
Bases de Datos Locales:
Host: localhost o 127.0.0.1
SSL: Opcional (loopback es seguro)
Keychain: Recomendado
Servidores de Desarrollo:
Host: dev-db.internal
SSL: Preferir o Requerir
Keychain: Requerido
Firewall: Restringir a red interna
Servidores de Producción:
Host: prod-db.example.com
SSL: Requerir o Verify-Full
Keychain: Requerido
VPN: Recomendado para acceso
3. Seguridad de Archivos
- Almacenar archivos de conexión en ubicaciones seguras
- Usar FileVault para cifrado de disco completo
- Respaldar regularmente Keychain (a través de Time Machine)
- Proteger carpetas de exportación con permisos apropiados
Touch ID e Integración Biométrica
Usando Touch ID con HarborDB
Si su Mac tiene Touch ID (o Face ID en modelos más nuevos), puede mejorar la seguridad:
- Habilitar Touch ID para Keychain en Configuración del Sistema
- HarborDB solicitará huella digital al acceder a contraseñas
- Alternativa con contraseña si falla la biometría
Configurar Autenticación Biométrica
- Abra Configuración del Sistema → Touch ID y Contraseña
- Agregue sus huellas digitales (hasta 3)
- Marque "Keychain" en la lista de usos
- Reinicie HarborDB para que los cambios surtan efecto
Beneficios de la Integración Biométrica
- Conveniencia: No necesita escribir contraseña maestra
- Seguridad: Única para usted (no se puede compartir)
- Velocidad: Más rápido que ingresar contraseña
- Traza de auditoría: Cada acceso se identifica únicamente
FileVault y Cifrado de Disco
¿Qué es FileVault?
FileVault es la característica de cifrado de disco completo de macOS:
- Cifra todo el disco de inicio
- Protege datos en reposo
- Transparente para aplicaciones
- Requerido para algunos estándares de cumplimiento
Habilitar FileVault
- Abra Configuración del Sistema → Privacidad y Seguridad
- Haga clic en FileVault
- Haga clic en Activar
- Elija método de recuperación (iCloud o clave de recuperación)
- Espere a que complete el cifrado (proceso en segundo plano)
Cómo FileVault Protege los Datos de HarborDB
Con FileVault habilitado:
- Archivos de conexión están cifrados en disco
- Archivos de exportación están protegidos
- Archivos temporales no se pueden recuperar
- Archivos de caché están seguros incluso si roban el Mac
Seguridad de Red (SSL/TLS)
Entendiendo SSL/TLS
SSL (Secure Sockets Layer) y TLS (Transport Layer Security) cifran datos en tránsito:
HarborDB (macOS) → Túnel Cifrado → Servidor PostgreSQL
Modos SSL en HarborDB
| Modo | Nivel de Seguridad | Caso de Uso | | --------------- | ------------------ | ----------------------------- | | Deshabilitar | ❌ Ninguno | Solo desarrollo local | | Permitir | ⚠️ Bajo | Preferir no cifrado | | Preferir | ✅ Medio | Predeterminado para la mayoría de casos | | Requerir | ✅ Alto | Servidores remotos | | Verificar-CA | ✅✅ Alto | Verificar autoridad certificadora | | Verificar-Completo | ✅✅✅ Más alto | Validación completa de certificado |
Configurar SSL en HarborDB
- Editar conexión en HarborDB
- Seleccionar Modo SSL del menú desplegable
- Importar certificados si usa Verificar-Completo
- Probar conexión para verificar handshake SSL
Gestión de Certificados
Para entornos empresariales:
- Importar certificados CA en Acceso a Keychain
- Usar certificados de cliente para TLS mutuo
- Configurar alertas de expiración de certificados
- Actualizar regularmente certificados revocados
Solución de Problemas Comunes
Problemas de Acceso a Keychain
"HarborDB no puede acceder a Keychain"
-
Verificar permisos:
# Abrir Acceso a Keychain open /Applications/Utilities/Keychain\ Access.app -
Restablecer permisos de HarborDB:
- Eliminar y volver a agregar conexión
- Otorgar permiso cuando se solicite
-
Reparar Keychain:
- Abrir Acceso a Keychain
- Seleccionar keychain "Login"
- Archivo → "Reparar Keychain"
"Contraseña no encontrada en Keychain"
- Verificar que el nombre de conexión no haya cambiado
- Verificar múltiples Keychains (Login, System, iCloud)
- Reconstruir índice de Keychain:
security delete-keychain ~/Library/Keychains/login.keychain-db # Se recreará en el siguiente inicio de sesión
Problemas de Conexión SSL
"Falló el Handshake SSL"
-
Verificar configuración SSL de PostgreSQL:
# En postgresql.conf ssl = on ssl_cert_file = 'server.crt' ssl_key_file = 'server.key' -
Verificar validez del certificado:
openssl x509 -in server.crt -text -noout -
Probar modo SSL diferente (Requerir → Preferir)
Problemas Generales de Seguridad
Errores "Permiso Denegado"
-
Verificar permisos de archivo:
ls -la ~/Library/Application\ Support/HarborDB/ -
Restablecer permisos de HarborDB:
- Mover archivo de preferencias
- Reiniciar HarborDB
-
Verificar permisos de disco:
diskutil verifyVolume /
Características Avanzadas de Seguridad
Configuración Personalizada de Keychain
Para usuarios avanzados:
-
Crear Keychain dedicado para HarborDB:
security create-keychain -P harbor.keychain security set-keychain-settings harbor.keychain -
Establecer tiempo de espera más corto para conexiones sensibles:
security set-keychain-settings -t 300 harbor.keychain -
Bloquear Keychain cuando no esté en uso:
security lock-keychain harbor.keychain
Auditoría y Monitoreo
-
Habilitar registro de conexiones en Preferencias
-
Revisar registros de acceso a Keychain:
log show --predicate 'subsystem == "com.apple.security"' -
Configurar alertas para conexiones fallidas
-
Revisar regularmente registros de acceso a archivos exportados
Consideraciones de Cumplimiento
Cumplimiento GDPR/CCPA:
- Cifrado de datos personales en reposo y en tránsito
- Registro de acceso y trazas de auditoría
- Políticas de retención de datos para exportaciones
Cumplimiento HIPAA:
- Cifrado de disco completo (FileVault)
- Tiempo de espera de sesión para conexiones inactivas
- Eliminación segura de archivos temporales
Cumplimiento PCI DSS:
- Nunca almacenar números de tarjetas de crédito en consultas
- Enmascarar datos sensibles en exportaciones
- Evaluaciones de seguridad regulares
Lista de Verificación de Seguridad
Prácticas Diarias
- [ ] Bloquear Mac al alejarse
- [ ] Verificar seguridad de conexión antes de usar
- [ ] Buscar actualizaciones de seguridad de macOS
- [ ] Revisar intentos de conexión recientes
Prácticas Semanales
- [ ] Revisar ubicaciones de archivos exportados
- [ ] Verificar Keychain por entradas obsoletas
- [ ] Confirmar que FileVault está activo
- [ ] Respaldar configuraciones de seguridad
Prácticas Mensuales
- [ ] Rotar contraseñas de base de datos
- [ ] Revisar certificados SSL
- [ ] Auditar permisos de conexión
- [ ] Probar procedimientos de recuperación de desastres
Obteniendo Ayuda
Incidentes de Seguridad
Si sospecha un problema de seguridad:
-
Acciones inmediatas:
- Cambiar contraseñas de base de datos afectadas
- Revocar certificados comprometidos
- Habilitar registro adicional
-
Contactar soporte con:
- Período de tiempo del incidente
- Conexiones afectadas
- Cualquier mensaje de error
- Pasos ya tomados
Consultoría de Seguridad
Para necesidades de seguridad empresarial:
- Evaluaciones de seguridad personalizadas
- Guía de cumplimiento (GDPR, HIPAA, PCI DSS)
- Integración con sistemas de seguridad corporativos
- Entrenamiento para miembros del equipo
Recursos Adicionales
- Guía de Seguridad de Plataforma Apple
- Documentación de Seguridad de PostgreSQL
- Guía de Soporte de HarborDB
- Características de Seguridad de macOS
La seguridad es una responsabilidad compartida. Al comprender y usar adecuadamente las características de seguridad de macOS con HarborDB, crea una defensa robusta contra violaciones de datos y accesos no autorizados. Recuerde: las buenas prácticas de seguridad se convierten en hábitos que protegen sus datos todos los días.
Última actualización: {{current_date}}
¿Te resultó útil?
Ayúdanos a mejorar esta documentación proporcionando comentarios.