設定 AWS AppConfig 刪除保護 - AWS AppConfig

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

設定 AWS AppConfig 刪除保護

AWS AppConfig 提供帳戶設定,協助防止使用者意外刪除作用中使用的環境和組態設定檔。 AWS AppConfig 在 60 分鐘的GetLatestConfiguration間隔 (預設設定) 內,監控呼叫,並追蹤哪些組態設定檔和環境已包含在這些呼叫中。GetConfiguration如果您啟用刪除保護,並嘗試刪除使用中的組態設定檔或環境,則會 AWS AppConfig 傳回錯誤訊息。

注意

記下以下資訊。

  • 刪除保護預設是停用。

  • 您可以將預設間隔增加到最多 24 小時。

請使用下列程序來啟用和設定 AWS AppConfig 刪除保護。

開始之前

更新至最新版本的 AWS CLI. 若要取得更多資訊,請參閱《使用指南》 AWS CLI中的〈安裝或更新至最新版本AWS Command Line Interface

啟用 AWS AppConfig 刪除保護
  • 使用UpdateAccountSettingsAPI可啟用刪除保護。在 AWS CLI中執行以下命令。這個命令不會指定ProtectionPeriodInMinutes參數的值,也就是說,命令會保持該設定不變。

    aws appconfig update-account-settings --deletion-protection Enabled=true

    執行下列命令以指定不同的間隔。

    aws appconfig update-account-settings --deletion-protection Enabled=true,ProtectionPeriodInMinutes=a number between 15 and 1440
注意

若要檢視目前的刪除保護設定,請執行下列命令。如果您尚未為帳戶設定刪除保護,此命令會傳回預設設定:

aws appconfig get-account-settings

為了協助您管理刪除保護,請DeleteConfigurationProfileAPIs包含一個名為的參數DeletionProtectionCheckDeleteEnvironment此參數支援下列值:

  • BYPASS:指示略 AWS AppConfig 過刪除保護檢查並刪除組態設定檔,即使刪除保護原本會阻止它。

  • APPLY:指示執行刪除保護檢查,即使在帳戶層級停用刪除保護也一樣。 APPLY也會強制針對過去一小時內建立的資源執行刪除保護檢查,這些資源通常會從刪除保護檢查中排除。

  • ACCOUNT_DEFAULT:預設設定,此設定會指示 AWS AppConfig 實作中指定的刪除保護值。UpdateAccountSettings API

注意

依預設,會DeletionProtectionCheck略過過去一小時內建立的設定描述檔和環境。預設組態旨在防止刪除保護干擾建立短期資源的測試和示範。您可以通過DeletionProtectionCheck=APPLY在調用DeleteEnvironment或時傳遞來覆蓋此行為DeleteConfigurationProfile

以下簡單穿越使用範例指令來說明如何使用DeletionProtectionCheck參數。

  1. 呼叫GetLatestConfiguration已部署的組態。

    aws appconfigdata get-latest-configuration --configuration-token $(aws appconfigdata start-configuration-session --application-identifier ID --environment-identifier ID --configuration-profile-identifier ID --query InitialConfigurationToken) outfile.txt
  2. 等待 60 秒, AWS AppConfig 以註冊配置處於活動狀態。

  3. 執行下列命令,在環境中呼叫DeleteEnvironment並套用刪除保護。

    aws appconfig delete-environment --environment-id ID --application-id ID --deletion-protection-check APPLY
  4. 如果您在 60 分鐘內DeleteEnvironment再次呼叫,呼叫會傳回如下所示的錯誤:

    An error occurred (BadRequestException) when calling the DeleteEnvironment operation: Environment Beta is actively being used in your application and cannot be deleted.
  5. 執行下列命令以略過刪除保護並刪除環境。

    aws appconfig delete-environment --environment-id ID --application-id ID --deletion-protection-check BYPASS