

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

# 在您的帳戶中啟用第三方公有擴充功能
<a name="registry-public-activate-extension"></a>

下列主題說明如何在您的帳戶中啟用第三方公有擴充功能，啟用後即可在該帳戶及啟用所在的區域中使用。

**注意**  
繼續之前，請確認您已建立將用於此擴充功能的 [IAM 角色](registry-public.md#registry-public-enable-execution-role)。

**Topics**
+ [啟用公有擴充功能 (主控台)](#registry-public-activate-extension-console)
+ [啟用公有擴充功能 (AWS CLI)](#registry-public-activate-extension-cli)

## 啟用公有擴充功能 (主控台)
<a name="registry-public-activate-extension-console"></a>

請依照本節中的步驟，使用主控台執行下列操作：
+ 啟用第三方公有擴充功能
+ 為您的帳戶指定額外的擴充功能組態資料

**啟用公有擴充功能，以便在帳戶中使用**

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

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

1. 在導覽窗格的**登錄檔**下方，選擇**公有擴充功能**。

1. 使用**篩選條件**選擇擴充功能類型，然後選擇**第三方**。( AWS 發佈的擴充功能預設為已啟用。)

1. 選擇擴充功能，然後選擇**啟用**。

   如果擴充功能有多個版本，您可以使用**版本**選單選擇要啟用的擴充功能版本。預設為最新版本。

1. 對於**擴充功能名稱**，您可保持選取**使用預設值**，或選擇**覆寫預設值**，然後輸入要與此擴充功能搭配使用的擴充功能類型別名。別名必須遵循擴充功能類型的推薦格式。如需詳細資訊，請參閱[使用別名來稱呼擴充功能](registry-public.md#registry-public-enable-alias)。

1. 若您要啟用的擴充功能是勾點或資源類型，請針對**執行角色 ARN**，指定 CloudFormation 在調用擴充功能時要扮演的 IAM 角色。如需詳細資訊，請參閱[為公有擴充功能存取設定具有 IAM 許可和信任政策的執行角色](registry-public.md#registry-public-enable-execution-role)。

1. 對於**記錄設定**，指定擴充功能的記錄組態資訊 (若需要)。例如：

   ```
   {
       "logRoleArn": "arn:aws:iam::account:role/rolename",
       "logGroupName": "log-group-name"
   }
   ```

   記錄組態資訊不是必需的，但建議作為除錯用途使用。若要使用帶勾點的記錄組態，請新增與指定執行角色相同的信任政策，以便日誌角色可以將日誌寫入您的日誌群組。

   `logRoleArn` 和 `logGroupName` 金鑰名稱不區分大小寫。

1. 針對**版本控制**、**自動更新**，選擇接收更新的方式。
   + **On** (打開) – 自動更新為最新次要版本。主要版本需手動更新。
   + **Off** (關閉) – 永不自動更新為最新版本。所有版本需手動更新。

   如需詳細資訊，請參閱[自動使用擴充功能的新版本](registry-public.md#registry-public-enable-auto)。

如果擴充功能需要其他組態，您可以選擇現在指定組態資料,或在啟用擴充功能之後指定。

**重要**  
如果您要啟用的擴充功能是勾點，則需要此步驟。您必須為 `HookInvocationStatus` 屬性指定 `ENABLED`。此操作將啟用勾點結構描述 `properties` 區段中定義的掛鉤屬性。有關詳細資訊，請參閱《*CloudFormation 勾點使用者指南*》中的[勾點組態結構描述語法參考](https://docs.aws.amazon.com/cloudformation-cli/latest/hooks-userguide/hook-configuration-schema.html)。

**指定組態資料**

1. 針對**組態**，選擇**立即設定**，然後選擇**啟用擴充功能**。

   CloudFormation 會顯示 **Configure extension** (設定擴充功能) 頁面。若要檢視擴充功能的目前組態結構描述，請確保已啟用 **View configuration schema** (檢視組態結構描述)。

1. 在**組態 JSON** 文字方塊中，輸入 JSON 字串，代表您要為此擴充功能指定的組態資料。您指定的 JSON 必須根據擴充功能的組態結構描述進行驗證。

1. 選擇**設定擴充功能**。

若您偏好在啟用後再設定擴充功能，可跳過此步驟，稍後再提供組態資料。

1. 針對**組態**，選擇**稍後設定**，然後選擇**啟用擴充功能**。

1. 擴充功能啟用後，您可從已啟用擴充功能頁面進入該擴充功能，並提供組態資料進行設定。

## 啟用公有擴充功能 (AWS CLI)
<a name="registry-public-activate-extension-cli"></a>

請依照本節中的步驟使用 AWS CLI 來：
+ 啟用第三方公有擴充功能
+ 為您的帳戶指定額外的擴充功能組態資料

### 啟用公有勾點
<a name="registry-public-activate-extension-hooks"></a>

在您的帳戶中啟用勾點，即表示授權該勾點使用您 AWS 帳戶中定義的許可。CloudFormation 會在將您的許可傳遞給勾點之前，移除非必要的許可。CloudFormation 建議客戶或勾點使用者在帳戶中啟用勾點之前，先檢閱勾點許可，並了解勾點被允許使用的許可範圍。

**啟用公有勾點，以便在帳戶中使用 (AWS CLI)**

1. 取得勾點的 ARN 並儲存。您可以使用 AWS 管理主控台 或 取得勾點的 ARN AWS CLI。如需更多資訊，請參閱[在 CloudFormation 登錄檔中檢視可用的與已啟用擴充功能](registry-view.md)。

   ```
   export HOOK_TYPE_ARN="arn:aws:cloudformation:us-west-2:123456789012:type/hook/Organization-Service-Hook/"
   ```

1. 若要指定組態資料，請使用 [https://docs.aws.amazon.com/cli/latest/reference/cloudformation/set-type-configuration.html](https://docs.aws.amazon.com/cli/latest/reference/cloudformation/set-type-configuration.html) 命令。您為 `--configuration` 傳遞的 JSON 必須根據勾點的組態結構描述進行驗證。若要為所有堆疊操作啟用勾點，您必須在 `HookConfiguration` 區段將 `HookInvocationStatus` 屬性設定為 `ENABLED`。

   ```
   aws cloudformation set-type-configuration \
     --configuration "{"CloudFormationConfiguration":{"HookConfiguration":{"HookInvocationStatus": "ENABLED", "FailureMode": "FAIL", "Properties":{}}}}" \
     --type-arn $HOOK_TYPE_ARN --region us-west-2
   ```

   如需 `HookConfiguration` 組態選項的詳細資訊，請參閱《*CloudFormation 勾點使用者指南*》中的[勾點組態結構描述語法參考](https://docs.aws.amazon.com/cloudformation-cli/latest/hooks-userguide/hook-configuration-schema.html#)。

### 啟用公有模組和資源類型
<a name="registry-public-activate-extension-type"></a>

**啟用公有擴充功能，以便在帳戶中使用 (AWS CLI)**
+ 使用 [https://docs.aws.amazon.com/cli/latest/reference/cloudformation/activate-type.html](https://docs.aws.amazon.com/cli/latest/reference/cloudformation/activate-type.html) 命令啟用擴充功能，並指定是否在發佈擴充功能的新次要版本時自動更新擴充功能。

  下列範例指定要為此帳戶啟用之公有擴充功能的公有 Amazon Resource Name (ARN)。此外，其還指定發佈新次要版本時，CloudFormation 將更新擴充功能。

  ```
  aws cloudformation activate-type \
    --public-type-arn public_extension_ARN \
    --execution-role-arn arn:aws:iam::123456789012:role/my-execution-role \
    --auto-update true --region us-west-2
  ```

  此命令會傳回已啟用擴充功能的 ARN。

  ```
  {
      "Arn": "arn:aws:cloudformation:us-west-2:123456789012:type/resource/My-Resource-Example"
  }
  ```

### 更新公有擴充功能的版本 (AWS CLI)
<a name="registry-public-update-extension-type"></a>

使用 [https://docs.aws.amazon.com/cli/latest/reference/cloudformation/activate-type.html](https://docs.aws.amazon.com/cli/latest/reference/cloudformation/activate-type.html) 再次啟用擴充功能。

使用 `--version-bump` 選項指定是否將擴充功能更新為最新 `MAJOR` 版本、最新 `MINOR` 版本。

```
aws cloudformation activate-type --type RESOURCE \
  --type-name Example::Test::1234567890abcdef0 \
  --type-name-alias Example::Test::Alias \
  --version-bump MAJOR --region us-west-2
```