翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
新しい Amazon Redshift クラスターに必要な SSL エンドポイントがあることを確認する
作成者: Priyanka Chaudhary (AWS)
概要
このパターンは、セキュアソケットレイヤー (SSL) エンドポイントなしで新しい Amazon Redshift クラスターが起動されたときに自動的に通知するAmazon Web Services (AWS) CloudFormation テンプレートを提供します。
Amazon Redshift は、 フルマネージド型、ペタバイト規模のクラウドベース型データウェアハウスサービスです。大規模なデータセットの保存と分析を目的として設計されています。また、大規模なデータベース移行にも使用されます。セキュリティ上の理由から、Amazon Redshift はユーザーの SQL Server クライアントアプリケーションと Amazon Redshift クラスター間の接続を暗号化する SSL をサポートしています。クラスターが SSL 接続を要求するように設定するには、リリースの間クラスターに関連付けられているパラメータグループで require_SSL
パラメータを true
に設定します。
このパターンで提供されるセキュリティコントロールは、AWS CloudTrail ログ内の Amazon Redshift API コールを監視し、「クラスターの作成」、「クラスターの変更」、「クラスタースナップショットからリストアする」、「クラスターパラメータグループの作成」、および 「クラスターパラメータグループの変更」API の Amazon CloudWatch Eventsを開始します。イベントがこれらの API のいずれかを検出すると、Python スクリプトを実行する AWS Lambda を呼び出します。Python 関数は、リストされている CloudTrail イベントの CloudWatch イベントを分析します。Amazon Redshift クラスターが既存のスナップショットから作成、変更、または復元されるとき、クラスターの新しいパラメータグループが作成されるとき、または既存のパラメータグループが変更されると、関数はクラスターのrequire_SSL
パラメータをチェックします。パラメータ値がfalse
の場合、関数は Amazon Redshift クラスター名、AWS リージョン、AWS アカウント、およびこの通知の送信元である Lambda の Amazon リソースネーム (ARN) などの関連情報を含む Amazon Simple Notification Service (Amazon SNS) 通知をユーザーに送信します。
前提条件と制限
前提条件
アクティブな AWS アカウント。
クラスターサブネットグループと関連するセキュリティグループを持つ仮想プライベートクラウド (VPC)
機能制限
このセキュリティコントロールは地域ごとに行われます。監視する AWS リージョンごとにデプロイする必要があります。
アーキテクチャ
ターゲットアーキテクチャ

自動化とスケール
AWS Organizations
を使用している場合は、AWS Cloudformation StackSets を使用して、モニタリングする複数のアカウントにこのテンプレートをデプロイできます。
ツール
AWS サービス
「AWS CloudFormation」 を使用することで、AWS リソースをセットアップし、迅速かつ一貫したプロビジョニングを行い、AWS アカウントとリージョン全体でライフサイクルの最初から最後までリソースを管理できます。リソースを個別に管理する代わりに、テンプレートを使用してリソースとその依存関係を記述し、それらをスタックとしてまとめて起動して設定できます。
Amazon CloudWatch Events – Amazon CloudWatch Events は、AWS リソースの変更を説明するシステムイベントのほぼリアルタイムのストリームを提供します。
「AWS Lambda
」 – AWS Lambda はサーバーのプロビジョニングや管理を行わずにコードの実行を支援できるコンピューティングサービスです。 Amazon Redshift - Amazon Redshift は、クラウド内でのフルマネージド型、ペタバイト規模のデータウェアハウスサービスです。
Amazon S3 — Amazon Simple Storage Service (Amazon S3) は、オブジェクトストレージサービスです。Simple Storage Service (Amazon S3) を使用すると、いつでもウェブ上の任意の場所から任意の量のデータを保存および取得できます。
Amazon SNS — Amazon Simple Notification Service (Amazon SNS) は、ウェブサーバーやメールアドレスなど、パブリッシャーとクライアント間のメッセージ配信または送信を調整して管理します。サブスクライバーは、サブスクライブしているトピックに対して発行されたすべてのメッセージを受信します。また、同じトピックのサブスクライバーはすべて同じメッセージを受信します。
コード
このパターンには、以下の添付ファイルが含まれます。
RedshiftSSLEndpointsRequired.zip
— セキュリティコントロール用の Lambda コード。RedshiftSSLEndpointsRequired.yml
— イベントとLambda 関数をセットアップする CloudFormation テンプレート。
エピック
タスク | 説明 | 必要なスキル |
---|---|---|
S3 バケットを定義します。 | 「Amazon S3 コンソールで | クラウドアーキテクト |
Lambda コードをアップロードします。 | 「添付ファイル」セクションにある Lambda コードの.zip ファイルを S3 バケットにアップロードします。 | クラウドアーキテクト |
タスク | 説明 | 必要なスキル |
---|---|---|
AWS CloudFormation のテンプレートを起動します。 | S3 バケットと同じ 「AWS リージョンで AWS CloudFormation コンソール | クラウドアーキテクト |
テンプレートのパラメータを入力します。 | テンプレートを起動すると、次の情報の入力を求められます。
| クラウドアーキテクト |
タスク | 説明 | 必要なスキル |
---|---|---|
サブスクリプションを確認します。 | CloudFormation テンプレートが正常にデプロイされると、指定したメールアドレスにサブスクリプションメールが送信されます。違反通知の受信を開始するには、このメールサブスクリプションを確認する必要があります。 | クラウドアーキテクト |
関連リソース
S3 バケットの作成 (Amazon S3 ドキュメント)
ファイルを S3 バケットにアップロードする (Amazon S3 ドキュメント)
AWS CloudFormation コンソールでのスタックの作成 (AWS CloudFormation ドキュメント)
AWS CloudTrail を使用して AWS API コールでトリガーする CloudWatch Events ルールの作成(AWS CloudTrailドキュメント)
Amazon Redshift クラスターの作成 (Amazon Redshift ドキュメント)
接続用のセキュリティオプションの設定 (Amazon Redshift ドキュメント)
添付ファイル
このドキュメントに関連する追加コンテンツにアクセスするには、次のファイルを解凍してください。「attachment.zip」