SjälvhotellKey Connector

Distribuera Key Connector

Den här artikeln kommer att leda dig genom proceduren för att aktivera och konfigurera Key Connector i en befintlig miljö med egen värd. Innan du fortsätter bör du noggrant läsa igenom artikeln om Key Connector för att säkerställa en fullständig förståelse av vad Key Connector är, hur det fungerar och konsekvenserna av implementeringen.

Bitwarden stöder distribution av en nyckelanslutare för användning av en organisation för en självvärd instans.

Krav

warning

Management of cryptographic keys is incredibly sensitive and is only recommended for enterprises with a team and infrastructure that can securely support deploying and managing a key server.

För att använda Key Connector måste du:

Om din organisation uppfyller eller kan uppfylla dessa krav, inklusive ett team och infrastruktur som kan stödja hantering av en nyckelserver, kontakta oss så aktiverar vi Key Connector.

Konfigurera och distribuera Key Connector

När du har kontaktat oss angående Key Connector kommer vi att kontakta oss för att starta en Key Connector-diskussion. Stegen som följer i den här artikeln måste slutföras i samarbete med Bitwardens kundframgångs- och implementeringsspecialister.

Skaffa ny licensfil

När du har kontaktat oss angående Key Connector kommer en medlem av kundframgångs- och implementeringsteamet att generera en Key Connector-aktiverad licensfil för din organisation. När din Bitwarden-samarbetspartner instruerar dig att den är klar, slutför du följande steg för att få den nya licensen:

  1. Öppna Bitwardens molnwebbapp och navigera till din organisations skärm FaktureringPrenumeration i administratörskonsolen.

  2. Rulla ned och välj knappen Ladda ner licens.

  3. När du uppmanas, ange installations-ID som användes för att installera din egen värdserver och välj Skicka. Om du inte känner till ditt installations-ID direkt kan du hämta det från ./bwdata/env/global.override.env.

Du behöver inte din licensfil omedelbart, men du kommer att behöva ladda upp den till din egen värdserver i ett senare steg.

Initiera Key Connector

Så här förbereder du din Bitwarden-server för Key Connector:

  1. Spara en säkerhetskopia av, åtminstone, .bwdata/mssql. När Key Connector väl har använts, rekommenderas det att du har tillgång till en pre-Key Connector backupbild i händelse av problem.

    note

    If you are using an external MSSQL database, take a backup of your database in whatever way fits your implementation.

  2. Uppdatera din självvärdade Bitwarden-installation för att hämta de senaste ändringarna:

    Bash
    ./bitwarden.sh update
  3. Redigera filen .bwdata/config.yml och aktivera Key Connector genom att växla enable_key_connector till true.

    Bash
    nano bwdata/config.yml
  4. Bygg om din självvärdade Bitwarden-installation:

    Bash
    ./bitwarden.sh rebuild
  5. Uppdatera din självvärdade Bitwarden-installation igen för att tillämpa ändringarna:

    Bash
    ./bitwarden.sh update

Konfigurera Key Connector

För att konfigurera Key Connector:

  1. Redigera filen .bwdata/env/key-connector.override.env som kommer att ha laddats ner med ./bitwarden.sh-uppdateringen.

    Bash
    nano bwdata/env/key-connector.override.env
    warning

    This file will be pre-populated with default values that will spin up a functional local Key Connector setup, however the default values are not recommended for production environments.

  2. I key-connector.override.env måste du ange värden för följande:

    • Endpoints: Vilka Bitwarden endpoints Key Connector kan kommunicera med.

    • Databas: Där Key Connector lagrar och hämtar användarnycklar.

    • RSA-nyckelpar: Hur Key Connector kommer åt ett RSA-nyckelpar för att skydda användarnycklar i vila.

Slutpunkter

Automatisk installation kommer att fylla i slutpunktsvärden baserat på din installationskonfiguration, men det rekommenderas att du bekräftar att följande värden i key-connector.override.env är korrekta för din installation:

Bash
keyConnectorSettings__webVaultUri=https://your.bitwarden.domain.com keyConnectorSettings__identityServerUri=http://identity:5000

Databas

Key Connector måste komma åt en databas som lagrar krypterade användarnycklar för dina organisationsmedlemmar. Skapa en säker databas för att lagra krypterade användarnycklar och ersätt standardvärdena för keyConnectorSettings__database__ i key-connector.override.env med värdena som anges i kolumnen Required Values för den valda databasen:

warning

Migration from one database to another is not supported at this time. Regardless of which provider you choose, implement a frequent automated backup schedule for the database.

RSA-nyckelpar

Key Connector använder ett RSA-nyckelpar för att skydda användarnycklar i vila. Skapa ett nyckelpar och ersätt standardvärdena keyConnectorSettings__rsaKey__ och keyConnectorSettings__certificate__ i key-connector.override.env med de värden som krävs för din valda implementering.

tip

The RSA key pair must be at a minimum 2048 bits in length.

I allmänhet inkluderar dina alternativ att ge Key Connector-åtkomst till ett X509-certifikat som innehåller nyckelparet eller att ge Key Connector-åtkomst direkt till nyckelparet. Key Connector stöder inte rotation av certifikat eller RSA-nyckelpar.

To use an X509 certificate that contains an RSA key pair, specify the values required depending on the location where your certificate is stored (see Filesystem, OS Certificate Store, and so on):

tip

The certificate must be made available as a PKCS12 .pfx file, for example:

Bash
openssl 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}

In all certificate implementations, you'll need the CN value shown in this example.

Filesystem (default)

If the certificate is stored on the filesystem of the machine running Key Connector, specify the following values:

note

By default, Key Connector will be configured to create a .pfx file located at etc/bitwarden/key-connector/bwkc.pfx with a generated password. It is not recommended for enterprise implementations to use these defaults.

Bash
keyConnectorSettings__rsaKey__provider=certificate keyConnectorSettings__certificate__provider=filesystem keyConnectorSettings__certificate__filesystemPath={Certificate_Path} keyConnectorSettings__certificate__filesystemPassword={Certificate_Password}

Azure Blob Storage

If the certificate is uploaded to Azure Blob Storage, specify the following values:

Bash
keyConnectorSettings__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}

Set azureStorageConnectionString to a Connection string you can generate in your Azure portal from the Shared access signature (SAS) page of your storage account. The SAS must have:

  • Allowed services: Blob and File

  • Allowed resource types: Service, Container, and Object

  • Allowed permissions: Read, Write, and List

  • Allowed blob index permissions: Read/Write and Filter

Azure Key Vault

If certificate is stored in Azure Key Vault, specify the following values:

note

To use Azure Key Vault to store your .pfx certificate, you'll need to create an Active Directory App Registration. This App Registration must:

  • Give delegated API permissions to access Azure Key Vault

  • Have a client secret generated to allow access by Key Connector

Bash
keyConnectorSettings__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 Vault

If the certificate is stored in Hashicorp Vault, specify the following values:

note

Key Connector integrates with the Hashicorp Vault KV2 Storage Engine. As per the top of this tab, the certificate file should be in PKCS12 format and stored base64-encoded as the value to a named key in your Vault. If following a Vault tutorial for the KV2 Storage Engine, the key name may be file unless otherwise specified.

Bash
keyConnectorSettings__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}

Säkring av nyckelkontakt

Ytterligare säkerhetsåtgärder för Key Connector-användare rekommenderas för att upprätthålla noll-kunskapskryptering för databaser och dataöverföringar.

  • Organisationer som använder en TLS-uppfångande proxy kommer att behöva vidta ytterligare åtgärder för att upprätthålla noll-kunskapskryptering. För att säkerställa säkerhet, lägg till Bitwarden-URL:n till din proxys undantagslista, detta kommer att säkerställa att dataöverföringen med Key Connector förblir krypterad och ologgad under hela dataöverföringsprocessen.

  • Det är inte alltid möjligt att migrera mellan krypteringsmekanismer.

  • Migrering från en databas till en annan stöds inte för närvarande. Se till att implementera ett ofta automatiskt säkerhetskopieringsschema för databasen.

warning

Management of cryptographic keys is incredibly sensitive and is only recommended for enterprises with a team and infrastructure that can securely support deploying and managing a key server.

Aktivera Key Connector

Nu när Key Connector är helt konfigurerad och du har en Key Connector-aktiverad licens, slutför du följande steg:

  1. Starta om din självvärdade Bitwarden-installation för att tillämpa konfigurationsändringarna:

    Bash
    ./bitwarden.sh restart
  2. Logga in på din egen värd Bitwarden som organisationsägare och navigera till administratörskonsolens FaktureringPrenumerationsskärm.

  3. Välj knappen Uppdatera licens och ladda upp den Key Connector-aktiverade licensen hämtad i ett tidigare steg.

  4. Om du inte redan har gjort det navigerar du till skärmen Inställningar → Principer och aktiverar Enskild organisation och Kräv enkel inloggning. Båda krävs för att använda Key Connector.

  5. Navigera till skärmen Inställningar Enkel inloggning.

    tip

    The next few steps assume that you already have an active login with SSO implementation using SAML 2.0 or OIDC. If you don't, please implement and test login with SSO before proceeding.

  6. I avsnittet Medlemsdekrypteringsalternativ väljer du Key Connector.

  7. I Key Connector-URL-ingången anger du adressen Key Connector körs på (som standard https://din.domän/key-connector) och välj knappen Testa för att säkerställa att du kan nå Key Connector.

  8. Bläddra till botten av skärmen och välj Spara.