

# SEC08-BP04 アクセスコントロールを適用する
<a name="sec_protect_data_rest_access_control"></a>

 保管中のデータを保護するには、分離やバージョニングなどのメカニズムを使ってアクセス制御を実施し、最小特権の原則を適用してください。データへパブリックアクセスが付与されるのを防止します。 

**期待される成果:** 「知る必要」に基づき、認証されたユーザーのみがデータへアクセスできるようにします。定期的なバックアップとバージョニングでデータを保護し、意図しない、または不注意によるデータの改ざんや削除を防止します。重要なデータを他のデータから分離して、機密性とデータ整合性を保護します。

**一般的なアンチパターン:**
+  機密度要件と分類の異なるデータを一緒に保管する。 
+  復号化キーに、過度に寛容なアクセス許可を使用する。
+  データを不適切に分類する。
+  重要なデータの詳細なバックアップを保持しない。
+  本番データへの永続的なアクセスを提供する。
+  データアクセスを監査することも、定期的にアクセス許可を審査することもしていない。 

**このベストプラクティスが確立されていない場合のリスクレベル:** 低 

## 実装のガイダンス
<a name="implementation-guidance"></a>

 アクセス (最小特権を使用)、分離、バージョニングなど、複数のコントロールによって保管中のデータを保護できます。データへのアクセスは、AWS CloudTrail などの探査メカニズムと、Amazon Simple Storage Service (Amazon S3) アクセスログなどのサービスレベルログを使用して監査する必要があります。パブリックにアクセス可能なデータをインベントリし、時間の経過とともにパブリックで利用可能なデータ量の削減します。 

 Amazon Glacier のボールトロックと Amazon S3 オブジェクトロックは、Amazon S3 のオブジェクトに対して必須のアクセス制御を提供します。ボールトポリシーがコンプライアンスオプションを使用してロックされると、ロックの有効期限が切れるまではルートユーザーでも変更できません。 

### 実装手順
<a name="implementation-steps"></a>
+  **アクセスコントロールを適用する**: 暗号キーへのアクセスを含め、最小特権を用いたアクセスコントロールを適用します。 
+  **さまざまな分類レベルに基づいてデータを分離する**: データ分類レベルには異なる AWS アカウント を使用し、それらのアカウントの管理には [AWS Organizations](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_introduction.html) を使用します。 
+  **AWS Key Management Service (AWS KMS) ポリシーをレビューする**: [AWS KMS ポリシーで付与されるアクセス](https://docs.aws.amazon.com/kms/latest/developerguide/overview.html)のレベルを確認します。 
+  **Amazon S3 バケットとオブジェクトアクセス許可をレビューする**: S3 バケットのポリシーで付与されるアクセスのレベルを定期的に確認します。ベストプラクティスは、バケットを公開で読み取ったり書き込んだりできないようにすることです。[AWS Config](https://docs.aws.amazon.com/config/latest/developerguide/managed-rules-by-aws-config.html) を使用して公開されているバケットを検出し、Amazon CloudFront を使用して Amazon S3 からコンテンツを提供することを検討します。パブリックアクセスを許可してはならないバケットが、パブリックアクセスを防ぐように正しく構成されていることを確認します。デフォルトでは、すべての S3 バケットはプライベートであり、明示的にアクセスが許可されたユーザーのみがアクセスできます。 
+  **[AWS IAM Access Analyzer を有効にする](https://docs.aws.amazon.com//latest/UserGuide/what-is-access-analyzer.html):** IAM Access Analyzer は、Amazon S3 バケットを分析して、[S3 ポリシーが外部エンティティにアクセスを付与した時点で検出結果を生成します。](https://docs.aws.amazon.com//latest/UserGuide/access-analyzer-resources.html#access-analyzer-s3) 
+  **[Amazon S3 バージョニング](https://docs.aws.amazon.com/AmazonS3/latest/userguide/Versioning.html)と[オブジェクトロック](https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-lock.html)**を有効にします (該当する場合)。 
+  **[Amazon S3 インベントリを使用する](https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-inventory.html)**: Amazon S3 インベントリは、S3 オブジェクトのレプリケーションと暗号化ステータスの監査とレポートに使用できます。 
+  **[Amazon EBS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-modifying-snapshot-permissions.html) および [AMI 共有](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/sharing-amis.html)アクセス許可をレビューする**: 共有アクセス許可は、イメージとボリュームをワークロード外の AWS アカウント に共有することを可能にします。 
+  **[AWS Resource Access Manager](https://docs.aws.amazon.com/ram/latest/userguide/what-is.html) Shares を定期的にレビューして、リソースを共有し続けるかどうかを決定します。** Resource Access Manager では、AWS Network Firewall ポリシー、Amazon Route 53 リゾルバールール、およびサブネットなど、Amazon VPC 内のリソースを共有できます。定期的に共有リソースを監査し、共有が不要になったリソースは共有を停止します。 

## リソース
<a name="resources"></a>

 **関連するベストプラクティス:** 
+ [SEC03-BP01 アクセス要件を定義する](sec_permissions_define.md) 
+  [SEC03-BP02 最小特権のアクセスを付与します](sec_permissions_least_privileges.md) 

 **関連するドキュメント:** 
+  [AWS KMS Cryptographic Details Whitepaper](https://docs.aws.amazon.com/kms/latest/cryptographic-details/intro.html) (AWS KMS 暗号化の詳細についてのホワイトペーパー) 
+  [Introduction to Managing Access Permissions to Your Amazon S3 Resources](https://docs.aws.amazon.com/AmazonS3/latest/dev/intro-managing-access-s3-resources.html) (Amazon S3 リソースへのアクセス許可の管理の導入) 
+  [Overview of managing access to your AWS KMS resources](https://docs.aws.amazon.com/kms/latest/developerguide/control-access-overview.html) (AWS KMS リソースへのアクセス管理の概要) 
+  [AWS Config ルール](https://docs.aws.amazon.com/config/latest/developerguide/managed-rules-by-aws-config.html) 
+  [Amazon S3 \$1 Amazon CloudFront: A Match Made in the Cloud](https://aws.amazon.com/blogs/networking-and-content-delivery/amazon-s3-amazon-cloudfront-a-match-made-in-the-cloud/) (理想的な組み合わせ) 
+  [Using versioning](https://docs.aws.amazon.com/AmazonS3/latest/dev/Versioning.html) (バージョニングの使用) 
+  [Locking Objects Using Amazon S3 Object Lock](https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html) (Amazon S3 Object Lock を使ってオブジェクトをロックする) 
+  [Sharing an Amazon EBS Snapshot](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-modifying-snapshot-permissions.html) (Amazon EBS スナップショットの共有) 
+  [共有 AMI](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/sharing-amis.html) 
+  [Hosting a single-page application on Amazon S3](https://docs.aws.amazon.com/prescriptive-guidance/latest/patterns/deploy-a-react-based-single-page-application-to-amazon-s3-and-cloudfront.html) (Amazon S3 でのシングルページアプリケーションのホスティング) 

 **関連動画:** 
+  [Securing Your Block Storage on AWS](https://youtu.be/Y1hE1Nkcxs8) (AWS でブロックストレージをセキュリティ保護する) 