Amazon Data Firehose リソースが AWSKMSキーで暗号化されていない場合の識別とアラート - AWS 規範ガイダンス

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Amazon Data Firehose リソースが AWSKMSキーで暗号化されていない場合の識別とアラート

作成者: Ram Kandaswamy (AWS)

概要

コンプライアンスのために、一部の組織では Amazon Data Firehose などのデータ配信リソースで暗号化を有効にする必要があります。このパターンは、リソースがコンプライアンス違反になったときに監視、検出、通知する方法を示しています。

暗号化要件を維持するために、このパターンをアマゾン ウェブ サービス (AWS) で使用して、 AWS Key Management Service (AWS KMS) キーで暗号化されていない Firehose 配信リソースを自動的にモニタリングおよび検出できます。このソリューションはアラート通知を送信し、拡張して自動修復を実行することもできます。このソリューションは、AWSLanding Zone または AWS Control Tower を使用する環境など、個々のアカウントまたはマルチアカウント環境に適用できます。

前提条件と制限

前提条件

  • Firehose 配信ストリーム

  • このインフラストラクチャの自動化AWS CloudFormationで使用される に対する十分なアクセス許可と知識

機能制限

このソリューションは、検出にAWS CloudTrail イベントを使用するため、リアルタイムではありません。また、暗号化されていないリソースが作成されてから通知が送信されるまでに遅延が生じます。

アーキテクチャ

ターゲットテクノロジースタック

このソリューションはサーバーレステクノロジーと以下のサービスを使用します。

  • AWS CloudTrail

  • Amazon CloudWatch

  • AWS コマンドラインインターフェイス (AWSCLI)

  • AWS Identity and Access Management (IAM)

  • Amazon Data Firehose

  • AWS Lambda

  • Amazon Simple Notification Service (Amazon SNS)

ターゲット アーキテクチャ

プロセスの 5 つのステップを示す図。
  1. ユーザーが Firehose を作成または変更します。

  2. CloudTrail イベントが検出され、一致します。

  3. AWS Lambda が呼び出されます。

  4. 非準拠のリソースが特定されます。

  5. メールが送信されます。

自動化とスケール

を使用するとAWS CloudFormation StackSets、1 つのコマンドで複数のAWSリージョンまたはアカウントにこのソリューションを適用できます。

ツール

  • AWS CloudTrail - AWS CloudTrail は、AWSアカウントのガバナンス、コンプライアンス、運用およびリスクの監査を可能にする AWSのサービスです。ユーザー、ロール、または AWS のサービスによって実行されたアクションは、 CloudTrail にイベントとして記録されます。イベントには、 AWS マネジメントコンソール、コマンドラインインターフェイス、および AWS APIオペレーションで実行されたアクションAWSSDKsが含まれます。

  • Amazon CloudWatch Events – Amazon CloudWatch Events は、 near-real-time AWSリソースの変更を記述するシステムイベントのストリームを配信します。

  • AWS CLI - AWS コマンドラインインターフェイス (AWSCLI) は、コマンドラインシェルのコマンドを使用して AWSサービスとやり取りできるオープンソースツールです。 

  • IAM – AWS Identity and Access Management (IAM) は、 AWSリソースへのアクセスを安全に制御するのに役立つウェブサービスです。IAM を使用して、リソースを使用するために認証 (サインイン) され、許可された (アクセス許可を持つ) ユーザーを制御します。 

  • Amazon Data Firehose – Amazon Data Firehose は、リアルタイムのストリーミングデータを配信するためのフルマネージドサービスです。Firehose では、アプリケーションを記述したり、リソースを管理したりする必要はありません。Firehose にデータを送信するようにデータプロデューサーを設定すると、指定した送信先にデータが自動的に配信されます。

  • AWS Lambda – AWS Lambda は、サーバーのプロビジョニングや管理を行わずにコードの実行をサポートするコンピューティングサービスです。Lambda は必要に応じてコードを実行し、1 日あたり数個のリクエストから 1 秒あたり数千のリクエストまで自動的にスケールします。課金は実際に消費したコンピューティング時間に対してのみ発生します。コードが実行されていない場合、料金は発生しません。 

  • Amazon SNS – Amazon Simple Notification Service (Amazon SNS) は、パブリッシャーからサブスクライバー (プロデューサーおよびコンシューマーとも呼ばれます) へのメッセージ配信を提供するマネージドサービスです。

エピック

タスク説明必要なスキル

AWS CloudFormation StackSets をデプロイします。

でAWSCLI、firehose-encryption-checker.yamlテンプレート (添付) を使用して、次のコマンドを実行してスタックセットを作成します。 パラメータに有効な Amazon SNSトピック Amazon リソースネーム (ARN) を指定します。デプロイでは、 テンプレートで説明されているように、 CloudWatch イベントルール、Lambda 関数、および必要なアクセス許可を持つ IAMロールが正常に作成されるはずです。

aws cloudformation create-stack-set    --stack-set-name my-stack-set   --template-body file://firehose-encryption-checker.yaml 

クラウドアーキテクト、システム管理者

がスタックインスタンスを作成する。

スタックは、選択したAWSリージョンと 1 つ以上のアカウントで作成する必要があります。 スタックインスタンスを作成するには、スタック名の値、アカウント番号、リージョンを独自に設定した内容に置き換えて、次のコマンドを実行します。

aws cloudformation create-stack-instances     --stack-set-name my-stack-set    --accounts 123456789012 223456789012   --regions us-east-1 us-east-2 us-west-1 us-west-2     --operation-preferences FailureToleranceCount=1 

クラウドアーキテクト、システム管理者

関連リソース

追加情報

AWS Config は Firehose 配信ストリームリソースタイプをサポートしていないため、Config AWS ルールをソリューションで使用することはできません。

添付ファイル

このドキュメントに関連する追加コンテンツにアクセスするには、次のファイルを解凍してください。「attachment.zip