

 Amazon Redshift 將不再支援從修補程式 198 開始建立新的 Python UDFs。現有 Python UDF 將繼續正常運作至 2026 年 6 月 30 日。如需詳細資訊，請參閱[部落格文章](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/)。

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 傳輸中加密
<a name="security-encryption-in-transit"></a>

您可以設定您的環境以保護傳輸中的資料的機密性及完整性。

以下詳細資訊適用於在 Amazon Redshift 叢集與 SQL 用戶端之間透過 JDBC/ODBC 加密傳輸中的資料：
+ 您可以從 SQL 用戶端工具透過 Java 資料庫連線 (JDBC) 和開放式資料庫連線 (ODBC) 來連線至 Amazon Redshift 叢集。
+ Amazon Redshift 支援 Secure Sockets Layer (SSL) 連線，可將資料和伺服器憑證加密，以驗證用戶端所連線的伺服器憑證。用戶端會連線到 Amazon Redshift 叢集的領導節點。如需詳細資訊，請參閱[設定連線的安全選項](connecting-ssl-support.md)。
+ 為了支援 SSL 連線，Amazon Redshift 會在每個叢集上建立並安裝 AWS Certificate Manager(ACM) 發行的憑證。如需詳細資訊，請參閱[將 SSL 連線轉換為使用 ACM 憑證](connecting-transitioning-to-acm-certs.md)。
+ 為了保護您的AWS雲端內傳輸中的資料，Amazon Redshift 使用硬體加速 SSL 與 Amazon S3 或 Amazon DynamoDB 通訊，以進行 COPY、UNLOAD、備份和還原操作。

以下詳細資訊適用於在 Amazon Redshift 叢集與 Amazon S3 或 DynamoDB 之間加密傳輸中的資料：
+ Amazon Redshift 使用硬體加速的 SSL 來與 Amazon S3 或 DynamoDB 通訊，以進行 COPY、UNLOAD、備份和還原操作。
+ Redshift Spectrum 使用由 (KMS) 管理的帳戶預設金鑰，支援 Amazon S3 伺服器端加密 AWS Key Management Service(SSE)。
+ 您可以使用 Amazon S3 和 加密 Amazon Redshift 負載AWS KMS。如需詳細資訊，請參閱[使用 Amazon S3 加密 Amazon Redshift Loads 和AWS KMS](https://aws.amazon.com/blogs/big-data/encrypt-your-amazon-redshift-loads-with-amazon-s3-and-aws-kms/) 。

下列詳細資訊適用於在 AWS CLISDK 或 API 用戶端與 Amazon Redshift 端點之間傳輸中的資料的加密和簽署：
+ Amazon Redshift 會提供 HTTPS 端點用於加密傳輸中資料。
+ 為了保護向 Amazon Redshift 發出之 API 請求的完整性，必須由發起人簽署 API 呼叫。根據 Signature 第 4 版簽署程序 (Sigv4)，呼叫由 X.509 憑證或客戶的AWS私密存取金鑰進行簽署。如需詳細資訊，請參閱 *AWS 一般參考* 中的 [Signature 第 4 版簽署程序](https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html)。
+ 使用 AWS CLI或其中一個 AWSSDKs 向 提出請求AWS。這些工具會自動使用您設定工具時指定的存取金鑰，替您簽署請求。

以下詳細資訊適用於在 Amazon Redshift 叢集與 Amazon Redshift 查詢編輯器 v2 之間加密傳輸中的資料：
+ 資料會透過 TLS 加密的通道在查詢編輯器 v2 和 Amazon Redshift 叢集之間傳輸。

# Amazon Redshift 的 VPC 加密控制
<a name="security-vpc-encryption-controls"></a>

Amazon Redshift 支援 [ VPC 加密控制](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-encryption-controls.html)，這項安全功能可協助您針對區域內 VPCs內的所有流量，強制執行傳輸中加密。本文件說明如何搭配 Amazon Redshift 叢集和無伺服器工作群組使用 VPC 加密控制。

VPC 加密控制提供集中式控制，以監控和強制執行 VPCs內傳輸中的加密。在強制執行模式中啟用時，可確保所有網路流量都會在硬體層 （使用 AWSNitro System) 或應用程式層 （使用 TLS/SSL) 加密。

Amazon Redshift 與 VPC 加密控制整合，協助您符合醫療保健 (HIPAA)、政府 (FedRAMP) 和金融 (PCI DSS) 等產業的合規要求。

## VPC 加密控制如何與 Amazon Redshift 搭配使用
<a name="security-vpc-encryption-controls-sypnosis"></a>

VPC 加密控制以兩種模式運作：
+ 監控模式：提供流量加密狀態的可見性，並協助識別允許未加密流量的資源。
+ 強制模式：防止建立或使用允許 VPC 內未加密流量的資源。所有流量都必須在硬體層 (Nitro 型執行個體） 或應用程式層 (TLS/SSL) 加密。

## 使用 VPC 加密控制的需求
<a name="security-vpc-encryption-controls-requirements"></a>

**執行個體類型需求**

Amazon Redshift 需要 Nitro 型執行個體來支援 VPC 加密控制。所有現代 Redshift 執行個體類型都支援必要的加密功能。

**SSL/TLS 要求**

在強制執行模式下啟用 VPC 加密控制時，必須將 require\$1ssl 參數設定為 true，且無法停用。這可確保所有用戶端連線都使用加密的 TLS 連線。

## 遷移至 VPC 加密控制項
<a name="security-vpc-encryption-controls-migration"></a>

**對於現有叢集和工作群組**

您無法在包含現有 Redshift 叢集或無伺服器工作群組的 VPC 上，以強制執行模式啟用 VPC 加密控制。如果您有現有的叢集或工作群組，請參閱下列步驟以使用加密控制：

1. 建立現有叢集或命名空間的快照

1. 使用強制執行模式中啟用的 VPC 加密控制建立新的 VPC

1. 使用下列其中一個操作，從快照還原至新的 VPC：
   + 對於佈建的叢集：使用 `restore-from-cluster-snapshot`操作
   + 對於無伺服器：在您的工作群組上使用 `restore-from-snapshot`操作

**在已啟用加密控制的 VPC 中建立新的叢集或工作群組時，需將 require\$1ssl 參數設為 true。**

Amazon Redshift 需要 Nitro 型執行個體來支援 VPC 加密控制。所有現代 Redshift 執行個體類型都支援必要的加密功能。

**SSL/TLS 要求**

在強制執行模式下啟用 VPC 加密控制時，必須將 require\$1ssl 參數設定為 true，且無法停用。這可確保所有用戶端連線都使用加密的 TLS 連線。

## 考量和限制
<a name="security-vpc-encryption-controls-limitations"></a>

在 Amazon Redshift 中使用 VPC 加密控制時，請考慮下列事項：

**VPC 狀態限制**
+ 當 VPC 加密控制處於 `enforce-in-progress` 狀態時，會封鎖叢集和工作群組建立
+ 您必須等到 VPC 達到 `enforce` 模式，才能建立新的資源

**SSL 組態**
+ require\$1ssl 參數：必須一律`true`適用於在加密強制執行 VPCs 中建立的叢集和工作群組
+ 在加密強制執行的 VPC 中建立叢集或工作群組後，就`require_ssl`無法在其生命週期內停用

**區域可用性**

在下列區域中，Amazon Redshift Serverless 的強制執行模式中無法使用此功能：
+ 南美洲 (聖保羅)
+ 歐洲 (蘇黎世)