【Security Hub修復手順】[Neptune.1] Neptune DBクラスターは、保管中に暗号化する必要があります

AWS SecurityHub 基礎セキュリティのベストプラクティスコントロール修復手順をご紹介します。
2024.01.19

こんにちは、岩城です。

皆さん、お使いのAWS環境のセキュリティチェックはしていますか?

当エントリでは、AWS Security HubによるAWS環境のセキュリティ状況スコアリングに該当する項目についての修復手順をご紹介します。

本記事の対象コントロール

[Neptune.1] Neptune DB クラスターは、保管中に暗号化する必要があります

[Neptune.1] Neptune DB clusters should be encrypted at rest

前提条件

本記事はAWS Security Hubで「AWS基礎セキュリティのベストプラクティススタンダード」を利用されている方向けの内容となります。 AWS Security Hubの詳細についてはこちらのブログをご覧ください。

対象コントロールの説明

本コントロールは、Neptune DBクラスター(以降、クラスター)の暗号化の有効を求めるものです。

データコントロールはユーザー側の責任であるため、保管時の暗号化は必須です。これを行わない場合、データ管理の責任を放棄することになります。

基本はAWSが用意するデフォルトのキーで問題ありません。

以下のような要件がある場合は、カスタマー管理型のキーを利用します。

  • ユーザーが暗号化キーを作成・所有・管理したい場合
  • 暗号化キーを削除することによってデータ破棄の担保としたい場合
  • キーポリシーで暗号化キーを利用できる IAM ユーザーを制御したい場合

なお、昨年まではマネジメントコンソールで作成する際、暗号化有無を選択できましたが、現在はデフォルトで暗号化されるようになっています。

旧マネコン(たまたまキャプチャしていました)

現在のマネコン

CloudFormationやCLIなど、マネジメントコンソール以外からの作成では、暗号化有無を選択できるので必ず有効化するようにしてください。

修復手順

暗号化設定は後から有効にできないので、クラスターの再作成が必要です。

既存アプリケーションやクライアントの接続先となるクラスター名が変わりエンドポイントも変わるため、システムへの影響が考えられます。

切り替えタイミングやクラスターを利用しているアプリケーションやクライアントの全量を確認するなど、影響調査を行った上で修復を計画してください。

公式ドキュメントに記載されている手順をもとに、スナップショットからクラスターを作成します。

まずはスナップショットを手動取得します。自動取得されたものを利用する場合はスキップします。

取得したスナップショットからクラスターを作成します。

既存のクラスターと同名で作成することができないので注意してください。

マネジメントコンソールで作成する場合は、デフォルトで有効化されるため、暗号化の有効・無効を意識する必要はありません。

暗号化で利用するKMSキーをAWSデフォルトのキーではなく、カスタマー管理型のキーを利用する場合は、対象のKMSキーを指定してください。

クラスターが作成され、正常に利用できることを確認後、暗号化が無効な旧クラスターを削除して修復完了です。

おわりに

今回は、AWS Security HubによるAWS環境のセキュリティ状況スコアリングに該当する項目についての修正手順をご紹介しました。

コントロールを修正して、お使いのAWS環境のセキュリティをパワーアップさせましょう!

最後までお読みいただきありがとうございました!どなたかのお役に立てれば幸いです。