AWS CloudFormation 擷取準則、最佳實務和限制 - AMS 進階應用程式開發人員指南

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

AWS CloudFormation 擷取準則、最佳實務和限制

若要讓 AMS 處理您的 CloudFormation 範本,有一些指導方針和限制。

指導方針

若要在執行 AWS CloudFormation 擷取時減少 AWS CloudFormation 錯誤,請遵循下列準則:

  • 請勿在範本中嵌入登入資料或其他敏感資訊 – CloudFormation 範本會顯示在 AWS CloudFormation 主控台中,因此您不想在範本中嵌入登入資料或敏感資料。範本不能包含敏感資訊。只有當您使用 AWS Secrets Manager 做為 值時,才允許下列資源:

    • AWS::RDS::DBInstance - 【MasterUserPassword,TdeCredentialPassword】

    • AWS::RDS::DBCluster - 【MasterUserPassword】

    • AWS::ElastiCache::ReplicationGroup - 【AuthToken】

  • 使用 Amazon RDS 快照來建立 RDS 資料庫執行個體 – 透過這樣做,您不必提供 MasterUserPassword。

  • 如果您提交的範本包含 IAM 執行個體描述檔,其字首必須是 'customer'。例如,使用名稱為 'example-instance-profile' 的執行個體描述檔會導致失敗。反之,請使用名稱為 'customer-example-instance-profile' 的執行個體描述檔。

  • 請勿在 - 【UserData】 中包含任何敏感資料AWS::EC2::Instance。 UserData UserData 不應包含密碼、API 金鑰或任何其他敏感資料。這種類型的資料可以加密並存放在 S3 儲存貯體中,並使用 UserData 下載到執行個體。

  • 使用 CloudFormation 範本建立 IAM 政策受到限制的支援 – IAM 政策必須由 AMS SecOps 審核和核准。目前我們僅支援使用包含預先核准許可的內嵌政策來部署 IAM 角色。在其他情況下,無法使用 CloudFormation 範本建立 IAM 政策,因為這會覆寫 AMS SecOps 程序。

  • 不支援 SSH KeyPairs – Amazon EC2 執行個體必須透過 AMS 存取管理系統存取。AMS RFC 程序會驗證您的身分。您無法在 CloudFormation 範本中包含 SSH 金鑰對,因為您沒有建立 SSH 金鑰對和覆寫 AMS 存取管理模型的許可。

  • 安全群組傳入規則受到限制 – 您無法擁有 0.0.0.0/0 的來源 CIDR 範圍,或具有 TCP 連接埠的可公開路由地址空間,而 TCP 連接埠不是 80 或 443。

  • 撰寫 CloudFormation 資源範本時,請遵循 AWS CloudFormation 準則 – 請參閱該資源的 AWS CloudFormation 使用者指南,以確保您使用正確的資源資料類型/屬性名稱。例如,AWS::EC2::Instance 資源中 SecurityGroupIds 屬性的資料類型是「字串值清單」,因此 【「sg-aaaaaaaaaaa」】是正常的 (使用括號),但「sg-aaaaaaa 不是 (不使用括號)。

    如需詳細資訊,請參閱 AWS 資源和屬性類型參考

  • 將自訂 CloudFormation 範本設定為使用 AMS CloudFormation 擷取 CT 中定義的參數 – 當您將 CloudFormation 範本設定為使用 AMS CloudFormation 擷取 CT 中定義的參數時,您可以使用 管理 | 自訂堆疊 | CloudFormation 範本的堆疊 | 更新 CT (ct-361tlo1k7339x),在 CT 輸入中提交具有變更參數值的 CloudFormation 範本,以 CloudFormation 建立類似的堆疊。如需範例,請參閱「AWS CloudFormation 擷取範例:定義資源」。

  • 具有預先簽章 URL 的 Amazon S3 儲存貯體端點無法過期 – 如果您使用具有預先簽章 URL 的 Amazon S3 儲存貯體端點,請確認預先簽章的 Amazon S3 URL 尚未過期。使用過期的預先簽章 Amazon S3 儲存貯體 URL 提交的 CloudFormation 擷取 RFC 會遭到拒絕。

  • Wait Condition 需要訊號邏輯 – Wait Condition 用於協調堆疊資源建立與堆疊建立外部的組態動作。如果您在範本中使用等待條件資源, 會 AWS CloudFormation 等待成功訊號,如果未發出成功訊號數量,則會將堆疊建立標記為失敗。如果您使用等待條件資源,則需要有訊號的邏輯。如需詳細資訊,請參閱在範本中建立等待條件