

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

# 防止 CloudFormation 堆疊遭到刪除
<a name="using-cfn-protect-stacks"></a>

您可以在堆疊上啟用終止保護來防止堆疊遭意外刪除。如果使用者嘗試刪除啟用終止保護的堆疊，則刪除會失敗，且堆疊及其狀態保持不變。您可以在建立新的堆疊時啟用終止保護。堆疊上的終止保護預設為停用。除了 `DELETE_IN_PROGRESS` 或 `DELETE_COMPLETE` 以外，您可以為處於任何狀態的堆疊設定終止保護。

在堆疊上啟用或停用終止保護的同時，也將對屬於該堆疊的任何巢狀堆疊套用相同選擇。您無法直接在巢狀堆疊上啟用或停用終止保護。如果使用者嘗試直接刪除屬於已啟用終止保護之堆疊的巢狀堆疊，則操作會失敗，且巢狀堆疊會保持不變。

不過，如果使用者執行會刪除巢狀堆疊的堆疊更新，則 CloudFormation 會相應刪除巢狀堆疊。

終止保護與停用復原不同。終止保護僅適用於嘗試刪除堆疊，而停用復原適用於堆疊建立失敗時的自動復原。

**在建立堆疊時啟用終止保護**  
在 **Create stack** (建立堆疊) 精靈的 **Specify stack options** (指定堆疊選項) 頁面上，展開 **Advanced options** (進階選項) 下的 **Termination Protection** (終止保護) 區段，然後選取 **Enable** (啟用)。如需詳細資訊，請參閱[設定堆疊選項](cfn-console-create-stack.md#configure-stack-options)。

**在現有堆疊上啟用或停用終止保護**

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

1. 在畫面上方的導覽列上，選擇 AWS 區域。

1. 選取您想要設定的堆疊。
**注意**  
如果堆疊名稱旁顯示 **NESTED (巢狀)**，則該堆疊為巢狀堆疊。您只能在該巢狀堆疊所屬的根堆疊上啟用終止保護。

1. 在 stack details (堆疊詳細資訊) 窗格中，選取 **Stack actions (堆疊動作)**，然後選取 **Edit termination protection (編輯終止保護)**。

   CloudFormation 會顯示 **Edit termination protection (編輯終止保護)** 對話方塊。

1. 選擇 **Enable (啟用)** 或 **Disable (停用)**，然後選取 **Save (儲存)**。

**在巢狀堆疊上啟用或停用終止保護**

如果堆疊名稱旁顯示 **NESTED (巢狀)**，則該堆疊為巢狀堆疊。您只能在該巢狀堆疊所屬的根堆疊上啟用終止保護。在根堆疊上變更終止保護：

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

1. 在畫面上方的導覽列上，選擇 AWS 區域。

1. 選取您想要設定的巢狀堆疊。

1. 在 **Stack info (堆疊資訊)** 窗格的 **Overview (概觀)** 區段中，選取列為 **Root stack (根堆疊)** 的堆疊名稱。

   CloudFormation 會顯示根堆疊的堆疊詳細資訊。

1. 選擇 **Stack actions (堆疊動作)**，然後選擇 **Edit Termination Protection (編輯終止保護)**。

   CloudFormation 會顯示 **Edit termination protection (編輯終止保護)** 對話方塊。

1. 選擇 **Enable (啟用)** 或 **Disable (停用)**，然後選取 **Save (儲存)**。

**欲使用命令列啟用或停用終止保護**  
使用 [https://docs.aws.amazon.com/cli/latest/reference/cloudformation/update-termination-protection.html](https://docs.aws.amazon.com/cli/latest/reference/cloudformation/update-termination-protection.html) 命令。

## 控制誰可以在堆疊上變更終止保護
<a name="protect-stacks-perms"></a>

若要在堆疊上啟用或停用終止保護，使用者需要具有進行 `cloudformation:UpdateTerminationProtection` 動作的許可。例如，下列政策可讓使用者在堆疊上啟用或停用終止保護。

如需在 中指定許可的詳細資訊 CloudFormation，請參閱 [使用 控制 CloudFormation 存取 AWS Identity and Access Management](control-access-with-iam.md)。

**Example 授予變更堆疊終止保護許可的範例政策**    
****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement":[{
        "Effect":"Allow",
        "Action":[
            "cloudformation:UpdateTerminationProtection"
        ],
        "Resource":"*"
    }]
}
```