

 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/)。

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

# 建立秘密和 IAM 角色來使用聯合查詢
<a name="federated-create-secret-iam-role"></a>

下列步驟顯示如何建立秘密和 IAM 角色，與聯合查詢搭配使用。

## 先決條件
<a name="federated-create-secret-prerequisites"></a>

確定您具備下列先決條件來建立秘密和 IAM 角色，與聯合查詢搭配使用：
+ 具有使用者名稱和密碼驗證的 RDS PostgreSQL、Aurora PostgreSQL DB 執行個體、RDS MySQL 或 Aurora MySQL DB 執行個體。
+ 具備支援聯合查詢叢集維護版本的 Amazon Redshift 叢集。

**使用 建立秘密 （使用者名稱和密碼） AWS Secrets Manager**

1. 使用擁有您 RDS 或 Aurora DB 叢集執行個體的帳戶登入 Secrets Manager 主控台。

1. 選擇**儲存新機密**。

1. 選擇 **RDS 資料庫的登入資料**圖磚。針對 **使用者名稱**和**密碼**，輸入您執行個體的值。確認或為**加密金鑰**選擇值。然後選擇您秘密將會存取的 RDS 資料庫。
**注意**  
我們建議您使用預設加密金鑰 (`DefaultEncryptionKey`)。如果您使用自訂加密金鑰，則必須將用於存取該秘密的 IAM 角色新增為金鑰使用者。

1. 輸入秘密的名稱，使用預設的選擇繼續建立步驟，然後選擇**儲存**。

1. 檢視您的秘密並記下您建立以識別秘密的**秘密 ARN** 值。

**使用秘密建立安全政策**

1. 登入 AWS 管理主控台 ，並在 https：//[https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/) 開啟 IAM 主控台。

1. 使用與以下相似的 JSON 來建立政策。

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "AccessSecret",
               "Effect": "Allow",
               "Action": [
                   "secretsmanager:GetResourcePolicy",
                   "secretsmanager:GetSecretValue",
                   "secretsmanager:DescribeSecret",
                   "secretsmanager:ListSecretVersionIds"
               ],
               "Resource": "arn:aws:secretsmanager:{{us-west-2}}:{{123456789012}}:secret:my-rds-secret-VNenFy"
           },
           {
               "Sid": "VisualEditor1",
               "Effect": "Allow",
               "Action": [
                   "secretsmanager:GetRandomPassword",
                   "secretsmanager:ListSecrets"
               ],
               "Resource": "*"
           }
       ]
   }
   ```

------

   若要擷取秘密，您需要列出和讀取動作。我們建議您將資源限制在您建立的特定秘密。若要執行此動作，請使用秘密的 Amazon 資源名稱 (ARN) 來限制資源。您也可以使用 IAM 主控台上的視覺編輯器指定許可和資源。

1. 給予政策名稱並完成建立過程。

1. 導覽至 **IAM 角色**。

1. 為 **Redshift ‒ 可自訂**建立 IAM 角色。

1. 將您剛建立的 IAM 政策連接至現有的 IAM 角色，或是建立新的 IAM 角色並連接政策。

1. 在您 IAM 角色的**信任關係**索引標籤上，確認角色包含信任實體 `redshift.amazonaws.com`。

1. 請注意您建立的**角色 ARN**。這個 ARN 具備秘密的存取權限。

**將 IAM 角色連接至您的 Amazon Redshift 叢集**

1. 登入 AWS 管理主控台 ，並在 [https://console.aws.amazon.com/redshiftv2/](https://console.aws.amazon.com/redshiftv2/)：// 開啟 Amazon Redshift 主控台。

1. 在導覽選單上，選擇**叢集**。系統會列出目前 AWS 區域中您帳戶的叢集。

1. 選擇清單中的叢集名稱以檢視該叢集的詳細資訊。

1. 針對**動作**，選擇**管理 IAM 角色**。**管理 IAM 角色**頁面隨即出現。

1. 將您的 IAM 角色新增到叢集。