AWS KMSでのゲートウェイ構成
AWS KMSにKeeperゲートウェイ構成を保存
概要
KeeperゲートウェイをAWS EC2インスタンス上で運用する場合、ゲートウェイ構成ファイルをAWS Secrets Managerに保存し、AWS KMSで保護できます。インスタンス上に構成ファイルを置く必要がなくなります。
AWSキー管理サービス (KMS) キー
AWS KMSは、データの暗号化と復号化に使用される暗号化キーを簡単に作成および制御できる、完全に管理されたサービスです。このサービスは他のAWSサービスと統合されているため、データの暗号化とキーの管理が簡単になります。このプロセスの一環としてAWS KMSキーが必要になります。このキーに権限を割り当てる際には、最小権限の原則に従うことをお勧めします。
要件
AWS KMSを使用してKeeperゲートウェイの構成シークレットを保護するには、IAMロールが適用されるEC2インスタンスにKeeperゲートウェイをインストールする必要があります。DockerインストールとLinuxインストールのいずれでも利用できます。
構成を作成
Keeperボルトで、[Secrets Manager] > [アプリケーション] に進み、ゲートウェイが構成されたアプリケーションを選択します。その後、[ゲートウェイ] タブを開いて [ゲートウェイのプロビジョン] をクリックします。

ゲートウェイの初期化方法として [構成] を選択し、[次へ] をクリックします。


または、ワンタイムアクセストークンを生成し、Keeperゲートウェイの gateway ott-init コマンドを利用することも可能です。
いずれの場合でも、base64エンコードされた構成が取得できます。以降の手順で使用するため、保存しておいてください。
AWS Secrets Managerでシークレットを作成
AWSコンソールから、Secrets Managerへ移動し、新しいシークレットを作成します。
[Other type of secret] (その他の種類のシークレット) の選択
[Plaintext] (プレーンテキスト) の選択とBase64値の貼り付け
[Next] のクリック
[Secret Name] と説明を入力してから、[Next]、[Next]、[Store] の順にクリックします。


インスタンスロールにポリシーを割り当てる
EC2インスタンスのロールには、以下のように特定のAWS Secrets Managerキーに対する読み取りアクセスを提供するポリシーを割り当てる必要があります。
アクセスを確認
EC2インスタンスから以下のコマンドを実行することで、ポリシーが適用されているかを確認できます。
Keeperゲートウェイの構成
Dockerインストール方式
Dockerインストールの場合、GATEWAY_CONFIGエントリを削除し、AWS_KMS_SECRET_NAMEを追加して、その値にAWS Secrets Managerのシークレット名を指定します。
その後、新しい環境変数でサービスを更新します。
Linuxインストール方式
Keeperゲートウェイのサービスユニットファイルを開きます。
/etc/systemd/system/keeper-gateway.service
「ExecStart」行を以下のように変更し、「YourSecretName」を割り当てられた名前に置き換えます。
サービスに変更を適用します。
起動時にエラーが発生した場合は、以下のコマンドで確認できます。
最終更新

