

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

# Elastic Beanstalk のセキュリティベストプラクティス
<a name="security-best-practices"></a>

AWS Elastic Beanstalk には、独自のセキュリティポリシーを開発および実装する際に考慮すべきいくつかのセキュリティ機能が用意されています。以下のベストプラクティスは一般的なガイドラインであり、完全なセキュリティソリューションに相当するものではありません。これらのベストプラクティスはお客様の環境に適切ではないか、十分ではない場合があるため、絶対的な解決策ではなく、役に立つ情報としてお考えください。

Elastic Beanstalk のその他のセキュリティトピックについては、「[AWS Elastic Beanstalk セキュリティ](security.md)」を参照してください。

## 予防的セキュリティのベストプラクティス
<a name="security-best-practices.preventive"></a>

予防的セキュリティ管理では、インシデントが発生する前に防ぐことを試みます。

### 最小特権アクセスの実装
<a name="security-best-practices.preventive.least-priv"></a>

Elastic Beanstalk は、[インスタンスプロファイル](iam-instanceprofile.md)、[サービスロール](iam-servicerole.md)、IAM ユーザーの AWS Identity and Access Management (IAM) 管理ポリシーを提供します。 [Elastic Beanstalk ユーザーポリシーの管理](AWSHowTo.iam.managed-policies.md)これらの管理ポリシーでは、環境とアプリケーションの正しいオペレーションに必要なすべてのアクセス権限を指定します。

アプリケーションで、管理ポリシーのすべてのアクセス権限が必要とは限りません。カスタマイズにより、環境のインスタンス、Elastic Beanstalk サービス、およびユーザーがタスクを実行するために必要なアクセス許可のみを付与できます。これは特に、ユーザーロールごとに異なるアクセス権限のニーズを持つユーザーポリシーに関連します。最小特権アクセスの実装は、セキュリティリスクと、エラーや悪意によってもたらされる可能性のある影響の低減における基本です。

### 機密性の高いアプリケーションデータを保護する
<a name="security-best-practices.preventive.sensitive-data"></a>

アプリケーションが認証情報、API キー、設定データなどの機密情報にアクセスする必要がある場合は、以下の手順に従ってセキュリティを維持します。
+ アプリケーションコード内のそれぞれの SDKs AWS Secrets Manager または APIs を使用して、 または AWS Systems Manager Parameter Store から直接機密データを取得します。これにより、最も安全で柔軟な方法で機密情報にアクセスできます。
+ 環境変数として AWS Secrets Manager または Parameter Store AWS Systems Manager から機密データを渡す場合は (「」を参照[環境変数へのシークレットのフェッチ](AWSHowTo.secrets.env-vars.md))、EC2 キーペアへのアクセスを慎重に制限し、インスタンスに対して最小特権のアクセス許可を持つ適切な IAM ロールを設定します。
+ アプリケーションコードで機密データを出力、ログ記録、または公開しないでください。これらの値は、権限のないユーザーに表示される可能性のあるログファイルやエラーメッセージに含まれる可能性があるためです。

### プラットフォームを定期的に更新する
<a name="security-best-practices.preventive.update"></a>

Elastic Beanstalk は、新しいプラットフォームバージョンを定期的にリリースして、すべてのプラットフォームを更新します。新しいプラットフォームバージョンでは、オペレーティングシステム、ランタイム、アプリケーションサーバー、ウェブサーバーの更新、Elastic Beanstalk コンポーネントの更新が提供されます。これらのプラットフォーム更新の多くには、重要なセキュリティ修正が含まれています。Elastic Beanstalk 環境が、サポートされているプラットフォームバージョン (通常はプラットフォームの最新バージョン) で実行されていることを確認してください。詳細については、「[Elastic Beanstalk 環境のプラットフォームバージョンの更新](using-features.platform.upgrade.md)」を参照してください。

環境のプラットフォームを最新の状態に保つ最も簡単な方法は、[マネージドプラットフォーム更新](environment-platform-update-managed.md)を使用するように環境を設定することです。

### 環境インスタンスに IMDSv2 を適用する
<a name="security-best-practices.preventive.imdsv2"></a>

Elastic Beanstalk 環境の Amazon Elastic Compute Cloud (Amazon EC2) インスタンスは、インスタンス上のコンポーネントである Instance Metadata Service (IMDS) を使用して、インスタンスメタデータに安全にアクセスします。IMDS は、IMDSv1 と IMDSv2 という 2 つのデータアクセス手法をサポートしています。IMDSv2 はセッション指向のリクエストを使用し、IMDS へのアクセス試行に利用される可能性があるいくつかのタイプの脆弱性を軽減します。IMDSv2 の利点の詳細については、[EC2 Instance Metadata Service に多層防御を追加する拡張機能](https://aws.amazon.com/blogs/security/defense-in-depth-open-firewalls-reverse-proxies-ssrf-vulnerabilities-ec2-instance-metadata-service/)のページを参照してください。

IMDSv2 の方が安全性に優れているため、インスタンスには IMDSv2 を適用するようお勧めします。IMDSv2 を適用するには、アプリケーションのすべてのコンポーネントが IMDSv2 をサポートしていることを確認してから、IMDSv1 を無効にします。詳細については、「[Elastic Beanstalk 環境のインスタンスでの IMDS の設定](environments-cfg-ec2-imds.md)」を参照してください。

## セキュリティ問題の検出ベストプラクティス
<a name="security-best-practices.detective"></a>

セキュリティコントロールの検出により、セキュリティ違反が発生した後に識別されます。セキュリティ上の脅威やインシデントの検出に役立ちます。

### モニタリングを実装する
<a name="security-best-practices.detective.monitor"></a>

モニタリングは、Elastic Beanstalk ソリューションの信頼性、セキュリティ、可用性、パフォーマンスを維持する上で重要な部分です。 には、 AWS サービスのモニタリングに役立ついくつかのツールとサービス AWS が用意されています。

以下は、モニタリングする項目のいくつかの例です。
+ *Elastic Beanstalk の Amazon CloudWatch メトリクス* – 主要な Elastic Beanstalk メトリクスとアプリケーションのカスタムメトリクスのアラームを設定します。詳細については、「[「Amazon CloudWatch で Elastic Beanstalk を使用する」](AWSHowTo.cloudwatch.md)」を参照してください。
+ *AWS CloudTrail エントリ* – `UpdateEnvironment`や など、可用性に影響を与える可能性のあるアクションを追跡します`TerminateEnvironment`。詳細については、「[を使用した Elastic Beanstalk API コールのログ記録 AWS CloudTrail](AWSHowTo.cloudtrail.md)」を参照してください。

### 有効 AWS Config
<a name="security-best-practices.detective.config"></a>

AWS Config は、アカウント内の AWS リソースの設定の詳細ビューを提供します。リソース間の関係、設定変更の履歴、関係と設定の時間的な変化を確認できます。

を使用して AWS Config 、データコンプライアンスのリソース設定を評価するルールを定義できます。 AWS Config ルールは、Elastic Beanstalk リソースの理想的な構成設定を表します。リソースがルールに違反し、*非準拠*としてフラグ付けされている場合、Amazon Simple Notification Service (Amazon SNS) トピックを使用してアラートを送信 AWS Config できます。詳細については、[を使用した Elastic Beanstalk リソースの検索と追跡 AWS Config](AWSHowTo.config.md) を参照してください