キーコネクターをデプロイする
この記事では、既存の自己ホスト型環境でキーコネクターを有効にし、設定する手順を説明します。続行する前に、キー コネクタに関する記事をよく読んで、キー コネクタとは何か、その仕組み、および実装の影響を完全に理解してください。
Bitwardenは、自己ホスト型インスタンスのための1つの組織による1つのキーコネクターのデプロイメントをサポートします。
warning
暗号化キーの管理は非常にデリケートであり、キーサーバーのデプロイメントと管理を安全にサポートできるインフラストラクチャとチームを持つエンタープライズのみが推奨されます。
キーコネクターを使用するためには、以下の手順を守る必要があります:
あなたの組織がこれらの要件を満たすか、または満たすことができ、キーサーバーの管理をサポートできるチームとインフラストラクチャを含む場合、私たちに連絡してください。そうすれば、私たちはキーコネクターを有効にします。
キーコネクターについて私たちに連絡を取ったら、キーコネクターの議論を始めるために私たちは連絡を取ります。この記事に続く手順は、Bitwardenのカスタマーサクセス&実装スペシャリストと協力して完了させる必要があります。
キーコネクターについて私たちに連絡を取った後、カスタマーサクセス&実装チームのメンバーが、あなたの組織のためのキーコネクター対応ライセンスファイルを生成します。あなたのBitwardenの共同作業者が準備ができたと指示したら、新しいライセンスを取得するための次の手順を完了してください:
Bitwardenクラウドウェブアプリを開き、管理者コンソール内のあなたの組織の請求書 → サブスクリプション画面に移動します。
下にスクロールして、ライセンスをダウンロードボタンを選択してください。
指示に従って、自己ホスト型サーバーのインストールに使用したインストールIDを入力し、送信を選択してください。あなたがインストールIDをすぐに思い出せない場合は、
./bwdata/env/global.override.envから取得することができます。
ライセンス ファイルはすぐには必要ありませんが、後の手順でセルフホスト サーバーにアップロードする必要があります。
あなたのBitwardenサーバーをキーコネクターのために準備するには:
少なくとも.bwdata/mssqlの
バックアップを保存してください。キーコネクターが使用中の場合、問題が発生した場合に備えて、キーコネクター使用前のバックアップイメージにアクセスできることをお勧めします。note
あなたが外部のMSSQLデータベースを使用している場合、あなたの実装に最も適した方法でデータベースのバックアップを取ってください。
最新の変更を取得するために、自己ホスト型のBitwardenインストールを更新してください。
Bash./bitwarden.sh update.bwdata/config.ymlファイルを編集し、enable_key_connectorをtrueに切り替えてキーコネクターを有効にしてください。Bashnano bwdata/config.ymlあなたの自己ホスト型Bitwardenインストールを再構築します:
Bash./bitwarden.sh rebuild変更を適用するために、自己ホスト型のBitwardenインストールを再度更新してください。
Bash./bitwarden.sh update
キーコネクターを設定するには:
.bwdata/env/key-connector.override.envファイルを編集してください。このファイルは./bitwarden.sh 更新でダウンロードされるはずです。Bashnano bwdata/env/key-connector.override.envwarning
このファイルは、機能的なローカルキーコネクターのセットアップをスピンアップするデフォルト値で事前に準備されますが、デフォルト値は本番環境には推奨されません。
key-connector.override.envで、次の項目に値を指定する必要があります:
エンドポイント
自動設定は、インストール設定に基づいてエンドポイントの値を自動的に設定しますが、key-connector.override.envの以下の値があなたの設定に適していることを確認することをお勧めします:
BashkeyConnectorSettings__webVaultUri=https://your.bitwarden.domain.com keyConnectorSettings__identityServerUri=http://identity:5000
データベース
キーコネクターは、組織のメンバーのための暗号化されたユーザーキーを保存するデータベースにアクセスする必要があります。暗号化されたユーザーキーを保存するための安全なデータベースを作成し、デフォルトのkeyConnectorSettings__database__の値をkey-connector.override.envで指定された値に置き換えてください。選択したデータベースの必要な値列に記載されています。
warning
現時点では、あるデータベースから別のデータベースへの移行はサポートされていません。どのプロバイダーを選んでも、データベースに対して頻繁な自動バックアップスケジュールを実装してください。
データベース | 必要な値 |
|---|---|
ローカルJSON(デフォルト) | テスト以外では推奨されません。
|
Microsoft SQLサーバー |
|
PostgreSQL |
|
MySQL/MariaDB |
|
MongoDB |
|
RSAキーペア
キーコネクターはRSAキーペアを使用して、ユーザーキーを保護します。キーペアを作成し、デフォルトのkeyConnectorSettings__rsaKey__とkeyConnectorSettings__certificate__の値をkey-connector.override.envで選択した実装に必要な値に置き換えてください。
tip
RSAキーペアは、最低でも2048ビットの長さでなければなりません。
一般的に、選択肢としては、キーペアを含むX509 証明書へのキーコネクターへのアクセスを許可するか、直接キーペアへのキーコネクターへのアクセスを許可するかがあります。
RSAキーペアを含むX509証明書を使用するには、証明書が保存されている場所に応じて必要な値を指定します(ファイルシステム、OS証明書ストアなどを参照してください):
tip
証明書は、例えば、PKCS12の必須の.pfxファイルとして利用可能でなければなりません。
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}すべての証明書の実装で、この例で示されているCNの値が必要になります。
ファイルシステム(デフォルト)
証明書がキーコネクターを実行しているマシンのファイルシステムに保存されている場合、次の値を指定してください:
note
デフォルトでは、キーコネクターは生成されたパスワードを持つ.pfxファイルを作成するように設定されており、その場所はetc/bitwarden/key-connector/bwkc.pfxです。これらのデフォルトをエンタープライズの実装に使用することは推奨されません。
BashkeyConnectorSettings__rsaKey__provider=certificate keyConnectorSettings__certificate__provider=filesystem keyConnectorSettings__certificate__filesystemPath={Certificate_Path} keyConnectorSettings__certificate__filesystemPassword={Certificate_Password}
アジュール ブロブ ストレージ
証明書がAzure Blob Storageにアップロードされる場合、次の値を指定してください:
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}
azureStorageConnectionStringを、Azureポータルで共有アクセス署名(SAS)のページからあなたのストレージアカウントで生成できる接続文字列に設定します。SASは以下を持つ必要があります:
許可されるサービス:BlobとFile
許可されたリソースタイプ:サービス、コンテナ、オブジェクト
許可された権限:読み取り、書き込み、リスト
許可されたblobインデックスの権限:読み取り/書き込みとフィルター
Azure キー保管庫
証明書がAzure Key Vaultに保存されている場合、以下の値を指定してください:
note
あなたの.pfx証明書をAzure Key Vaultに保存するには、Active Directoryのアプリ登録を作成する必要があります。このアプリ登録は以下のことが必要です:
Azure Key Vaultへのアクセスのために委任されたAPI権限を与えます
キーコネクターによるアクセスを許可するために、クライアントシークレットを生成してください。
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 保管庫
証明書がHashicorp保管庫に保存されている場合、次の値を指定してください:
note
キーコネクターはHashicorp保管庫KV2ストレージエンジンと統合します。このタブの上部によれば、証明書ファイルはPKCS12形式であり、Vault内の名前付きキーの値としてbase64でエンコードされて保存されるべきです。KV2ストレージエンジンのVaultチュートリアルに従っている場合、特に指定がない限り、キーの名前はファイルになるかもしれません。
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}
キーコネクターが完全に設定され、キーコネクター対応ライセンスを取得したので、次の手順を完了してください:
設定の変更を適用するために、自己ホスト型のBitwardenインストールを再起動してください。
Bash./bitwarden.sh restartセルフホスト型 Bitwarden に組織所有者としてログインし、管理コンソールの[請求] → [サブスクリプション]画面に移動します。
ライセンスを更新ボタンを選択し、キーコネクター対応のライセンスをアップロードします。これは前のステップで取得したものです。
まだ行っていない場合は、設定→ポリシー画面に移動し、単一組織と単一サインオン認証が必要のポリシーを有効にしてください。両方ともキーコネクターを使用する必要があります。
設定→ シングルサインオン画面に移動します。
メンバー復号化オプションセクションで、キーコネクターを選択します。
キーコネクターURLの入力欄に、キーコネクターが動作しているアドレス(デフォルトでは、
https://your.domain/key-connector)を入力し、テストボタンを選択してキーコネクターにアクセスできることを確認してください。画面の下までスクロールし、保存を選択してください。