説明
Neptune はグラフの関係情報やアプリケーションの中核となるモデルを保存することが多く、保存データの保護が重要です。ストレージの暗号化は、データ、ログ、自動バックアップ、スナップショットを保護します。実際に暗号化されていないクラスターには、この保護がありません。
暗号化はデータベースの権限やネットワークの制限の代わりにはなりません。稼働中のクラスターの実際の暗号化状態とキーも確認してください。
想定される影響
- 暗号化されていないストレージやバックアップを不正に取得されると、グラフデータや機密性の高い関係情報が漏えいするおそれがあります。
- 組織の保存データの暗号化要件を満たせない場合があります。
対処方法
- 新規クラスターでは
spec.forProvider.storageEncryptedをtrueに設定し、Composition の基本テンプレートにも適用してください。 - 既定の KMS キーか、組織の要件に合うカスタマーマネージドキーを使用し、必要なキーの権限を維持してください。
- 既存の非暗号化クラスターを直接暗号化することはできません。スナップショットから新しい暗号化クラスターへ復元する手順を計画し、データの整合性とアプリケーションの切り替えを確認してください。
例
新規クラスターの設定の抜粋です。必要なプロバイダー設定とネットワークは別途構成してください。skipFinalSnapshot: true は削除時の最終スナップショットを省略するため、バックアップ方針も確認が必要です。
変更前
yaml
apiVersion: neptune.aws.crossplane.io/v1alpha1
kind: DBCluster
metadata:
name: sample-cluster3
spec:
forProvider:
region: eu-central-1
engine: neptune
enableIAMDatabaseAuthentication: true
skipFinalSnapshot: true
ストレージの暗号化要件が明示されていません。実際のクラスターの状態を確認してください。
変更後
yaml
apiVersion: neptune.aws.crossplane.io/v1alpha1
kind: DBCluster
metadata:
name: sample-cluster
spec:
forProvider:
region: eu-central-1
engine: neptune
enableIAMDatabaseAuthentication: true
skipFinalSnapshot: true
storageEncrypted: true
新規クラスターの暗号化を要求します。既存データの移行やアプリケーションの切り替えを自動で行う例ではありません。