

# SEC09-BP02 強制傳輸中加密
<a name="sec_protect_data_transit_encrypt"></a>

根據您組織的政策、法規義務和標準強制已定義的加密需求，以符合組織、法律和合規上的要求。只有在虛擬私有雲端 (VPC) 以外傳輸敏感資料時才使用加密協定。加密有助於保持資料完整性，甚至當資料傳輸於不受信任的網路。

 **預期成果：**您將資源與網際網路之間的網路流量加密，以減少對資料的未經授權存取。您可以根據您的安全要求，加密內部 AWS 環境中的網路流量。您使用安全的 TLS 協定和密碼套件，為所有傳輸中的資料加密。

 **常見的反模式：**
+  使用 SSL、TLS 和其他套件元件已棄用的版本 (例如，SSL v3.0、1024 位元 RSA 金鑰和 RC4 密碼)。
+  允許未加密的 (HTTP) 流量來往面向公眾的資源。
+  未監控 X.509 憑證並在到期前更換。
+  對 TLS 使用自我簽署的 X.509 憑證。

 **未建立此最佳實務時的曝險等級：**高 

## 實作指引
<a name="implementation-guidance"></a>

 AWS 服務提供使用 TLS 的 HTTPS 端點以進行通訊，在與 AWS API 通訊時提供傳輸中加密。不安全的 HTTP 通訊協定可以在虛擬私有雲端 (VPC) 中，透過使用安全群組來進行稽核和封鎖。在 Amazon CloudFront 或 [Application Load Balancer](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-listeners.html#redirect-actions) 中，HTTP 請求也可以[自動重新導向至 HTTPS](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-https-viewers-to-cloudfront.html)。您可以使用 [Amazon Simple Storage Service (Amazon S3) 儲存貯體政策](https://aws.amazon.com/blogs/storage/enforcing-encryption-in-transit-with-tls1-2-or-higher-with-amazon-s3/)來限制透過 HTTP 上傳物件的能力，並有效地強制執行使用 HTTPS，將物件上傳至儲存貯體。您可以全權控制您的運算資源，以在各個服務中實作傳輸中加密。此外，還可以從外部網路或 [AWS Direct Connect](https://aws.amazon.com/directconnect/) 使用 VPN 連線功能進入 VPC，加速流量加密。確認您的用戶端使用至少 TLS 1.2 對 AWS APIs 進行呼叫，因為 [AWS TLS 的早期版本已於 2024 年 2 月棄用](https://aws.amazon.com/blogs/security/tls-1-2-required-for-aws-endpoints/)。建議您使用 TLS 1.3。如果您有傳輸中加密的特殊要求，您可以在 AWS Marketplace 中找到可用的第三方解決方案。

### 實作步驟
<a name="implementation-steps"></a>
+  **強制傳輸中加密：**您定義的加密要求應符合最新標準和最佳實務，並僅允許採用安全協定。例如，設定安全群組，僅允許 HTTPS 協定連至 Application Load Balancer 或 Amazon EC2 執行個體。
+  **在邊緣服務中設定安全協定：**[使用 Amazon CloudFront 設定 HTTPS](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-https.html)，並使用[適用於您的安全狀態和使用案例的安全設定檔](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/secure-connections-supported-viewer-protocols-ciphers.html#secure-connections-supported-ciphers)。
+  **使用 [VPN 進行外部連線](https://docs.aws.amazon.com/vpc/latest/userguide/vpn-connections.html)：**考慮使用 IPsec VPN，保護點對點或網路對網路連線，以協助提供資料隱私和完整性。
+  **在負載平衡器中設定安全協定**：選取安全政策，以提供要連接到接聽程式的用戶端所支援的最強固的密碼套件。[為 Application Load Balancer 建立 HTTPS 接聽程式](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/create-https-listener.html)。
+  **在 Amazon Redshift 中設定安全協定：**將您的叢集設定為要求 [Secure Socket Layer (SSL) 或 Transport Layer Security (TLS) 連線](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.SSL.html)。
+  **設定安全協定：**檢閱 AWS 服務文件以確定傳輸中加密功能。
+  **設定上傳至 Amazon S3 儲存貯體時的安全存取：**使用 Amazon S3 儲存貯體政策控制對資料[強制安全存取](https://docs.aws.amazon.com/AmazonS3/latest/userguide/security-best-practices.html)。
+  **考慮使用 [AWS Certificate Manager](https://aws.amazon.com/certificate-manager/)：**ACM 可讓您佈建、管理和部署 TLS 憑證與 AWS 服務搭配使用。
+  **考慮使用 [AWS 私有憑證授權單位](https://aws.amazon.com/private-ca/) 滿足私有 PKI 需求：**AWS 私有 CA 可讓您建立私有憑證授權機構 (CA) 階層來發行可用於建立已加密 TLS 通道的終端實體 X.509 憑證。

## 資源
<a name="resources"></a>

 **相關文件：**
+ [ 將 HTTPS 與 CloudFront 搭配使用](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-https.html)
+ [ 使用 AWS Virtual Private Network 將 VPC 連線至遠端網路](https://docs.aws.amazon.com/vpc/latest/userguide/vpn-connections.html)
+ [ 為 Application Load Balancer 建立 HTTPS 接聽程式](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/create-https-listener.html)
+ [ 教學課程：在 Amazon Linux 2 上設定 SSL/TLS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/SSL-on-amazon-linux-2.html)
+ [ 使用 SSL/TLS 加密與資料庫執行個體的連線](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.SSL.html)
+ [ 設定連線的安全選項](https://docs.aws.amazon.com/redshift/latest/mgmt/connecting-ssl-support.html)