3.3. KMS 使用時の鍵のローテーションの有効化と無効化


一般的なセキュリティープラクティスでは、定期的な暗号鍵のローテーションが求められます。KMS を使用する場合、鍵のローテーションを有効または無効にできます。

3.3.1. キーローテーションの有効化

鍵のローテーションを有効にするには、PersistentVolumeClaimsNamespace、または StorageClass (優先順位の降順) に keyrotation.csiaddons.openshift.io/schedule: <value> アノテーションを追加します。

<value>@hourly@daily@weekly@monthly、または @yearly のいずれかになります。<value> が空の場合、デフォルトは @weekly になります。以下の例では @weekly を使用しています。

重要

キーのローテーションは、RBD バックアップボリュームでのみサポートされます。

名前空間のアノテーション

$ oc get namespace default
NAME      STATUS   AGE
default   Active   5d2h
$ oc annotate namespace default "keyrotation.csiaddons.openshift.io/schedule=@weekly"
namespace/default annotated

StorageClass のアノテーション

$ oc get storageclass rbd-sc
NAME       PROVISIONER        RECLAIMPOLICY   VOLUMEBINDINGMODE   ALLOWVOLUMEEXPANSION   AGE
rbd-sc     rbd.csi.ceph.com   Delete          Immediate           true                   5d2h
$ oc annotate storageclass rbd-sc "keyrotation.csiaddons.openshift.io/schedule=@weekly"
storageclass.storage.k8s.io/rbd-sc annotated

PersistentVolumeClaims のアノテーション

$ oc get pvc data-pvc
NAME      STATUS   VOLUME                                     CAPACITY   ACCESS MODES   STORAGECLASS      AGE
data-pvc  Bound    pvc-f37b8582-4b04-4676-88dd-e1b95c6abf74   1Gi        RWO            default           20h
$ oc annotate pvc data-pvc "keyrotation.csiaddons.openshift.io/schedule=@weekly"
persistentvolumeclaim/data-pvc annotated
$ oc get encryptionkeyrotationcronjobs.csiaddons.openshift.io
NAME                    SCHEDULE    SUSPEND   ACTIVE   LASTSCHEDULE   AGE
data-pvc-1642663516   @weekly                                     3s
$ oc annotate pvc data-pvc "keyrotation.csiaddons.openshift.io/schedule=*/1 * * * *" --overwrite=true
persistentvolumeclaim/data-pvc annotated
$ oc get encryptionkeyrotationcronjobs.csiaddons.openshift.io
NAME                  SCHEDULE    SUSPEND   ACTIVE   LASTSCHEDULE   AGE
data-pvc-1642664617   */1 * * * *                                   3s

3.3.2. 鍵のローテーションの無効化

次の鍵のローテーションを無効にできます。

  • ストレージクラスのすべての永続ボリューム要求 (PVC)
  • 特定の PVC

ストレージクラスのすべての PVC の鍵ローテーションを無効にする

すべての PVC の鍵ローテーションを無効にするには、ストレージクラスのアノテーションを更新します。

$ oc get storageclass rbd-sc
NAME       PROVISIONER        RECLAIMPOLICY   VOLUMEBINDINGMODE   ALLOWVOLUMEEXPANSION   AGE
rbd-sc     rbd.csi.ceph.com   Delete          Immediate           true                   5d2h
$ oc annotate storageclass rbd-sc "keyrotation.csiaddons.openshift.io/enable: false"
storageclass.storage.k8s.io/rbd-sc annotated

特定の永続ボリューム要求の鍵ローテーションを無効にする

  1. 鍵のローテーションを無効にする PVC の EncryptionKeyRotationCronJob CR を特定します。

    $ oc get encryptionkeyrotationcronjob -o jsonpath='{range .items[?(@.spec.jobTemplate.spec.target.persistentVolumeClaim=="<PVC_NAME>")]}{.metadata.name}{"\n"}{end}'

    <PVC_NAME> は、無効にする PVC の名前です。

  2. 鍵のローテーションを無効にするには、前の手順の EncryptionKeyRotationCronJob CR に以下を適用します。

    1. csiaddons.openshift.io/state アノテーションを managed から unmanaged に更新します。

      $ oc annotate encryptionkeyrotationcronjob <encryptionkeyrotationcronjob_name> "csiaddons.openshift.io/state=unmanaged" --overwrite=true

      ここで、<encryptionkeyrotationcronjob_name> は EncryptionKeyRotationCronJob CR の名前です。

    2. spec フィールドの下に suspend: true を追加します。

      $ oc patch encryptionkeyrotationcronjob <encryptionkeyrotationcronjob_name> -p '{"spec": {"suspend": true}}' --type=merge.
  3. 保存して終了します。PVC の鍵のローテーションは無効になります。
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.