Sleutelconnector implementeren
Dit artikel leidt je door de procedure voor het inschakelen en configureren van Key Connector in een bestaande zelfgehoste omgeving. Lees voordat u verder gaat het artikel over Key Connector grondig door, zodat u volledig begrijpt wat Key Connector is, hoe het werkt en wat de gevolgen van implementatie zijn.
Bitwarden ondersteunt de implementatie van één Key Connector voor gebruik door één organisatie voor een zelf gehoste instantie.
waarschuwing
Het beheer van cryptografische sleutels is ongelooflijk gevoelig en wordt alleen aanbevolen voor bedrijven met een team en infrastructuur die de implementatie en het beheer van een keyserver veilig kunnen ondersteunen.
Om Key Connector te gebruiken moet je:
Een actieve SSO-implementatie hebben.
Activeer de beleidsregels Eén organisatie en Eén aanmelding vereisen.
Als jouw organisatie aan deze eisen voldoet of kan voldoen, inclusief een team en infrastructuur die het beheer van een keyserver kan ondersteunen, neem dan contact met ons op en dan activeren we Key Connector.
Zodra je contact met ons hebt opgenomen over Key Connector, nemen we contact met je op om een Key Connector-gesprek te starten. De stappen die volgen in dit artikel moeten worden uitgevoerd in samenwerking met de Bitwarden customer success & implementatie specialisten.
Zodra u contact met ons heeft opgenomen over Key Connector, zal een lid van het customer success & implementatie team een Key Connector licentiebestand voor uw organisatie genereren. Wanneer uw Bitwarden-medewerker aangeeft dat het klaar is, voert u de volgende stappen uit om de nieuwe licentie te verkrijgen:
Open de Bitwarden cloud-webapp en navigeer naar het scherm Facturering → Abonnement van uw organisatie in de beheerconsole.
Scroll naar beneden en selecteer de knop Licentie downloaden.
Voer wanneer daarom wordt gevraagd de installatie-ID in die is gebruikt om uw zelf gehoste server te installeren en selecteer Submit. Als u uw installatie-ID niet direct weet, kunt u deze ophalen uit
./bwdata/env/global.override.env
.
Je hebt je licentiebestand niet meteen nodig, maar je zult het in een latere stap moeten uploaden naar je zelf gehoste server.
Om uw Bitwarden-server voor te bereiden op Key Connector:
Sla een back-up op van ten minste
.bwdata/mssql
. Zodra Key Connector in gebruik is, is het aan te raden om toegang te hebben tot een pre-Key Connector back-up image in geval van een probleem.noot
Als je een externe MSSQL-database gebruikt, maak dan een back-up van je database op een manier die past bij jouw implementatie.
Werk uw zelf gehoste Bitwarden-installatie bij om de laatste wijzigingen op te halen:
Bash./bitwarden.sh update
Bewerk het bestand
.bwdata/config.yml
en schakel Key Connector in doorenable_key_connector
optrue
te zetten.Bashnano bwdata/config.yml
Herbouw uw zelf gehoste Bitwarden-installatie:
Bash./bitwarden.sh rebuild
Update uw zelf gehoste Bitwarden-installatie opnieuw om de wijzigingen toe te passen:
Bash./bitwarden.sh update
Om Key Connector te configureren:
Bewerk het
.bwdata/env/key-connector.override.env
bestand dat is gedownload met de./bitwarden.sh update
.Bashnano bwdata/env/key-connector.override.env
waarschuwing
Dit bestand wordt vooraf ingevuld met standaardwaarden waarmee een functionele lokale Key Connector setup wordt gestart, maar de standaardwaarden worden niet aanbevolen voor productieomgevingen.
In
key-connector.override.env
moet je waarden opgeven voor het volgende:Eindpunten: Met welke Bitwarden eindpunten Key Connector kan communiceren.
Database: Waar Key Connector gebruikerssleutels opslaat en ophaalt.
RSA sleutelpaar: Hoe Key Connector toegang krijgt tot een RSA sleutelpaar om gebruikerssleutels in rust te beschermen.
Eindpunten
De geautomatiseerde installatie zal de eindpuntwaarden invullen op basis van uw installatieconfiguratie, maar het wordt aanbevolen om te controleren of de volgende waarden in key-connector.override.env
juist zijn voor uw installatie:
BashkeyConnectorSettings__webVaultUri=https://your.bitwarden.domain.com keyConnectorSettings__identityServerUri=http://identity:5000
Database
Key Connector moet toegang krijgen tot een database waarin gecodeerde gebruikerssleutels voor de leden van je organisatie worden opgeslagen. Maak een beveiligde database aan om versleutelde gebruikerssleutels in op te slaan en vervang de standaardwaarden van keyConnectorSettings__database__
in key-connector.override.env
door de waarden in de kolom Required Values voor de gekozen database:
waarschuwing
Migratie van de ene database naar de andere wordt op dit moment niet ondersteund. Welke provider je ook kiest, implementeer een frequent automatisch back-upschema voor de database.
Database | Vereiste waarden |
---|---|
Lokale JSON(standaard) | Niet aanbevolen buiten testen.
|
Microsoft SQL Server |
|
PostgreSQL |
|
MySQL/MariaDB |
|
MongoDB |
|
RSA sleutelpaar
Key Connector gebruikt een RSA sleutelpaar om gebruikerssleutels in rust te beschermen. Maak een sleutelpaar aan en vervang de standaardwaarden voor keyConnectorSettings__rsaKey__
en keyConnectorSettings__certificate__
in key-connector.override.env
door de waarden die vereist zijn voor de door u gekozen implementatie.
tip
Het RSA sleutelpaar moet minimaal 2048 bits lang zijn.
Over het algemeen kunt u Key Connector toegang geven tot een X509 Certificaat dat het sleutelpaar bevat of Key Connector rechtstreeks toegang geven tot het sleutelpaar:
Om een X509-certificaat te gebruiken dat een RSA-sleutelpaar bevat, moet u de vereiste waarden opgeven, afhankelijk van de locatie waar uw certificaat is opgeslagen (zie Bestandssysteem, OS Certificate Store, enzovoort):
tip
Het certificaat moet bijvoorbeeld beschikbaar zijn als PKCS12 .pfx-bestand
:
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}
In alle certificaatimplementaties heb je de CN-waarde
nodig die in dit voorbeeld wordt getoond.
Bestandssysteem (standaard)
Als het certificaat is opgeslagen op het bestandssysteem van de machine waarop Key Connector draait, geef dan de volgende waarden op:
noot
Standaard wordt Key Connector geconfigureerd om een .pfx-bestand
aan te maken dat zich bevindt op etc/bitwarden/key-connector/bwkc.pfx
met een gegenereerd wachtwoord. Het wordt niet aanbevolen voor bedrijfsimplementaties om deze standaardwaarden te gebruiken.
BashkeyConnectorSettings__rsaKey__provider=certificate keyConnectorSettings__certificate__provider=filesystem keyConnectorSettings__certificate__filesystemPath={Certificate_Path} keyConnectorSettings__certificate__filesystemPassword={Certificate_Password}
Azure Blob Storage
Als het certificaat wordt geüpload naar Azure Blob Storage, geef dan de volgende waarden op:
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}
Stel azureStorageConnectionString
in op een verbindingsstring die je kunt genereren in je Azure portaal vanaf de Gedeelde toegang handtekening (SAS) pagina van je opslagaccount. De SAS moet beschikken over:
Toegestane services: Blob en Bestand
Toegestane brontypes: Service, Container en Object
Toegestane rechten: Lezen, schrijven en lijst
Toegestane blob index rechten: Lezen/schrijven en filteren
Azure-sleutelkluis
Als het certificaat is opgeslagen in Azure Key Vault, specificeer dan de volgende waarden:
noot
Om Azure Key Vault te gebruiken om je .pfx
certificaat op te slaan, moet je een Active Directory App Registration aanmaken. Deze App Registratie moet:
Gedelegeerde API rechten geven voor toegang tot Azure Key Vault
Laat een cliëntgeheim genereren om toegang te krijgen via Key Connector
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 Kluis
Als het certificaat is opgeslagen in Hashicorp Vault, geef dan de volgende waarden op:
noot
Key Connector integreert met de Hashicorp Vault KV2 Storage Engine. Bovenaan dit tabblad moet het certificaatbestand in PKCS12-formaat zijn en base64-gecodeerd worden opgeslagen als de waarde van een benoemde sleutel in je Vault. Als je een Vault-handleiding voor de KV2 Storage Engine volgt, kan de sleutelnaam bestand
zijn, tenzij anders gespecificeerd.
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}
Als je een cloudprovider of fysiek apparaat wilt gebruiken om een RSA 2048 sleutelpaar op te slaan, moet je de vereiste waarden opgeven, afhankelijk van de gekozen implementatie (zie Azure Key Vault, Google Cloud Key Management, enzovoort):
Azure-sleutelkluis
Als je Azure Key Vault gebruikt om een RSA 2048 sleutelpaar op te slaan, geef dan de volgende waarden op:
noot
Om Azure Key Vault te gebruiken om je RSA 2048 sleutel op te slaan, moet je een Active Directory App Registration aanmaken. Deze App Registratie moet:
Gedelegeerde API rechten geven voor toegang tot Azure Key Vault
Laat een cliëntgeheim genereren om toegang te krijgen via Key Connector
BashkeyConnectorSettings__rsaKey__provider=azurekv keyConnectorSettings__rsaKey__azureKeyvaultUri={Vault_URI} keyConnectorSettings__rsaKey__azureKeyvaultKeyName={Key_Name} keyConnectorSettings__rsaKey__azureKeyvaultAdTenantId={ActiveDirectory_TenantId} keyConnectorSettings__rsaKey__azureKeyvaultAdAppId={AppRegistration_ApplicationId} keyConnectorSettings__rsaKey__azureKeyvaultAdSecret={AppRegistration_ClientSecretValue}
Leer hoe je Azure Key Vault gebruikt om een sleutelpaar aan te maken
Google Cloud-sleutelbeheer
Als je Google Cloud Key Management gebruikt om een RSA 2048 sleutelpaar op te slaan, geef dan de volgende waarden op:
BashkeyConnectorSettings__rsaKey__provider=gcpkms keyConnectorSettings__rsaKey__googleCloudProjectId={Project_Id} keyConnectorSettings__rsaKey__googleCloudLocationId={Location_Id} keyConnectorSettings__rsaKey__googleCloudKeyringId={Keyring_Id} keyConnectorSettings__rsaKey__googleCloudKeyId={Key_Id} keyConnectorSettings__rsaKey__googleCloudKeyVersionId={KeyVersionId}
AWS sleutelbeheerservice
Als je AWS Key Management Service (KMS) gebruikt om een RSA 2048 sleutelpaar op te slaan, geef dan de volgende waarden op:
BashkeyConnectorSettings__rsaKey__provider=awskms keyConnectorSettings__rsaKey__awsAccessKeyId={AccessKey_Id} keyConnectorSettings__rsaKey__awsAccessKeySecret={AccessKey_Secret} keyConnectorSettings__rsaKey__awsRegion={Region_Name} keyConnectorSettings__rsaKey__awsKeyId={Key_Id}
Leer hoe je AWS KMS gebruikt om asymmetrische sleutels te maken
PKCS11 Fysieke HSM
Als u een fysiek HSM-apparaat gebruikt met de PKCS11-provider, geef dan de volgende waarden op:
BashkeyConnectorSettings__rsaKey__provider=pkcs11 keyConnectorSettings__rsaKey__pkcs11Provider={Provider} keyConnectorSettings__rsaKey__pkcs11SlotTokenSerialNumber={Token_SerialNumber} keyConnectorSettings__rsaKey__pkcs11LoginUserType={Login_UserType} keyConnectorSettings__rsaKey__pkcs11LoginPin={Login_PIN} ONE OF THE FOLLOWING TWO: keyConnectorSettings__rsaKey__pkcs11PrivateKeyLabel={PrivateKeyLabel} keyConnectorSettings__rsaKey__pkcs11PrivateKeyId={PrivateKeyId} OPTIONALLY: keyConnectorSettings__rsaKey__pkcsLibraryPath={path/to/library/file}
Waar:
{Provider}
kanyubihsm
ofopensc
zijn{Login_UserType}
kangebruiker-
,dus-
ofcontextspecifiek
zijn
noot
Als u de PKCS11-provider gebruikt om uw privésleutel op een HSM-apparaat op te slaan, moet de bijbehorende openbare sleutel beschikbaar worden gemaakt en worden geconfigureerd als een certificaat met behulp van een van de opties op het tabblad Certificaten.
Nu Key Connector volledig is geconfigureerd en je een Key Connector-licentie hebt, kun je de volgende stappen uitvoeren:
Start uw zelf gehoste Bitwarden-installatie opnieuw op om de configuratiewijzigingen toe te passen:
Bash./bitwarden.sh restart
Log in op uw zelf gehoste Bitwarden als eigenaar van de organisatie en navigeer naar het scherm Facturering → Abonnement in de beheerconsole.
Selecteer de knop Licentie bijwerken en upload de Key Connector-licentie die je in een eerdere stap hebt opgehaald.
Als je dat nog niet hebt gedaan, ga dan naar het scherm Instellingen → Beleid en schakel de beleidsregels Eenmalige organisatie en Eenmalige aanmeldingsverificatie vereisen in. Beide zijn vereist om Key Connector te gebruiken.
Navigeer naar het scherm Instellingen → Eenmalige aanmelding.
Selecteer Key Connector in de sectie Ontcijferingsopties voor leden.
Voer in de Key Connector URL-invoer het adres in waarop Key Connector wordt uitgevoerd (standaard
https://your.domain/key-connector)
en selecteer de knop Test om ervoor te zorgen dat je Key Connector kunt bereiken.Scroll naar de onderkant van het scherm en selecteer Opslaan.
Suggest changes to this page
How can we improve this page for you?
For technical, billing, and product questions, please contact support