Saltar al contenido principal

Importar desde Bitwarden

Passwork 7 admite la migración desde Bitwarden mediante un script de Python basado en el conector de Python oficial. El proceso se basa en el API y ayuda a preservar la estructura de sus datos al pasar a una instancia de Passwork on-premise.

peligro

Antes de ejecutar la importación, cree una copia de seguridad de la base de datos de Passwork y pruebe el proceso en un entorno de staging.

Qué se importa y qué no

Importado

  • Elementos de Bitwarden de tipo login y secure note;
  • Colecciones de Bitwarden;
  • carpetas de una exportación de bóveda personal de Bitwarden;
  • nombre del elemento, notas (description), nombre de usuario y contraseña;
  • URLs desde login.uris (como lista de URLs);
  • TOTP (como campo personalizado con tipo totp);
  • campos personalizados:
    • type 0 y type 2 -> text;
    • type 1 -> password.

No importado

  • Archivos adjuntos de Bitwarden;
  • tipos de elementos distintos de login y secure note (se omiten);
  • tipos de campos personalizados no compatibles (se escribe una advertencia en el registro).

Archivos

Paso 1. Exportar datos desde Bitwarden

Esta guía utiliza Bitwarden Web Vault como ejemplo, porque la exportación de la organización está disponible en la interfaz web.

info

Si necesita exportar una bóveda individual (personal) desde la extensión del navegador, la aplicación de escritorio o la aplicación móvil, consulte la sección correspondiente de la documentación de Bitwarden.

  1. Abra Bitwarden y vaya a ToolsExport.
Abrir la página de exportación en Bitwarden
  1. Elija la exportación de la organización o la exportación de una bóveda específica y seleccione JSONExport.
Elegir el formato de exportación JSON en Bitwarden
  1. Confirme la exportación introduciendo su contraseña maestra de Bitwarden.
Confirmar la exportación de Bitwarden con la contraseña maestra
  1. Asegúrese de que el archivo .json se haya descargado correctamente. Este archivo se utilizará como entrada para import.py.

Paso 2. Preparar el entorno y ejecutar el script

python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
python3 import.py ./bitwarden_export.json --host "https://passwork.example.com" --token "YOUR_ACCESS_TOKEN"

Parámetros del script

Obligatorios

  • file — ruta al archivo de exportación JSON de Bitwarden;
  • --host — URL del host de Passwork;
  • --token — token de acceso (accessToken).

Opcionales

  • --master-key — clave maestra (cuando el cifrado del lado del cliente está habilitado);
  • --refresh-token — token de actualización (refreshToken);
  • --vault-id — ID de una bóveda existente como destino de la importación;
  • --collections — lista separada por comas de nombres o ID de colecciones.

Ejemplos de ejecución

Importar en bóvedas separadas (por colecciones)

python3 import.py ./bitwarden_export_org.json \
--host "https://passwork.example.com" \
--token "YOUR_ACCESS_TOKEN"

Importar solo las colecciones seleccionadas

python3 import.py ./bitwarden_export_org.json \
--host "https://passwork.example.com" \
--token "YOUR_ACCESS_TOKEN" \
--collections "Collection 1,Collection 2"

Importar en una bóveda existente

python3 import.py ./bitwarden_export_org.json \
--host "https://passwork.example.com" \
--token "YOUR_ACCESS_TOKEN" \
--vault-id "VAULT_ID"

Paso 3. Solicitudes interactivas

Si no se proporcionan los argumentos opcionales en la CLI, el script puede solicitarlos de forma interactiva:

Input comma-separated list of collection IDs or names to export (optional):
Input Passwork vault ID to import data to (optional):

Presione Enter para omitir una solicitud.

Paso 4. Confirmación y registro

Antes de iniciar la importación, el script muestra un resumen y solicita confirmación:

The following collections will be exported: Private vault
Continue operation? (Y/N):

Durante la ejecución, el script crea un archivo de registro en el directorio actual:

import-YYYY-MM-DD_HH-MM-SS.log

El registro incluye las bóvedas/carpetas creadas, los pasos de importación de elementos y las advertencias sobre datos omitidos.

Argumentos

Para mostrar todos los argumentos disponibles:

python3 import.py --help
Salida de ayuda de import.py