7.4. HashiCorp Vault
ストレージ管理者は、Ceph Object Gateway で使用するために、キー、パスワード、および証明書を HAshiCorp Vault に安全に保存できます。HashiCorp Vault は、Ceph Object Gateway で使用されるサーバー側の暗号化にセキュアなキー管理サービスを提供します。
基本的なワークフロー:
- クライアントは、オブジェクトのキー ID に基づいて Vault からシークレットキーの作成を要求します。
- クライアントはオブジェクトのキー ID を持つオブジェクトを Ceph Object Gateway にアップロードします。
- 次に、Ceph Object Gateway は Vault から新規に作成されたシークレットキーを要求します。
- Vault は、Ceph Object Gateway に秘密鍵を返して要求に応えます。
- これで、Ceph Object Gateway は、新しい秘密鍵を使用してオブジェクトを暗号化できます。
- 暗号化が完了すると、オブジェクトが Ceph OSD に保存されます。
Red Hat は、弊社のテクノロジーパートナーと協力して、本書をお客様にサービスとして提供します。ただし、Red Hat はこの製品のサポートを提供しません。この製品の技術的なサポートが必要な場合は、Hashicorp にサポートを依頼してください。
前提条件
- 稼働中の Red Hat Ceph Storage クラスターがある。
- Ceph Object Gateway ソフトウェアのインストール。
- HashiCorp Vault ソフトウェアのインストール。
7.4.1. Vault のシークレットエンジン
HashiCorp Vault は、データを生成、保存、または暗号化するためのシークレットエンジンを複数提供します。アプリケーションプログラミングインターフェイス (API) は、データに対するアクションを求めるデータ呼び出しをシークレットエンジンに送信し、シークレットエンジンはそのアクション要求の結果を返します。
Ceph Object Gateway は、HashiCorp Vault シークレットエンジンの 2 つをサポートします。
- キー/値のバージョン 2
- Transit
キー/値のバージョン 2
Key/Value シークレットエンジンは、ディスク上の Vault 内にランダムのシークレットを保存します。kv
エンジンのバージョン 2 では、設定可能な数のバージョン数をキーに指定できます。デフォルトのバージョン数は 10 です。バージョンを削除しても元のデータは削除されませんが、データが削除されたことになり、削除されたバージョンを元に戻すことができます。API エンドポイントまたは destroy
コマンドを使用して、バージョンのデータを完全に削除できます。キーのバージョンおよびメタデータをすべて削除するには、metadata
コマンドまたは API エンドポイントを使用することができます。鍵名は文字列にする必要があります。また、コマンドラインインターフェイスの使用時に、エンジンは文字列以外の値を文字列に変換します。文字列以外の値を保持するには、JSON ファイルを指定するか、HTTP アプリケーションプログラミングインターフェイス (API) を使用します。
アクセス制御リスト (ACL) ポリシーの場合、キー/値のシークレットエンジンは 作成
機能と 更新
機能の違いを認識します。
Transit
Transit シークレットエンジンは、移動データで暗号化機能を実行します。Transit シークレットエンジンはハッシュを生成したり、ランダムバイトのソースとなったり、データの署名や検証を行うことができます。Vault は、Transit シークレットエンジンの使用時にデータを保存しません。Transit シークレットエンジンは、複数の目的で同じ鍵を使用できるようにすることで鍵導出をサポートします。また、transit シークレットエンジンは鍵バージョン管理をサポートします。Transit シークレットエンジンは、以下のキータイプをサポートします。
aes128-gcm96
- 128 ビットの AES キーと 96 ビットのノンスを備えた AES-GCM。暗号化、復号、鍵導出、および収束暗号化をサポートします。
aes256-gcm96
- 256 ビットの AES キーと 96 ビットのノンスを備えた AES-GCM。暗号化、復号、鍵導出、および収束暗号化 (デフォルト) をサポートします。
chacha20-poly1305
- 256 ビットキーの ChaCha20-Poly1305。暗号化、復号、鍵導出、および収束暗号化をサポートします。
ed25519
- Ed25519。署名、署名の検証、および鍵導出をサポートします。
ecdsa-p256
- 曲線 P-256 を使用した ECDSA。署名および署名の検証をサポートします。
ecdsa-p384
- 曲線 P-384 を使用した ECDSA。署名および署名の検証をサポートします。
ecdsa-p521
- 曲線 P-521 を使用した ECDSA。署名および署名の検証をサポートします。
rsa-2048
- 2048 ビット RSA 鍵、暗号化、復号、署名、および署名の検証をサポートします。
rsa-3072
- 3072 ビット RSA 鍵。暗号化、復号、署名、および署名の検証をサポートします。
rsa-4096
- 4096 ビットの RSA 鍵。暗号化、復号、署名、および署名の検証をサポートします。
関連情報
- 詳細は、Vault のプロジェクトサイトにある KV Secrets Engine ドキュメントを参照してください。
- 詳細は、Vault のプロジェクトサイトにある Transport Secrets Engine ドキュメントを参照してください。
7.4.2. Vault の認証
HashiCorp Vault は、複数のタイプの認証メカニズムをサポートします。Ceph Object Gateway は現在 Vault エージェントメソッドをサポートしています。Ceph Object Gateway は rgw_crypt_vault_auth
オプションおよび rgw_crypt_vault_addr
オプションを使用して HashiCorp Vault を使用するように設定します。
Red Hat は、コンテナーの認証方法として Vault Agent の使用をサポートしており、トークン認証の使用は、コンテナーではサポートされていません。
Vault エージェント
Vault エージェントは、クライアントノードで実行するデーモンで、トークンの更新と共にクライアント側のキャッシュを提供します。Vault エージェントは、通常 Ceph Object Gateway ノードで実行されます。Vault エージェントを実行し、トークンファイルを更新します。Vault エージェントをこのモードで使用すると、ファイルシステムのパーミッションを使用して、トークンの使用にアクセスできるユーザーを制限できます。また、Vault エージェントはプロキシーサーバーとしても機能します。つまり、Vault は必要に応じてトークンを追加し、渡された要求にトークンを追加してから実際のサーバーに転送します。Vault エージェントは、トークンをファイルシステムに格納する際にもトークンの更新を処理できます。たとえば、Vault エージェントがローカルホストのみをリッスンするなど、Ceph Object Gateway が Vault エージェントとの接続に使用するネットワークのセキュリティーを保護する必要があります。
関連情報
- 詳細は、Vault のプロジェクトサイトにある Vault Agent ドキュメントを参照してください。
7.4.3. Vault の namespace
HashiCorp Vault をエンタープライズサービスとして使用すると、組織内のチームが使用可能な分離された名前空間の一元管理が提供されます。これらの分離された名前空間環境は テナント と呼ばれ、組織内のチームがこれらの テナント を使用して、ポリシー、シークレット、ID を他のチームから分離することができます。Vault の名前空間機能は、単一インフラストラクチャー内からセキュアなマルチテナンシーをサポートします。
関連情報
- 詳細は、Vault のプロジェクトサイトにある Vault Enterprise Namespaces ドキュメントを参照してください。
7.4.4. 永続エンジンの互換性サポート
以前のバージョンの Ceph は、簡単なキーストアとして Transit エンジンを使用した場合の互換性サポートがあります。Transit エンジンの compat
オプションを使用して、互換性サポートを設定できます。以下のコマンドを使用して、以前のサポートを無効にすることができます。
例
[ceph: root@host03 /]# ceph config set client.rgw rgw_crypt_vault_secret_engine transit compat=0
これは今後のバージョンでデフォルトであり、新規インストールに現行バージョンを使用できます。
現在のバージョンにおける通常のデフォルトは以下のとおりです。
例
[ceph: root@host03 /]# ceph config set client.rgw rgw_crypt_vault_secret_engine transit compat=1
これにより、新しく作成されたオブジェクトの新規エンジンが有効になり、古いオブジェクトに古いエンジンを使用できるようになります。古いオブジェクトおよび新しいオブジェクトにアクセスするには、Vault トークンに以前の転送ポリシーと新しい転送ポリシーの両方が必要です。
以下のコマンドを使用すると、古いエンジンのみが強制的に使用できます。
例
[ceph: root@host03 /]# ceph config set client.rgw rgw_crypt_vault_secret_engine transit compat=2
Vault が export/encryption-key
で終わる場合は、このモードがデフォルトで選択されます。
client.rgw
オプションを設定したら、新しい値を有効にするために Ceph Object Gateway デーモンを再起動する必要があります。
関連情報
- 詳細は、Vault のプロジェクトサイトにある Vault Agent ドキュメントを参照してください。
7.4.5. Vault のトークンポリシーの作成
トークンポリシーは、全 Vault トークンが持つ権限を指定します。1 つのトークンに複数のポリシーを持たせることができます。設定に必要なポリシーを使用する必要があります。
前提条件
- 稼働中の Red Hat Ceph Storage クラスターがある。
- HashiCorp Vault ソフトウェアのインストール。
- HashiCorp Vault ノードへの root レベルのアクセス。
手順
トークンポリシーを作成します。
キー/値シークレットエンジンの場合:
例
[root@vault ~]# vault policy write rgw-kv-policy -<<EOF path "secret/data/*" { capabilities = ["read"] } EOF
Transit エンジンの場合:
例
[root@vault ~]# vault policy write rgw-transit-policy -<<EOF path "transit/keys/*" { capabilities = [ "create", "update" ] denied_parameters = {"exportable" = [], "allow_plaintext_backup" = [] } } path "transit/keys/*" { capabilities = ["read", "delete"] } path "transit/keys/" { capabilities = ["list"] } path "transit/keys/+/rotate" { capabilities = [ "update" ] } path "transit/*" { capabilities = [ "update" ] } EOF
注記以前のバージョンの Ceph で Transit シークレットエンジンを使用していた場合、トークンポリシーは以下のようになります。
例
[root@vault ~]# vault policy write old-rgw-transit-policy -<<EOF path "transit/export/encryption-key/*" { capabilities = ["read"] } EOF
SSE-KMS と SSE-S3 の両方を使用している場合は、それぞれ別のコンテナーを指す必要があります。個別の Vault インスタンスを使用するか、共通の中継点の下に個別に中継インスタンスまたは別のブランチをマウントすることができます。個別の Vault インスタンスを使用していない場合は、rgw_crypt_vault_prefix
および rgw_crypt_sse_s3_vault_prefix
を使用して、SSE-KMS または SSE-S3 を指定してコンテナーを分離することができます。SSE-KMS バケット所有者に Vault 権限を付与する場合、SSE-S3 キーへの権限を付与しないでください。Ceph のみが SSE-S3 キーにアクセスできる必要があります。
7.4.6. Vault で SSE-KMS を使用するための Ceph Object Gateway の設定
キー管理に SSE-KMS で HashiCorp Vault を使用するように Ceph Object Gateway を設定するには、それを暗号化キーストアとして設定する必要があります。現在、Ceph Object Gateway は 2 つの異なるシークレットエンジンと、2 つの異なる認証方法をサポートしています。
前提条件
- 稼働中の Red Hat Ceph Storage クラスターがある。
- Ceph Object Gateway ソフトウェアのインストール。
- Ceph Object Gateway ノードへのルートレベルのアクセス。
手順
ceph config set client.rgw OPTION VALUE
コマンドを使用して、Vault を暗号化キーストアとして有効にします。構文
ceph config set client.rgw rgw_crypt_s3_kms_backend vault
以下のオプションおよび値を追加します。
構文
ceph config set client.rgw rgw_crypt_vault_auth agent ceph config set client.rgw rgw_crypt_vault_addr http://VAULT_SERVER:8100
- ユースケースに従ってポリシーをカスタマイズします。
role-id を取得します。
構文
vault read auth/approle/role/rgw-ap/role-id -format=json | \ jq -r .data.role_id > PATH_TO_FILE
secret-id を取得します。
構文
vault read auth/approle/role/rgw-ap/role-id -format=json | \ jq -r .data.secret_id > PATH_TO_FILE
Vault エージェントの設定を作成します。
例
pid_file = "/run/kv-vault-agent-pid" auto_auth { method "AppRole" { mount_path = "auth/approle" config = { role_id_file_path ="/root/vault_configs/kv-agent-role-id" secret_id_file_path ="/root/vault_configs/kv-agent-secret-id" remove_secret_id_file_after_reading ="false" } } } cache { use_auto_auth_token = true } listener "tcp" { address = "127.0.0.1:8100" tls_disable = true } vault { address = "http://10.8.128.9:8200" }
systemctl を使用して永続デーモンを実行します。
例
[root@host03 ~]# /usr/local/bin/vault agent -config=/usr/local/etc/vault/rgw-agent.hcl
- Vault エージェントの実行時に、トークンファイルに有効なトークンが設定されます。
Vault シークレットエンジン (キー/値または Transit) を選択します。
Key/Value を使用している場合は、以下の行を追加します。
例
[ceph: root@host03 /]# ceph config set client.rgw rgw_crypt_vault_secret_engine kv
Transit を使用している場合は、以下の行を追加します。
例
[ceph: root@host03 /]# ceph config set client.rgw rgw_crypt_vault_secret_engine transit
ceph config set client.rgw OPTION VALUE
コマンドを使用して、Vault 名前空間が暗号化の鍵を取得するように設定します。例
[ceph: root@host03 /]# ceph config set client.rgw rgw_crypt_vault_namespace testnamespace1
パス接頭辞を設定し、Ceph Object Gateway が Vault から暗号化キーを取得する場所を制限します。
例
[ceph: root@host03 /]# ceph config set client.rgw rgw_crypt_vault_prefix /v1/secret/data
エクスポート可能な Transit キーの場合、以下のように接頭辞パスを設定します。
例
[ceph: root@host03 /]# ceph config set client.rgw rgw_crypt_vault_prefix /v1/transit/export/encryption-key
Vault サーバーのドメイン名が
vault-server
である場合は、Ceph Object Gateway は以下の URL から暗号化されたトランジションキーを取得します。例
http://vault-server:8200/v1/transit/export/encryption-key
Ceph Object Gateway デーモンを再起動します。
ストレージクラスター内の個別のノードで Ceph Object Gateway を再起動するには、以下を実行します。
構文
systemctl restart ceph-CLUSTER_ID@SERVICE_TYPE.ID.service
例
[root@host03 ~]# systemctl restart ceph-c4b34c6f-8365-11ba-dc31-529020a7702d@rgw.realm.zone.host01.gwasto.service
ストレージクラスター内のすべてのノードで Ceph Object Gateway を再起動するには、以下を実行します。
構文
ceph orch restart SERVICE_TYPE
例
[ceph: root@host03 /]# ceph orch restart rgw
関連情報
- 詳細は、Red Hat Ceph Storage Object Gateway ガイド の Vault のシークレットエンジン セクションを参照してください。
- 詳細は、Red Hat Ceph Storage Object Gateway ガイド の Vault の認証 セクションを参照してください。
7.4.7. Vault で SSE-S3 を使用するための Ceph Object Gateway の設定
キー管理に SSE-S3 で HashiCorp Vault を使用するように Ceph Object Gateway を設定するには、それを暗号化キーストアとして設定する必要があります。現在 Ceph Object Gateway が使用している認証方法は agent だけです。
前提条件
- 稼働中の Red Hat Ceph Storage クラスターがある。
- Ceph Object Gateway ソフトウェアのインストール。
- Ceph Object Gateway ノードへのルートレベルのアクセス。
手順
Cephadm シェルにログインします。
例
[root@host01 ~]# cephadm shell
SSE-S3 暗号化キーを取得するシークレットエンジンとして Vault を有効にします。
構文
ceph config set client.rgw rgw_crypt_sse_s3_backend vault
SSE-S3 および Vault で使用する認証方法を設定するには、以下を設定します。
構文
ceph config set client.rgw rgw_crypt_sse_s3_vault_auth agent ceph config set client.rgw rgw_crypt_sse_s3_vault_addr http://VAULT_AGENT:VAULT_AGENT_PORT
例
[ceph: root@host01 ~]# ceph config set client.rgw rgw_crypt_sse_s3_vault_auth agent [ceph: root@host01 ~]# ceph config set client.rgw rgw_crypt_sse_s3_vault_addr http://vaultagent:8100
- ユースケースに応じてポリシーをカスタマイズして、Vault エージェントを設定します。
role-id を取得します。
構文
vault read auth/approle/role/rgw-ap/role-id -format=json | \ jq -r .rgw-ap-role-id > PATH_TO_FILE
secret-id を取得します。
構文
vault read auth/approle/role/rgw-ap/role-id -format=json | \ jq -r .rgw-ap-secret-id > PATH_TO_FILE
Vault エージェントの設定を作成します。
例
pid_file = "/run/rgw-vault-agent-pid" auto_auth { method "AppRole" { mount_path = "auth/approle" config = { role_id_file_path ="/usr/local/etc/vault/.rgw-ap-role-id" secret_id_file_path ="/usr/local/etc/vault/.rgw-ap-secret-id" remove_secret_id_file_after_reading ="false" } } } cache { use_auto_auth_token = true } listener "tcp" { address = "127.0.0.1:8100" tls_disable = true } vault { address = "https://vaultserver:8200" }
systemctl を使用して永続デーモンを実行します。
例
[root@host01 ~]# /usr/local/bin/vault agent -config=/usr/local/etc/vault/rgw-agent.hcl
- Vault エージェントの実行時に、トークンファイルに有効なトークンが設定されます。
暗号化キー (キー/値またはトランジット) の取得に使用する Vault シークレットエンジンを設定します。
Key/Value を使用する場合は、次のように設定します。
例
[ceph: root@host01 /]# ceph config set client.rgw rgw_crypt_sse_s3_vault_secret_engine kv
Transit を使用する場合は、次のように設定します。
例
[ceph: root@host01 /]# ceph config set client.rgw rgw_crypt_sse_s3_vault_secret_engine transit
オプション: Ceph Object Gateway が特定の名前空間内の Vault にアクセスして暗号化キーを取得するように設定します。
例
[ceph: root@host01 /]# ceph config set client.rgw rgw_crypt_sse_s3_vault_namespace company/testnamespace1
注記Vault 名前空間を使用すると、チームはテナントと呼ばれる隔離された環境内で運用できます。Vault 名前空間機能は、Vault Enterprise バージョンでのみ使用できます。
オプション: Ceph Object Gateway が暗号鍵を取得する URL パス接頭辞を設定して、Vault シークレットスペースの特定のサブセットへのアクセスを制限します。
Key/Value を使用する場合は、次のように設定します。
例
[ceph: root@host01 /]# ceph config set client.rgw rgw_crypt_sse_s3_vault_prefix /v1/secret/data
Transit を使用する場合は、次のように設定します。
例
[ceph: root@host01 /]# ceph config set client.rgw rgw_crypt_sse_s3_vault_prefix /v1/transit
Vault サーバーのドメイン名が
vault-server
である場合は、Ceph Object Gateway は以下の URL から暗号化されたトランジションキーを取得します。例
http://vaultserver:8200/v1/transit
オプション: カスタム SSL 証明書を使用して Vault で認証するには、次の設定を設定します。
構文
ceph config set client.rgw rgw_crypt_sse_s3_vault_verify_ssl true ceph config set client.rgw rgw_crypt_sse_s3_vault_ssl_cacert PATH_TO_CA_CERTIFICATE ceph config set client.rgw rgw_crypt_sse_s3_vault_ssl_clientcert PATH_TO_CLIENT_CERTIFICATE ceph config set client.rgw rgw_crypt_sse_s3_vault_ssl_clientkey PATH_TO_PRIVATE_KEY
例
[ceph: root@host01 /]# ceph config set client.rgw rgw_crypt_sse_s3_vault_verify_ssl true [ceph: root@host01 /]# ceph config set client.rgw rgw_crypt_sse_s3_vault_ssl_cacert /etc/ceph/vault.ca [ceph: root@host01 /]# ceph config set client.rgw rgw_crypt_sse_s3_vault_ssl_clientcert /etc/ceph/vault.crt [ceph: root@host03 /]# ceph config set client.rgw rgw_crypt_sse_s3_vault_ssl_clientkey /etc/ceph/vault.key
Ceph Object Gateway デーモンを再起動します。
ストレージクラスター内の個別のノードで Ceph Object Gateway を再起動するには、以下を実行します。
構文
systemctl restart ceph-CLUSTER_ID@SERVICE_TYPE.ID.service
例
[root@host01 ~]# systemctl restart ceph-c4b34c6f-8365-11ba-dc31-529020a7702d@rgw.realm.zone.host01.gwasto.service
ストレージクラスター内のすべてのノードで Ceph Object Gateway を再起動するには、以下を実行します。
構文
ceph orch restart SERVICE_TYPE
例
[ceph: root@host01 /]# ceph orch restart rgw
関連情報
- 詳細は、Red Hat Ceph Storage Object Gateway ガイド の Vault のシークレットエンジン セクションを参照してください。
- 詳細は、Red Hat Ceph Storage Object Gateway ガイド の Vault の認証 セクションを参照してください。
7.4.8. kv
エンジンを使用したキーの作成
HashiCorp Vault Key/Value シークレットエンジン (kv
) を設定し、Ceph Object Gateway で使用するためのキーを作成できるようにします。シークレットは、kv
シークレットエンジンのキーと値のペアとして保存されます。
サーバー側の暗号化のキーは 256 ビットの長さで、base64
を使用してエンコードする必要があります。
前提条件
- 稼働中の Red Hat Ceph Storage クラスターがある。
- HashiCorp Vault ソフトウェアのインストール。
- HashiCorp Vault ノードへの root レベルのアクセス。
手順
キー/値 バージョン 2 シークレットエンジンを有効にします。
例
vault secrets enable -path secret kv-v2
新しいキーを作成します。
構文
vault kv put secret/PROJECT_NAME/BUCKET_NAME key=$(openssl rand -base64 32)
例
[root@vault ~]# vault kv put secret/myproject/mybucketkey key=$(openssl rand -base64 32) ====== Metadata ====== Key Value --- ----- created_time 2020-02-21T17:01:09.095824999Z deletion_time n/a destroyed false version 1
7.4.9. 転送エンジンを使用した鍵の作成
HashiCorp Vault 遷移シークレットエンジン (transit
) を設定して、Ceph Object Gateway で使用するキーを作成できるようにします。Ceph Object Gateway でサーバー側の暗号化に使用するためには、Transit シークレットエンジンで作成した鍵がエクスポート可能である必要があります。
前提条件
- 稼働中の Red Hat Ceph Storage クラスターがある。
- HashiCorp Vault ソフトウェアのインストール。
- HashiCorp Vault ノードへの root レベルのアクセス。
手順
Transit シークレットエンジンを有効にします。
[root@vault ~]# vault secrets enable transit
新しいエクスポート可能なキーを作成します。
構文
vault write -f transit/keys/BUCKET_NAME exportable=true
例
[root@vault ~]# vault write -f transit/keys/mybucketkey exportable=true
注記デフォルトでは、上記のコマンドは
aes256-gcm96
タイプキーを作成します。キーの作成を確認します。
構文
vault read transit/export/encryption-key/BUCKET_NAME/VERSION_NUMBER
例
[root@vault ~]# vault read transit/export/encryption-key/mybucketkey/1 Key Value --- ----- keys map[1:-gbTI9lNpqv/V/2lDcmH2Nq1xKn6FPDWarCmFM2aNsQ=] name mybucketkey type aes256-gcm96
注記キーバージョンを含む完全なキーパスを指定する必要があります。
7.4.10. AWS および Vault を使用したオブジェクトのアップロード
Ceph Object Gateway にオブジェクトをアップロードする際に、Ceph Object Gateway は Vault からキーを取得し、そのオブジェクトをバケットに暗号化して保存します。オブジェクトのダウンロード要求が行われると、Ceph Object Gateway は Vault から対応するキーを自動的に取得し、オブジェクトを復号します。オブジェクトをアップロードするには、Ceph Object Gateway は Vault からキーを取得した後、オブジェクトを暗号化してバケットに保存します。Ceph Object Gateway は、Vault から対応するキーを取得し、オブジェクトをダウンロードする要求がある場合にオブジェクトを復号します。
URL は、rgw_crypt_vault_addr
オプションと、rgw_crypt_vault_prefix
オプションで設定されたパス接頭辞を使用して構築されます。
前提条件
- 稼働中の Red Hat Ceph Storage クラスターがある。
- Ceph Object Gateway ソフトウェアのインストール。
- HashiCorp Vault ソフトウェアのインストール。
- Ceph Object Gateway クライアントノードへのアクセス。
- Amazon Web Services (AWS) へのアクセス。
手順
AWS コマンドラインクライアントを使用してオブジェクトをアップロードし、要求に Secure Side Encryption (SSE) キー ID を提供します。
キー/値シークレットエンジンの場合:
例 (SSE-KMS を使用)
[user@client ~]$ aws --endpoint=http://radosgw:8000 s3 cp plaintext.txt s3://mybucket/encrypted.txt --sse=aws:kms --sse-kms-key-id myproject/mybucketkey
例 (SSE-S3 を使用)
[user@client ~]$ aws s3api --endpoint http://rgw_host:8080 put-object --bucket my-bucket --key obj1 --body test_file_to_upload --server-side-encryption AES256
注記この例では、Ceph Object Gateway は
http://vault-server:8200/v1/secret/data/myproject/mybucketkey
からシークレットをフェッチします。Transit エンジンの場合:
例 (SSE-KMS を使用)
[user@client ~]$ aws --endpoint=http://radosgw:8000 s3 cp plaintext.txt s3://mybucket/encrypted.txt --sse=aws:kms --sse-kms-key-id mybucketkey
例 (SSE-S3 を使用)
[user@client ~]$ aws s3api --endpoint http://rgw_host:8080 put-object --bucket my-bucket --key obj1 --body test_file_to_upload --server-side-encryption AES256
注記この例では、Ceph Object Gateway は
http://vaultserver:8200/v1/transit/mybucketkey
からシークレットをフェッチします。
関連情報
- 詳細は、Vault のプロジェクトサイトにある Install Vault ドキュメントを参照してください。