

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

# AWS Config 進階查詢的自然語言查詢處理器
<a name="query-assistant"></a>

**注意**  
 AWS Config 自然語言查詢處理器的公開預覽將於 2026 年 1 月 15 日終止。此外，您可以使用自然語言提示與 Amazon Q Developer 聊天您的 AWS 資源。如需詳細資訊，請參閱[使用 Amazon Q Developer 聊天您的 資源](https://docs.aws.amazon.com/amazonq/latest/qdeveloper-ug/chat-actions.html)。

進階查詢的自然語言查詢處理器使用 [Amazon Bedrock](https://docs.aws.amazon.com/bedrock/latest/userguide/what-is-bedrock.html)，這是一種生成式人工智慧 （生成式 AI) 技術，可讓您以純英文輸入提示，並將其轉換為ready-to-use查詢格式。使用自然語言查詢處理器，您可以查詢 AWS 帳戶 或整個 AWS 組織。

提示可以是問題或陳述式。例如，您可以輸入提示，例如「在 2024 年 1 月 1 日之後建立哪些負載平衡器？」 和「列出正在執行節點 js 16 的所有 lambda 函數。」

## 考量事項
<a name="query-assistant-considerations"></a>

自然語言查詢處理器無法執行下列動作：
+ 從英文以外的語言產生查詢。
+ 從與進階查詢無關的提示產生查詢。
+ 從超過 1000 個字元的提示產生查詢。
+ 從後續更正或先前的工作階段產生查詢。
+ 說明已產生的程式碼。

## 使用自然語言查詢處理器進行查詢
<a name="use-a-sample-query"></a>

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

1. 在左側導覽中選擇 **進階查詢**，查詢單一帳戶和區域或是多個帳戶和區域的資源組態。

1. 在**進階查詢**頁面上，選擇**新查詢**以移至  查詢編輯器。
   + （選用） 若要在彙總工具上執行查詢，請建立彙總工具。如需詳細資訊，請參閱[為 建立彙總工具 AWS Config](aggregated-create.md)。
   + 如果已設定好彙整工具，請在查詢範圍中選擇彙整工具，並在該彙整工具上執行進階查詢。當您選取彙總工具時，請考慮在查詢陳述式中新增 AWS 帳戶 ID 和 AWS 區域，以檢視結果中的資訊。

1. 在查詢編輯器中，移至**自然語言查詢處理器**區段。輸入純英文提示，然後選擇**產生**。如需範例，請參閱[範例提示](https://docs.aws.amazon.com/config/latest/developerguide/query-assistant.html#example-prompts)。

1. 產生查詢之後，可以選擇**複製** (功能上等同於 Ctrl\$1C)，將查詢複製到剪貼簿，或選擇**填入編輯器**。如果填入編輯器，您可以編輯產生的查詢以符合您的需求。

1. 若要將此查詢儲存至新查詢，請選擇 **儲存為**。
   + 請在 **查詢名稱** 欄位中更新查詢的名稱。
   + 請在 **描述** 欄位中更新查詢的描述。
   + 您可為此查詢輸入最多 50 個唯一標籤。
   + 選擇 **儲存**。

1. 選擇**執行**。查詢結果會顯示於查詢編輯器下方的資料表中。

1. 選擇 **匯出為**，以 CSV 或 JSON 格式匯出查詢結果。
**注意**  
查詢結果會以分頁顯示。匯出時，最多可匯出 500 筆結果。  
您也可以使用 API 擷取所有結果。結果會以分頁顯示，您一次可擷取 100 個結果。

## 範例提示
<a name="query-assistant-example-prompts"></a>

以下是提示和 產生查詢，您可以用作範例。

------
#### [ Example: 2024 年 1 月 1 日之後建立了哪些負載平衡器？ ]

**提示**：What load balancers were created after January 1, 2024?

**產生的查詢**：

```
SELECT
    resourceId,
    resourceType,
    resourceCreationTime
WHERE
    resourceType IN ('AWS::ElasticLoadBalancing::LoadBalancer', 'AWS::ElasticLoadBalancingV2::LoadBalancer')
AND
    resourceCreationTime > '2024-01-01T00:00:00.0Z'
ORDER BY
    resourceCreationTime
DESC
```

------
#### [ Example: 我的哪些 RDS 資料庫執行個體可以公開存取？ ]

**提示**：Which of my RDS database instances are publicly accessible?

**產生的查詢**：

```
SELECT
    resourceId,
    resourceType,
    configuration.publiclyAccessible
WHERE 
    resourceType = 'AWS::RDS::DBInstance'
AND
    configuration.publiclyAccessible = true
```

------
#### [ Example: 在過去一年中建立多少個 EC2 執行個體？ ]

**提示**：How many EC2 instances were created in last one year?

**產生的查詢**：

```
SELECT
    COUNT(*)
WHERE
    resourceType = 'AWS::EC2::Instance'
AND
    resourceCreationTime
BETWEEN
    '2023-05-10T16:56:25.000Z'
AND
    '2024-05-10T16:56:25.000Z'
```

------
#### [ Example: 每個 中有多少個 EC2 執行個體 AWS 帳戶？ ]

**提示**：How many EC2 instances do I have in each of my AWS 帳戶?

**產生的查詢**：

```
SELECT
    accountId,
    COUNT(*)
WHERE
    resourceType = 'AWS::EC2::Instance'
GROUP BY
    accountId'
```

------
#### [ Example: 哪些 IAM 角色已連接受管政策 AdministratorAccess？ ]

**提示**：Which IAM roles have the managed policy AdministratorAccess attached?

**產生的查詢**：

```
SELECT
    resourceId,
    resourceName,
    resourceType
WHERE
    resourceType = 'AWS::IAM::Role'
AND
    configuration.attachedManagedPolicies.policyName = 'AdministratorAccess'
```

------
#### [ Example: 不帶加密的 EBS 磁碟區 ]

**提示**：EBS volumes without encryption 

**產生的查詢**：

```
SELECT
    accountId
WHERE
    resourceType = 'AWS::EC2::Volume'
AND
    configuration.encrypted = false
```

------
#### [ Example:  取得不合規的資源 ]

**提示**：Get noncompliant resources

**產生的查詢**：

```
SELECT
    resourceId,
    resourceType
WHERE
    resourceType = 'AWS::Config::ResourceCompliance'
AND
    configuration.complianceType = 'NON_COMPLIANT'
```

------
#### [ Example: 列出正在執行節點 js 16 的所有 lambda 函數 ]

**提示**：List all my lambda function that is running node js 16

**產生的查詢**：

```
SELECT
    accountId,
    resourceName
WHERE
    resourceType = 'AWS::Lambda::Function'
AND
    configuration.runtime = 'nodejs16.x'
```

------
#### [ Example: 哪些 ACM 憑證會在接下來 30 天過期？ ]

**提示**：What ACM certificates expire the next 30 days? 

**產生的查詢**：

```
SELECT
    resourceId,
    configuration.domainName,
    configuration.notAfter
WHERE
    resourceType = 'AWS::ACM::Certificate'
AND
    configuration.notAfter
BETWEEN
    '2024-05-10 16:59:53'
AND
    '2024-06-10 16:59:53’
```

**注意**  
產生的查詢中的時間取決於您輸入提示的時間。

------

## 提供回饋
<a name="query-assistant-feedback"></a>

您可以提供有關自然語言查詢處理器的整體意見回饋，或有關特定產生的查詢的意見回饋。

**提供自然語言查詢處理器的意見回饋**

選擇右側自然語言查詢處理器上方的**提供意見回饋**按鈕。您可以輸入您的滿意度或不滿意，並提供有關 AWS Config 如何讓自然語言查詢更有幫助的意見回饋。

**注意**  
請勿揭露任何個人、商業敏感或機密資訊。

**針對特定產生的查詢提供意見回饋**

您可以選擇出現在所產生查詢下方的拇指向上或拇指向下按鈕，以提供您對所產生查詢的意見回饋。

## 區域支援
<a name="query-assistant-region-support"></a>

下列區域支援自然語言查詢處理器。


****  
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/config/latest/developerguide/query-assistant.html)