🦁

AWS SecureTransport: データ転送の安全性を確保する方法

2024/07/14に公開

転送中のデータのセキュリティが非常に重要ですが、AWSはデータの送受信を安全にするためのソリューションを多く提供しています。その一つが、Amazon S3バケットポリシーにおけるSecureTransport条件です。このブログでは、SecureTransportについて紹介します。

SecureTransportとは何か?

SecureTransportは、データの転送において安全なプロトコル(例えばHTTPS)の使用を強制するためのIAMポリシーの条件です。この条件を使用することで、Amazon S3バケットへのすべてのリクエストが暗号化された接続のみを許可します。

SecureTransportが重要な理由

  • データの完全性と機密性:HTTPSはデータを暗号化し、転送中に未承認の第三者がデータを変更したり読むことを防ぎます。
  • セキュリティベストプラクティス:HTTPSを強制することは、セキュリティのベストプラクティスに一致し、データ漏洩やサイバー攻撃のリスクを減少させます。

SecureTransportの実装

S3バケットのHTTPSを強制するには、aws:SecureTransport条件を持つバケットポリシーを追加します。

  1. AWS管理コンソールにログインし、S3サービスに移動します。

  2. 対象のバケットを選択し、「アクセス許可」タブを開きます。

  3. 「バケットポリシーの編集」 をクリックし、次のJSONポリシーを追加します。

    {
        "Version": "2012-10-17",
        "Id": "SecureTransportPolicy",
        "Statement": [
            {
                "Sid": "AllowSecureTransportOnly",
                "Effect": "Deny",
                "Principal": "*",
                "Action": "s3:*",
                "Resource": [
                    "arn:aws:s3:::example-bucket",
                    "arn:aws:s3:::example-bucket/*"
                ],
                "Condition": {
                    "Bool": {
                        "aws:SecureTransport": "false"
                    }
                }
            }
        ]
    }
    
  4. ポリシーを保存します。これにより、HTTPSを使用しないリクエストが拒否され、転送中のデータが暗号化されます。

まとめ

Amazon S3バケットポリシーにSecureTransportを実装することは、データ転送のセキュリティを強化するシンプルで強力な方法です。すべての通信がHTTPSを使用して暗号化されることを保証することで、データの完全性と機密性を保護し、コンプライアンス要件を満たし、セキュリティのベストプラクティスに従うことができます。

参考

https://docs.aws.amazon.com/ja_jp/AmazonS3/latest/userguide/security-best-practices.html

Discussion