Desplegar Conector de clave
Este artículo le guiará a través del procedimiento para habilitar y configurar el Conector de clave en un entorno autoalojado existente. Antes de continuar , revise detenidamente el artículo sobre Key Connector para garantizar una comprensión completa de qué es Key Connector, cómo funciona y los impactos de su implementación.
Bitwarden admite la implementación de un Conector de clave para su uso por una organización para una instancia autoalojada.
warning
La gestión de las claves criptográficas es increíblemente sensible y se recomienda solo para empresas con un equipo e infraestructura que puedan respaldar de manera segura la implementación y gestión de un servidor de claves.
Para usar el Conector de clave debes:
Si su organización cumple o puede cumplir con estos requisitos, incluyendo un equipo e infraestructura que pueden gestionar un servidor clave, contáctenos y activaremos el Conector de clave.
Una vez que se haya comunicado con nosotros con respecto a Key Connector , nos comunicaremos con nosotros para iniciar una discusión sobre Key Connector. Los pasos que siguen en este artículo deben completarse en colaboración con los especialistas en éxito del cliente e implementación de Bitwarden.
Una vez que nos haya contactado con respecto al Conector de clave, un miembro del equipo de éxito del cliente y de implementación generará un archivo de licencia habilitado para el Conector de clave para su organización. Cuando tu colaborador de Bitwarden te indique que está listo, completa los siguientes pasos para obtener la nueva licencia:
Abra la aplicación web en la nube de Bitwarden y navegue hasta la pantalla de Factura → Suscripción en la Consola de Administrador de su organización.
Desplázate hacia abajo y selecciona el botón Descargar Licencia.
Cuando se le solicite, ingrese el ID de instalación que se utilizó para instalar su servidor autoalojado y seleccione Enviar. Si no conoces tu ID de instalación de memoria, puedes recuperarlo de
./bwdata/env/global.override.env.
No necesitarás tu archivo de licencia de inmediato, pero se te requerirá subirlo a tu servidor autoalojado en un paso posterior.
Para preparar tu servidor Bitwarden para el Conector de clave:
Guarda una copia de seguridad de, como mínimo,
.bwdata/mssql. Una vez que el Conector de clave está en uso, se recomienda que tenga acceso a una imagen de respaldo previa al Conector de clave en caso de un problema.note
Si está utilizando una base de datos MSSQL externa, haga una copia de seguridad de su base de datos de la manera que mejor se adapte a su implementación.
Actualiza tu instalación de Bitwarden autoalojada para obtener los últimos cambios:
Bash./bitwarden.sh updateEdita el archivo
.bwdata/config.ymly habilita el Conector de clave cambiandoenable_key_connectoraverdadero.Bashnano bwdata/config.ymlReconstruye tu instalación de Bitwarden autoalojada:
Bash./bitwarden.sh rebuildActualiza nuevamente tu instalación de Bitwarden autoalojada para aplicar los cambios:
Bash./bitwarden.sh update
Para configurar el Conector de clave:
Edita el archivo
.bwdata/env/key-connector.override.envque se habrá descargado con la./bitwarden.sh actualizar.Bashnano bwdata/env/key-connector.override.envwarning
Este archivo se prellenará con valores predeterminados que activarán una configuración funcional local de Conector de clave, sin embargo, los valores predeterminados no se recomiendan para entornos de producción.
En
key-connector.override.env, necesitarás especificar valores para lo siguiente:Endpoints: Con qué endpoints de Bitwarden puede comunicarse el Conector de clave.
Base de datos: Donde el Conector de clave almacenará y recuperará las claves de usuario.
Par de claves RSA : cómo Key Connector accederá a un par de claves RSA para proteger las claves de usuario en reposo.
Puntos finales
La configuración automatizada llenará los valores de los puntos finales basándose en la configuración de su instalación, sin embargo, se recomienda que confirme que los siguientes valores en key-connector.override.env son precisos para su configuración:
BashkeyConnectorSettings__webVaultUri=https://your.bitwarden.domain.com keyConnectorSettings__identityServerUri=http://identity:5000
Base de datos
El Conector de clave debe acceder a una base de datos que almacena claves de usuario cifradas para los miembros de su organización. Crea una base de datos segura para almacenar las claves de usuarios cifradas y reemplaza los valores predeterminados de keyConnectorSettings__database__ en key-connector.override.env con los valores designados en la columna de Valores Requeridos para la base de datos elegida:
warning
La migración de una base de datos a otra no está soportada en este momento. Independientemente del proveedor que elijas, implementa un horario de respaldo automatizado frecuente para la base de datos.
Base de datos | Valores requeridos |
|---|---|
Local JSON (predeterminado) | No recomendado fuera de las pruebas.
|
Microsoft SQL Server |
|
PostgreSQL |
|
MySQL/MariaDB |
|
MongoDB |
|
Par de claves RSA
El Conector de clave utiliza un par de claves RSA para proteger las claves de usuario en reposo. Crea un par de claves y reemplaza los valores predeterminados de keyConnectorSettings__rsaKey__ y keyConnectorSettings__certificate__ en key-connector.override.env con los valores requeridos para tu implementación elegida.
tip
El par de claves RSA debe ser como mínimo de 2048 bits de longitud.
Generalmente, tus opciones incluyen otorgar al Conector de Clave acceso a un Certificado X509 que contiene el par de claves o conceder al Conector de Clave acceso directamente al Par de Claves:
Para usar un certificado X509 que contiene un par de claves RSA, especifica los valores requeridos dependiendo de la ubicación donde se almacena tu certificado (ver Sistema de archivos, Almacén de certificados del sistema operativo, y así sucesivamente):
tip
El certificado debe estar disponible como un archivo PKCS12 .pfx, por ejemplo:
Bashopenssl req -x509 -newkey rsa:4096 -sha256 -nodes -keyout bwkc.key -out bwkc.crt -subj "/CN=Bitwarden Key Connector" -days 36500
openssl pkcs12 -export -out ./bwkc.pfx -inkey bwkc.key -in bwkc.crt -passout pass:{Password}En todas las implementaciones de certificados, necesitarás el valor CN mostrado en este ejemplo.
Sistema de archivos (predeterminado)
Si el certificado se almacena en el sistema de archivos de la máquina que ejecuta el Conector de clave, especifique los siguientes valores:
note
Por defecto, el Conector de clave estará configurado para crear un archivo .pfx ubicado en etc/bitwarden/key-connector/bwkc.pfx con una contraseña generada. No se recomienda que las implementaciones empresariales utilicen estos valores predeterminados.
BashkeyConnectorSettings__rsaKey__provider=certificate keyConnectorSettings__certificate__provider=filesystem keyConnectorSettings__certificate__filesystemPath={Certificate_Path} keyConnectorSettings__certificate__filesystemPassword={Certificate_Password}
Almacenamiento Blob de Azure
Si el certificado se sube al Almacenamiento Blob de Azure, especifica los siguientes valores:
BashkeyConnectorSettings__rsaKey__provider=certificate keyConnectorSettings__certificate__provider=azurestorage keyConnectorSettings__certificate__azureStorageConnectionString={Connection_String} keyConnectorSettings__certificate__azureStorageContainer={Container_Name} keyConnectorSettings__certificate__azureStorageFileName={File_Name} keyConnectorSettings__certificate__azureStorageFilePassword={File_Password}
Establezca azureStorageConnectionString a una Cadena de conexión que puede generar en su portal de Azure desde la página de Firma de acceso compartido (SAS) de su cuenta de almacenamiento. El SAS debe tener:
Servicios permitidos: Blob y Archivo
Tipos de recursos permitidos: Servicio, Contenedor y Objeto
Permisos permitidos: Leer, Escribir y Listar.
Permisos de índice de blob permitidos: Leer/Escribir y Filtrar
Azure Caja Fuerte de Claves
Si el certificado se almacena en Azure Key Vault, especifique los siguientes valores:
note
Para usar Azure Key Vault para almacenar tu certificado .pfx, necesitarás crear un Registro de Aplicación en el Directorio Activo. Esta Registración de Aplicación debe:
Otorgue permisos de API delegados para acceder a Azure Key Vault
Genere un secreto de cliente para permitir el acceso por el Conector de clave.
BashkeyConnectorSettings__certificate__provider=azurekv keyConnectorSettings__certificate__azureKeyvaultUri={Vault_URI} keyConnectorSettings__certificate__azureKeyvaultCertificateName={Certificate_Name} keyConnectorSettings__certificate__azureKeyvaultAdTenantId={ActiveDirectory_TenantId} keyConnectorSettings__certificate__azureKeyvaultAdAppId={AppRegistration_ApplicationId} keyConnectorSettings__certificate__azureKeyvaultAdSecret={AppRegistration_ClientSecretValue}
Hashicorp Caja Fuerte
Si el certificado se almacena en la caja fuerte de Hashicorp, especifique los siguientes valores:
note
El Conector de clave se integra con el Motor de Almacenamiento KV2 de Hashicorp Vault. Según la parte superior de esta pestaña, el archivo de certificado debe estar en formato PKCS12 y almacenado en base64 como el valor de una clave nombrada en su caja fuerte. Si sigues un tutorial de Vault para el Motor de Almacenamiento KV2, el nombre de la clave puede ser archivo a menos que se especifique lo contrario.
BashkeyConnectorSettings__rsaKey__provider=certificate keyConnectorSettings__certificate__provider=vault keyConnectorSettings__certificate__vaultServerUri={Server_URI} keyConnectorSettings__certificate__vaultToken={Token} keyConnectorSettings__certificate__vaultSecretMountPoint={Secret_MountPoint} keyConnectorSettings__certificate__vaultSecretPath={Secret_Path} keyConnectorSettings__certificate__vaultSecretDataKey={Secret_DataKey} keyConnectorSettings__certificate__vaultSecretFilePassword={Secret_FilePassword}
Ahora que el Conector de clave está completamente configurado y tienes una licencia habilitada para Conector de clave, completa los siguientes pasos:
Reinicie su instalación de Bitwarden autoalojada para aplicar los cambios de configuración:
Bash./bitwarden.sh restartInicie sesión en su Bitwarden autohospedado como propietario de una organización y navegue hasta la pantalla Facturación → Suscripción de la Consola de administración.
Seleccione el botón Actualizar licencia y suba la licencia habilitada para el Conector de clave recuperada en un paso anterior.
Si aún no lo has hecho, navega a la pantalla de Ajustes → Políticas y habilita las políticas de Organización única y Requerir autenticación de inicio de sesión único. Ambos son necesarios para utilizar Key Connector .
Navega a la pantalla de Ajustes → Inicio de sesión único.
tip
Los siguientes pasos asumen que ya tienes una implementación activa de inicio de sesión con SSO utilizando SAML 2.0 o OIDC. Si no lo hace , implemente y pruebe el inicio de sesión con SSO antes de continuar.
En la sección de Opciones de descifrado de miembro, selecciona Conector de clave.
En la entrada de URL del Conector de clave, ingrese la dirección donde se está ejecutando el Conector de clave (por defecto,
https://your.domain/key-connector) y seleccione el botón de Prueba para asegurarse de que puede acceder al Conector de clave.Desplázate hasta la parte inferior de la pantalla y selecciona Guardar.