

# 稽核命令
<a name="AuditCommands"></a>

## 管理稽核設定
<a name="AuditCommandsManageSettings"></a>

使用 `UpdateAccountAuditConfiguration` 為您的帳戶配置稽核設定。此命令可啟用您想要用於稽核的這些檢查、設定選用通知以及設定許可。

檢查這些設定 `DescribeAccountAuditConfiguration`。

使用 `DeleteAccountAuditConfiguration` 刪除稽核設定。這能恢復所有預設數值，並有效地停用稽核，因所有檢查都預設為停用。

### UpdateAccountAuditConfiguration
<a name="dd-api-iot-UpdateAccountAuditConfiguration"></a>

為此帳戶設定或重新設定 Device Defender 稽核設定。設定值包括如何傳送稽核通知，以及啟用或停用哪些稽核檢查。

 **概要**：

```
aws iot  update-account-audit-configuration \
    [--role-arn <value>] \
    [--audit-notification-target-configurations <value>] \
    [--audit-check-configurations <value>]  \
    [--cli-input-json <value>] \
    [--generate-cli-skeleton]
```

 `cli-input-json` 格式

```
{
  "roleArn": "string",
  "auditNotificationTargetConfigurations": {
    "string": {
      "targetArn": "string",
      "roleArn": "string",
      "enabled": "boolean"
    }
  },
  "auditCheckConfigurations": {
    "string": {
      "enabled": "boolean"
    }
  }
}
```


**`cli-input-json` 欄位**  

|  名稱 |  類型 |  說明 | 
| --- | --- | --- | 
|  roleArn |  string  長度上限：2048；下限：20  |  角色的 ARN 授予 AWS IoT 許可，可在執行稽核時存取裝置、政策、憑證和其他項目的相關資訊。  | 
|  auditNotificationTargetConfigurations |  映射 |  有關傳送稽核通知的目標的資訊。 | 
|  targetArn |  string |  傳送稽核通知的目標 ARN (SNS 主題)。 | 
|  roleArn |  string  長度上限：2048；下限：20  |  授與許可的角色 ARN，以傳送通知至目標。 | 
|  啟用 |  boolean |  若啟用通知至目標則為 True。 | 
|  auditCheckConfigurations |  映射 |  指定為此帳戶啟用和停用哪些稽核檢查。使用 `DescribeAccountAuditConfiguration` 查看所有檢查清單，其中包括目前已啟用的。 有些資料收集可能會在啟用特定檢查時立即開始。當停用檢查時，目前為止與檢查相關的任何收集資料會加以刪除。 若是由任何排定的稽核使用，則不能停用檢查。您必須先從排定的稽核刪除檢查，或刪除排定的稽核本身。 在對 `UpdateAccountAuditConfiguration` 的第一個呼叫，需使用此參數，且必須指定至少一個啟用的檢查。  | 
|  啟用 |  boolean |  若為此帳戶啟用此稽核檢查，則為 True。 | 
|  組態 |  映射  |  (選用) 特定稽核檢查的自訂組態，例如 `CERT_AGE_THRESHOLD_IN_DAYS` 和 `CERT_EXPIRATION_THRESHOLD_IN_DAYS`，可讓您定義何時收到憑證存留期和即將過期的提醒。  | 

Output

無

 **錯誤**

`InvalidRequestException`  
請求的內容無效。

`ThrottlingException`  
請求頻率超過限制。

`InternalFailureException`  
出現未預期的錯誤。

### DescribeAccountAuditConfiguration
<a name="dd-api-iot-DescribeAccountAuditConfiguration"></a>

針對此帳戶取得有關 Device Defender 稽核設定的資訊。設定值包括如何傳送稽核通知，以及啟用或停用哪些稽核檢查。

 **概要**：

```
aws iot  describe-account-audit-configuration  \
    [--cli-input-json <value>] \
    [--generate-cli-skeleton]
```

 `cli-input-json` 格式

```
{
}
```

Output

```
{
  "roleArn": "string",
  "auditNotificationTargetConfigurations": {
    "string": {
      "targetArn": "string",
      "roleArn": "string",
      "enabled": "boolean"
    }
  },
  "auditCheckConfigurations": {
    "string": {
      "enabled": "boolean"
    }
  }
}
```


**CLI 輸出欄位**  

|  名稱 |  類型 |  說明 | 
| --- | --- | --- | 
|  roleArn |  string  長度上限：2048；下限：20  |  角色的 ARN 授予 AWS IoT 許可，可在執行稽核時存取裝置、政策、憑證和其他項目的相關資訊。 在對 `UpdateAccountAuditConfiguration` 的第一個呼叫，需要此參數。  | 
|  auditNotificationTargetConfigurations |  映射 |  有關對此帳戶傳送稽核通知的目標的資訊。  | 
|  targetArn |  string |  傳送稽核通知的目標 ARN (SNS 主題)。 | 
|  roleArn |  string  長度上限：2048；下限：20  |  授與許可的角色 ARN，以傳送通知至目標。 | 
|  啟用 |  boolean |  若啟用通知至目標則為 True。 | 
|  auditCheckConfigurations |  映射 |  為此帳戶啟用和停用哪些稽核檢查。 | 
|  啟用 |  boolean |  若為此帳戶啟用此稽核檢查，則為 True。 | 
|  組態 |  映射 |  (選用) 為特定稽核檢查提供特定組態，例如憑證允許的存留期上限，或應觸發提醒的過期前天數。 | 

 **錯誤**

`ThrottlingException`  
請求頻率超過限制。

`InternalFailureException`  
出現未預期的錯誤。

### DeleteAccountAuditConfiguration
<a name="dd-api-iot-DeleteAccountAuditConfiguration"></a>

針對此帳戶為 Device Defender 稽核還原預設值。您輸入的任何組態資料會被刪除，而所有稽核檢查會重設為停用。

 **概要**：

```
aws iot  delete-account-audit-configuration \
    [--delete-scheduled-audits | --no-delete-scheduled-audits]  \
    [--cli-input-json <value>] \
    [--generate-cli-skeleton]
```

 `cli-input-json` 格式

```
{
  "deleteScheduledAudits": "boolean"
}
```


**`cli-input-json` 欄位**  

|  名稱 |  類型 |  說明 | 
| --- | --- | --- | 
|  deleteScheduledAudits |  boolean |  若為 true，則刪除所有排定的稽核。 | 

Output

無

 **錯誤**

`InvalidRequestException`  
請求的內容無效。

`ResourceNotFoundException`  
指定的資源不存在。

`ThrottlingException`  
請求頻率超過限制。

`InternalFailureException`  
出現未預期的錯誤。

## 排定稽核時程
<a name="device-defender-AuditCommandsManageSchedules"></a>

使用 `CreateScheduledAudit` 建立一或多個已排程的稽核。此命令允許您在稽核期間要執行的檢查，以及應執行這些稽核的頻率。

透過 `ListScheduledAudits` 和 `DescribeScheduledAudit` 追蹤排定的稽核。

透過 `UpdateScheduledAudit` 變更現有的已排程的稽核，或透過 `DeleteScheduledAudit` 將其刪除。

### CreateScheduledAudit
<a name="dd-api-iot-CreateScheduledAudit"></a>

建立依特定時間間隔執行的定期稽核。

 **概要**：

```
aws iot  create-scheduled-audit \
    --frequency <value> \
    [--day-of-month <value>] \
    [--day-of-week <value>] \
    --target-check-names <value> \
    [--tags <value>] \
    --scheduled-audit-name <value>  \
    [--cli-input-json <value>] \
    [--generate-cli-skeleton]
```

 `cli-input-json` 格式

```
{
  "frequency": "string",
  "dayOfMonth": "string",
  "dayOfWeek": "string",
  "targetCheckNames": [
    "string"
  ],
  "tags": [
    {
      "Key": "string",
      "Value": "string"
    }
  ],
  "scheduledAuditName": "string"
}
```


**`cli-input-json` 欄位**  

|  名稱 |  類型 |  說明 | 
| --- | --- | --- | 
|  frequency (頻率) |  string |  已排程的稽核執行的頻率。可以是「每日」、「每週」、「每兩週」或「每月」的其中之一。每個稽核的實際開始時間取決於系統。  列舉：每日 \$1 每週 \$1 每兩週 \$1 每月  | 
|  dayOfMonth |  string  模式：^([1-9]\$1[12][0-9]\$13[01])\$1\$1^LAST\$1  |  當月執行已排程稽核的日期。可以是 1 到 31 或「最後一天」。如果 `frequency` 參數設定為「每月」，則此欄位為必填。如果指定的是 29-31 的日期，但當月卻沒有這幾天時，稽核會在該月的「最後一天」執行。  | 
|  dayOfWeek |  string |  當週執行已排程稽核的日期。可以是「週日」、「週一」、「週二」、「週三」、「週四」、「週五」或「週六」的其中之一。如果 `frequency` 參數設定為「每週」或「每兩週」，則此欄位為必填。  列舉：週日 \$1 週一 \$1 週二 \$1 週三 \$1 週四 \$1 週五 \$1 週六  | 
|  targetCheckNames |  列出  成員：AuditCheckName  |  已排程的稽核期間執行哪些檢查。必須為您的帳戶啟用檢查。(使用 `DescribeAccountAuditConfiguration` 查看所有檢查清單，包括已啟用的，或使用 `UpdateAccountAuditConfiguration` 選取啟用哪些檢查。)  | 
|  標籤 |  列出  成員：Tag  Java 類別：java.util.List  |  用於管理排程稽核的中繼資料。 | 
|  金錀 |  string |  標籤的金鑰。 | 
|  Value |  string |  標籤的值。 | 
|  scheduledAuditName |  string  長度上限：128；下限：1  模式：[a-zA-Z0-9\$1-]\$1  |  您要指定給已排程的稽核的名稱。(最多 128 個字元) | 

Output

```
{
  "scheduledAuditArn": "string"
}
```


**CLI 輸出欄位**  

|  名稱 |  類型 |  說明 | 
| --- | --- | --- | 
|  scheduledAuditArn |  string |  已排程的稽核的 ARN。 | 

 **錯誤**

`InvalidRequestException`  
請求的內容無效。

`ThrottlingException`  
請求頻率超過限制。

`InternalFailureException`  
出現未預期的錯誤。

`LimitExceededException`  
已超出限制。

### ListScheduledAudits
<a name="dd-api-iot-ListScheduledAudits"></a>

列出所有定期稽核。

 **概要**：

```
aws iot  list-scheduled-audits \
    [--next-token <value>] \
    [--max-results <value>]  \
    [--cli-input-json <value>] \
    [--generate-cli-skeleton]
```

 `cli-input-json` 格式

```
{
  "nextToken": "string",
  "maxResults": "integer"
}
```


**`cli-input-json` 欄位**  

|  名稱 |  類型 |  說明 | 
| --- | --- | --- | 
|  nextToken |  string |  下一組結果的字符。 | 
|  maxResults |  integer  範圍上限：250；下限：1  |  一次可回傳結果的數量上限。預設為 25。 | 

Output

```
{
  "scheduledAudits": [
    {
      "scheduledAuditName": "string",
      "scheduledAuditArn": "string",
      "frequency": "string",
      "dayOfMonth": "string",
      "dayOfWeek": "string"
    }
  ],
  "nextToken": "string"
}
```


**CLI 輸出欄位**  

|  名稱 |  類型 |  說明 | 
| --- | --- | --- | 
|  scheduledAudits |  列出  成員：ScheduledAuditMetadata  Java 類別：java.util.List  |  已排程的稽核的清單。 | 
|  scheduledAuditName |  string  長度上限：128；下限：1  模式：[a-zA-Z0-9\$1-]\$1  |  已排程的稽核的名稱。 | 
|  scheduledAuditArn |  string |  已排程的稽核的 ARN。 | 
|  frequency (頻率) |  string |  已排程的稽核執行的頻率。  列舉：每日 \$1 每週 \$1 每兩週 \$1 每月  | 
|  dayOfMonth |  string  模式：^([1-9]\$1[12][0-9]\$13[01])\$1\$1^LAST\$1  |  當月執行已排程之稽核的日期 (如果 `frequency` 是「每月」)。如果指定的是 29-31 的日期，但當月卻沒有這幾天時，稽核會在該月的「最後一天」執行。  | 
|  dayOfWeek |  string |  當週執行已排程之稽核的日期 (如果 `frequency` 是「每週」或「每兩週」)。  列舉：週日 \$1 週一 \$1 週二 \$1 週三 \$1 週四 \$1 週五 \$1 週六  | 
|  nextToken |  string |  可用於擷取下一組結果的字符，或如果沒有其他結果則為 `null`。  | 

 **錯誤**

`InvalidRequestException`  
請求的內容無效。

`ThrottlingException`  
請求頻率超過限制。

`InternalFailureException`  
出現未預期的錯誤。

### DescribeScheduledAudit
<a name="dd-api-iot-DescribeScheduledAudit"></a>

取得定期稽核的相關資訊。

 **概要**：

```
aws iot  describe-scheduled-audit \
    --scheduled-audit-name <value>  \
    [--cli-input-json <value>] \
    [--generate-cli-skeleton]
```

 `cli-input-json` 格式

```
{
  "scheduledAuditName": "string"
}
```


**`cli-input-json` 欄位**  

|  名稱 |  類型 |  說明 | 
| --- | --- | --- | 
|  scheduledAuditName |  string  長度上限：128；下限：1  模式：[a-zA-Z0-9\$1-]\$1  |  您需要取得其資訊的已排程稽核的名稱。 | 

Output

```
{
  "frequency": "string",
  "dayOfMonth": "string",
  "dayOfWeek": "string",
  "targetCheckNames": [
    "string"
  ],
  "scheduledAuditName": "string",
  "scheduledAuditArn": "string"
}
```


**CLI 輸出欄位**  

|  名稱 |  類型 |  說明 | 
| --- | --- | --- | 
|  frequency (頻率) |  string |  已排程的稽核執行的頻率。「每日」、「每週」、「每兩週」或「每月」的其中之一。每個稽核的實際開始時間取決於系統。  列舉：每日 \$1 每週 \$1 每兩週 \$1 每月  | 
|  dayOfMonth |  string  模式：^([1-9]\$1[12][0-9]\$13[01])\$1\$1^LAST\$1  |  當月執行已排程稽核的日期。可以是 1 到 31 或「最後一天」。如果指定的是 29-31 的日期，但當月卻沒有這幾天時，稽核會在該月的「最後一天」執行。  | 
|  dayOfWeek |  string |  當週執行已排程稽核的日期。「週日」、「週一」、「週二」、「週三」、「週四」、「週五」或「週六」的其中之一。  列舉：週日 \$1 週一 \$1 週二 \$1 週三 \$1 週四 \$1 週五 \$1 週六  | 
|  targetCheckNames |  列出  成員：AuditCheckName  |  已排程的稽核期間執行哪些檢查。必須為您的帳戶啟用檢查。(使用 `DescribeAccountAuditConfiguration` 查看所有檢查清單，包括已啟用的檢查，或使用 `UpdateAccountAuditConfiguration` 選取啟用哪些檢查。)  | 
|  scheduledAuditName |  string  長度上限：128；下限：1  模式：[a-zA-Z0-9\$1-]\$1  |  已排程的稽核的名稱。 | 
|  scheduledAuditArn |  string |  已排程的稽核的 ARN。 | 

 **錯誤**

`InvalidRequestException`  
請求的內容無效。

`ResourceNotFoundException`  
指定的資源不存在。

`ThrottlingException`  
請求頻率超過限制。

`InternalFailureException`  
出現未預期的錯誤。

### UpdateScheduledAudit
<a name="dd-api-iot-UpdateScheduledAudit"></a>

更新已排程的稽核，包含執行哪些檢查，以及執行稽核的頻率。

 **概要**：

```
aws iot  update-scheduled-audit \
    [--frequency <value>] \
    [--day-of-month <value>] \
    [--day-of-week <value>] \
    [--target-check-names <value>] \
    --scheduled-audit-name <value>  \
    [--cli-input-json <value>] \
    [--generate-cli-skeleton]
```

 `cli-input-json` 格式

```
{
  "frequency": "string",
  "dayOfMonth": "string",
  "dayOfWeek": "string",
  "targetCheckNames": [
    "string"
  ],
  "scheduledAuditName": "string"
}
```


**`cli-input-json` 欄位**  

|  名稱 |  類型 |  說明 | 
| --- | --- | --- | 
|  frequency (頻率) |  string |  已排程的稽核執行的頻率。可以是「每日」、「每週」、「每兩週」或「每月」的其中之一。每個稽核的實際開始時間取決於系統。  列舉：每日 \$1 每週 \$1 每兩週 \$1 每月  | 
|  dayOfMonth |  string  模式：^([1-9]\$1[12][0-9]\$13[01])\$1\$1^LAST\$1  |  當月執行已排程稽核的日期。可以是 1 到 31 或「最後一天」。如果 `frequency` 參數設定為「每月」，則此欄位為必填。如果指定的是 29-31 的日期，但當月卻沒有這幾天時，稽核會在該月的「最後一天」執行。  | 
|  dayOfWeek |  string |  當週執行已排程稽核的日期。可以是「週日」、「週一」、「週二」、「週三」、「週四」、「週五」或「週六」的其中之一。如果 `frequency` 參數設定為「每週」或「每兩週」，則此欄位為必填。  列舉：週日 \$1 週一 \$1 週二 \$1 週三 \$1 週四 \$1 週五 \$1 週六  | 
|  targetCheckNames |  列出  成員：AuditCheckName  |  已排程的稽核期間執行哪些檢查。必須為您的帳戶啟用檢查。(使用 `DescribeAccountAuditConfiguration` 查看所有檢查清單，包括已啟用的檢查，或使用 `UpdateAccountAuditConfiguration` 選取啟用哪些檢查。)  | 
|  scheduledAuditName |  string  長度上限：128；下限：1  模式：[a-zA-Z0-9\$1-]\$1  |  已排程的稽核的名稱。(最多 128 個字元) | 

Output

```
{
  "scheduledAuditArn": "string"
}
```


**CLI 輸出欄位**  

|  名稱 |  類型 |  說明 | 
| --- | --- | --- | 
|  scheduledAuditArn |  string |  已排程的稽核的 ARN。 | 

 **錯誤**

`InvalidRequestException`  
請求的內容無效。

`ResourceNotFoundException`  
指定的資源不存在。

`ThrottlingException`  
請求頻率超過限制。

`InternalFailureException`  
出現未預期的錯誤。

### DeleteScheduledAudit
<a name="dd-api-iot-DeleteScheduledAudit"></a>

刪除定期稽核。

 **概要**：

```
aws iot  delete-scheduled-audit \
    --scheduled-audit-name <value>  \
    [--cli-input-json <value>] \
    [--generate-cli-skeleton]
```

 `cli-input-json` 格式

```
{
  "scheduledAuditName": "string"
}
```


**`cli-input-json` 欄位**  

|  名稱 |  類型 |  說明 | 
| --- | --- | --- | 
|  scheduledAuditName |  string  長度上限：128；下限：1  模式：[a-zA-Z0-9\$1-]\$1  |  要刪除的已排程稽核的名稱。 | 

Output

無

 **錯誤**

`InvalidRequestException`  
請求的內容無效。

`ResourceNotFoundException`  
指定的資源不存在。

`ThrottlingException`  
請求頻率超過限制。

`InternalFailureException`  
出現未預期的錯誤。

## 執行隨需稽核
<a name="device-defender-AuditCommandsOnDemand"></a>

使用 `StartOnDemandAuditTask` 指定您要執行的檢查並且立即開始執行稽核。

### StartOnDemandAuditTask
<a name="dd-api-iot-StartOnDemandAuditTask"></a>

啟動隨需 Device Defender 稽核。

 **概要**：

```
aws iot  start-on-demand-audit-task \
    --target-check-names <value>  \
    [--cli-input-json <value>] \
    [--generate-cli-skeleton]
```

 `cli-input-json` 格式

```
{
  "targetCheckNames": [
    "string"
  ]
}
```


**`cli-input-json` 欄位**  

|  名稱 |  類型 |  說明 | 
| --- | --- | --- | 
|  targetCheckNames |  列出  成員：AuditCheckName  |  稽核期間執行哪些檢查。必須為您的帳戶啟用您指定的檢查，或發生例外。使用 `DescribeAccountAuditConfiguration` 查看所有檢查清單，包括已啟用的檢查，或使用 `UpdateAccountAuditConfiguration` 選取啟用哪些檢查。  | 

Output

```
{
  "taskId": "string"
}
```


**CLI 輸出欄位**  

|  名稱 |  類型 |  說明 | 
| --- | --- | --- | 
|  taskId |  string  長度上限：40；下限：1  模式：[a-zA-Z0-9-]\$1  |  您開始執行之隨需稽核的 ID。 | 

 **錯誤**

`InvalidRequestException`  
請求的內容無效。

`ThrottlingException`  
請求頻率超過限制。

`InternalFailureException`  
出現未預期的錯誤。

`LimitExceededException`  
已超出限制。

## 管理稽核執行個體
<a name="device-defender-AuditCommandsManageInstances"></a>

使用 `DescribeAuditTask` 以取得有關特定稽核執行個體的資訊。是否已在執行、包含哪些檢查失敗及通過檢查的結果、系統無法完成哪些檢查，以及稽核是否仍在進行中，哪些仍運作。

使用 `ListAuditTasks` 以尋找在指定的時間間隔內執行的稽核。

使用 `CancelAuditTask` 停止進行中的稽核。

### DescribeAuditTask
<a name="dd-api-iot-DescribeAuditTask"></a>

取得 Device Defender 稽核的相關資訊。

 **概要**：

```
aws iot  describe-audit-task \
    --task-id <value>  \
    [--cli-input-json <value>] \
    [--generate-cli-skeleton]
```

 `cli-input-json` 格式

```
{
  "taskId": "string"
}
```


**`cli-input-json` 欄位**  

|  名稱 |  類型 |  說明 | 
| --- | --- | --- | 
|  taskId |  string  長度上限：40；下限：1  模式：[a-zA-Z0-9-]\$1  |  您需要取得其資訊的稽核的 ID。 | 

Output

```
{
  "taskStatus": "string",
  "taskType": "string",
  "taskStartTime": "timestamp",
  "taskStatistics": {
    "totalChecks": "integer",
    "inProgressChecks": "integer",
    "waitingForDataCollectionChecks": "integer",
    "compliantChecks": "integer",
    "nonCompliantChecks": "integer",
    "failedChecks": "integer",
    "canceledChecks": "integer"
  },
  "scheduledAuditName": "string",
  "auditDetails": {
    "string": {
      "checkRunStatus": "string",
      "checkCompliant": "boolean",
      "totalResourcesCount": "long",
      "nonCompliantResourcesCount": "long",
      "errorCode": "string",
      "message": "string"
    }
  }
}
```


**CLI 輸出欄位**  

|  名稱 |  類型 |  說明 | 
| --- | --- | --- | 
|  taskStatus |  string |  稽核的狀態：IN\$1PROGRESS、COMPLETED、FAILED 或 CANCELED 的其中之一。  列舉：IN\$1PROGRESS \$1 COMPLETED \$1 FAILED \$1 CANCELED  | 
|  taskType |  string |  稽核的類型：ON\$1DEMAND\$1AUDIT\$1TASK 或 SCHEDULED\$1AUDIT\$1TASK。  列舉：ON\$1DEMAND\$1AUDIT\$1TASK \$1 SCHEDULED\$1AUDIT\$1TASK  | 
|  taskStartTime |  timestamp |  稽核開始的時間。 | 
|  taskStatistics |  TaskStatistics |  有關稽核的統計資訊。 | 
|  totalChecks |  integer |  此稽核中的檢查數量。 | 
|  inProgressChecks |  integer |  進行中的檢查數量。 | 
|  waitingForDataCollectionChecks |  integer |  正在等待資料收集的檢查數量。 | 
|  compliantChecks |  integer |  找到合規資源的檢查數量。 | 
|  nonCompliantChecks |  integer |  找到未合規之資源的檢查數量。 | 
|  failedChecks |  integer |  檢查數量。 | 
|  canceledChecks |  integer |  因稽核遭取消無法執行的檢查數量。 | 
|  scheduledAuditName |  string  長度上限：128；下限：1  模式：[a-zA-Z0-9\$1-]\$1  |  已排程的稽核的名稱 (僅當稽核為已排程的稽核時)。 | 
|  auditDetails |  映射 |  有關在這個稽核期間所執行的每個檢查的詳細資訊。 | 
|  checkRunStatus |  string |  此檢查的完成狀態，IN\$1PROGRESS、WAITING\$1FOR\$1DATA\$1COLLECTION、CANCELED、COMPLETED\$1COMPLIANT、COMPLETED\$1NON\$1COMPLIANT 或 FAILED 的其中之一。  列舉：IN\$1PROGRESS \$1 WAITING\$1FOR\$1DATA\$1COLLECTION \$1 CANCELED \$1 COMPLETED\$1COMPLIANT \$1 COMPLETED\$1NON\$1COMPLIANT \$1 FAILED  | 
|  checkCompliant |  boolean |  如果檢查完成且找到所有合規資源，則為 True。 | 
|  totalResourcesCount |  long |  執行檢查的資源數量。 | 
|  nonCompliantResourcesCount |  long |  檢查發現未合規的資源數量。 | 
|  errorCode |  string |  當在此稽核期間執行此檢查時，遇到的任何錯誤代碼。INSUFFICIENT\$1PERMISSIONS 或 AUDIT\$1CHECK\$1DISABLED 的其中之一。  | 
|  message |  string  長度上限：2048  |  當在此稽核期間執行此檢查時，遇到的任何錯誤相關訊息。 | 

 **錯誤**

`InvalidRequestException`  
請求的內容無效。

`ResourceNotFoundException`  
指定的資源不存在。

`ThrottlingException`  
請求頻率超過限制。

`InternalFailureException`  
出現未預期的錯誤。

### ListAuditTasks
<a name="dd-api-iot-ListAuditTasks"></a>

列出特定期間內執行的 Device Defender 稽核。

 **概要**：

```
aws iot  list-audit-tasks \
    --start-time <value> \
    --end-time <value> \
    [--task-type <value>] \
    [--task-status <value>] \
    [--next-token <value>] \
    [--max-results <value>]  \
    [--cli-input-json <value>] \
    [--generate-cli-skeleton]
```

 `cli-input-json` 格式

```
{
  "startTime": "timestamp",
  "endTime": "timestamp",
  "taskType": "string",
  "taskStatus": "string",
  "nextToken": "string",
  "maxResults": "integer"
}
```


**`cli-input-json` 欄位**  

|  名稱 |  類型 |  說明 | 
| --- | --- | --- | 
|  startTime |  timestamp |  時期的開始。稽核資訊會保留一段有限時期 (180 天)。要求開始時間，然後才會在 `InvalidRequestException` 保留結果。  | 
|  endTime |  timestamp |  時期的結束。 | 
|  taskType |  string |  限制輸出到指定的稽核類型的篩選條件：可以是 ON\$1DEMAND\$1AUDIT\$1TASK 或 SCHEDULED\$1\$1AUDIT\$1TASK 的其中一個。  列舉：ON\$1DEMAND\$1AUDIT\$1TASK \$1 SCHEDULED\$1AUDIT\$1TASK  | 
|  taskStatus |  string |  以指定完成狀態來限制輸出到稽核的篩選條件：可以是 IN\$1PROGRESS、COMPLETED、FAILED 或 CANCELED 的其中一個。  列舉：IN\$1PROGRESS \$1 COMPLETED \$1 FAILED \$1 CANCELED  | 
|  nextToken |  string |  下一組結果的字符。 | 
|  maxResults |  integer  範圍上限：250；下限：1  |  一次可回傳結果的數量上限。預設為 25。 | 

Output

```
{
  "tasks": [
    {
      "taskId": "string",
      "taskStatus": "string",
      "taskType": "string"
    }
  ],
  "nextToken": "string"
}
```


**CLI 輸出欄位**  

|  名稱 |  類型 |  說明 | 
| --- | --- | --- | 
|  任務 |  列出  成員：AuditTaskMetadata  Java 類別：java.util.List  |  在指定期間內執行的稽核。 | 
|  taskId |  string  長度上限：40；下限：1  模式：[a-zA-Z0-9-]\$1  |  此稽核的 ID。 | 
|  taskStatus |  string |  此稽核的狀態：IN\$1PROGRESS、COMPLETED、FAILED 或 CANCELED 的其中之一。  列舉：IN\$1PROGRESS \$1 COMPLETED \$1 FAILED \$1 CANCELED  | 
|  taskType |  string |  此稽核的類型：ON\$1DEMAND\$1AUDIT\$1TASK 或 SCHEDULED\$1AUDIT\$1TASK 的其中之一。  列舉：ON\$1DEMAND\$1AUDIT\$1TASK \$1 SCHEDULED\$1AUDIT\$1TASK  | 
|  nextToken |  string |  可用於擷取下一組結果的字符，或如果沒有其他結果則為 `null`。  | 

 **錯誤**

`InvalidRequestException`  
請求的內容無效。

`ThrottlingException`  
請求頻率超過限制。

`InternalFailureException`  
出現未預期的錯誤。

### CancelAuditTask
<a name="dd-api-iot-CancelAuditTask"></a>

取消正在進行的稽核。稽核可以是排定或隨需。如果稽核不在進行中，則會發生 `InvalidRequestException`。

 **概要**：

```
aws iot  cancel-audit-task \
    --task-id <value>  \
    [--cli-input-json <value>] \
    [--generate-cli-skeleton]
```

 `cli-input-json` 格式

```
{
  "taskId": "string"
}
```


**`cli-input-json` 欄位**  

|  名稱 |  類型 |  說明 | 
| --- | --- | --- | 
|  taskId |  string  長度上限：40；下限：1  模式：[a-zA-Z0-9-]\$1  |  您要取消的稽核的 ID。您只能取消 IN\$1PROGRESS 的稽核。  | 

Output

無

 **錯誤**

`ResourceNotFoundException`  
指定的資源不存在。

`InvalidRequestException`  
請求的內容無效。

`ThrottlingException`  
請求頻率超過限制。

`InternalFailureException`  
出現未預期的錯誤。

## 檢查稽核結果
<a name="device-defender-AuditCommandsFindings"></a>

使用 `ListAuditFindings` 以查看稽核結果。您可以依照檢查類型、特定資源或稽核時間來篩選結果。您可以使用此資訊來減輕任何找到的問題。

您可以定義緩解行動和從您的稽核套用到結果。如需更多詳細資訊，請參閱 [緩解動作](dd-mitigation-actions.md)。

### ListAuditFindings
<a name="dd-api-iot-ListAuditFindings"></a>

針對 Device Defender 稽核或特定期間內執行的稽核，列出調查結論 (結果)。(發現項目會保留 180 天)。

 **概要**：

```
aws iot  list-audit-findings \
    [--task-id <value>] \
    [--check-name <value>] \
    [--resource-identifier <value>] \
    [--max-results <value>] \
    [--next-token <value>] \
    [--start-time <value>] \
    [--end-time <value>]  \
    [--cli-input-json <value>] \
    [--generate-cli-skeleton]
```

 `cli-input-json` 格式

```
{
  "taskId": "string",
  "checkName": "string",
  "resourceIdentifier": {
    "deviceCertificateId": "string",
    "caCertificateId": "string",
    "cognitoIdentityPoolId": "string",
    "clientId": "string",
    "policyVersionIdentifier": {
      "policyName": "string",
      "policyVersionId": "string"
    },
   
    "roleAliasArn": "string",
    "account": "string"
  },
  "maxResults": "integer",
  "nextToken": "string",
  "startTime": "timestamp",
  "endTime": "timestamp"
}
```


**`cli-input-json` 欄位**  

|  名稱 |  類型 |  說明 | 
| --- | --- | --- | 
|  taskId  |  string  長度上限：40；下限：1  模式：[a-zA-Z0-9-]\$1  |  可限制具指定 ID 的稽核結果的篩選條件。您必須指定 taskId 或 startTime 和 endTime，但不能同時指定兩者。  | 
|  checkName  |  string  |  可限制指定的稽核檢查的發現結果的篩選條件。  | 
|  resourceIdentifier  |  ResourceIdentifier  |  可識別不合規資源的資訊。  | 
|  deviceCertificateId  |  string  長度上限：64；下限：64  模式：(0x)?[a-fA-F0-9]\$1  |  連接到資源的憑證 ID。  | 
|  caCertificateId  |  string  長度上限：64；下限：64  模式：(0x)?[a-fA-F0-9]\$1  |  用於授權憑證之憑證授權機構憑證的 ID。  | 
|  cognitoIdentityPoolId  |  string  |  Amazon Cognito 身分集區的 ID。  | 
|  clientId  |  string  |  用戶端 ID。  | 
|  policyVersionIdentifier  |  PolicyVersionIdentifier  |  與資源相關聯的政策版本。  | 
|  policyName  |  string  長度上限：128；下限：1  模式：[w\$1=,.@-]\$1  |  政策的名稱。  | 
|  policyVersionId  |  string  模式：[0-9]\$1  |  與資源相關聯的政策版本 ID。  | 
|  roleAliasArn  |  string  |  具有過於寬鬆動作之角色別名的 ARN。  長度上限：2048；下限：1  | 
|  帳戶  |  string  長度上限：12；下限：12  模式：[0-9]\$1  |  與資源相關聯的帳戶。  | 
|  maxResults  |  integer  範圍上限：250；下限：1  |  一次可回傳結果的數量上限。預設為 25。  | 
|  nextToken  |  string  |  下一組結果的字符。  | 
|  startTime  |  timestamp  |  一個篩選功能，其能限制指定的時間過後所找到的結果。您必須指定 startTime 和 endTime 或 taskId，但不能同時指定兩者。  | 
|  endTime  |  timestamp  |  一個篩選功能，其能限制指定的時間之前所找到的結果。您必須指定 startTime 和 endTime 或 taskId，但不能同時指定兩者。  | 

Output

```
{
  "findings": [
    {
      "taskId": "string",
      "checkName": "string",
      "taskStartTime": "timestamp",
      "findingTime": "timestamp",
      "severity": "string",
      "nonCompliantResource": {
        "resourceType": "string",
        "resourceIdentifier": {
          "deviceCertificateId": "string",
          "caCertificateId": "string",
          "cognitoIdentityPoolId": "string",
          "clientId": "string",
          "policyVersionIdentifier": {
            "policyName": "string",
            "policyVersionId": "string"
          },
          "account": "string"
        },
        "additionalInfo": {
          "string": "string"
        }
      },
      "relatedResources": [
        {
          "resourceType": "string",
          "resourceIdentifier": {
            "deviceCertificateId": "string",
            "caCertificateId": "string",
            "cognitoIdentityPoolId": "string",
            "clientId": "string",
    
            "iamRoleArn": "string",
    
            "policyVersionIdentifier": {
              "policyName": "string",
              "policyVersionId": "string"
            },
            "account": "string"
          },
    
          "roleAliasArn": "string",
    
          "additionalInfo": {
            "string": "string"
          }
        }
      ],
      "reasonForNonCompliance": "string",
      "reasonForNonComplianceCode": "string"
    }
  ],
  "nextToken": "string"
}
```


**CLI 輸出欄位**  

|  名稱 |  類型 |  說明 | 
| --- | --- | --- | 
|  問題清單  |  列出  成員：AuditFinding  |  稽核的發現 (結果)。  | 
|  taskId  |  string  長度上限：40；下限：1  模式：[a-zA-Z0-9-]\$1  |  產生此結果 (發現) 的稽核 ID。  | 
|  checkName  |  string  |  產生此結果的稽核檢查。  | 
|  taskStartTime  |  timestamp  |  稽核開始的時間。  | 
|  findingTime  |  timestamp  |  發現結果 (尋找) 的時間。  | 
|  severity  |  string  |  結果 (發現) 的嚴重性。  列舉：CRITICAL \$1 HIGH \$1 MEDIUM \$1 LOW  | 
|  nonCompliantResource  |  NonCompliantResource  |  發現不符合稽核檢查的資源。  | 
|  resourceType  |  string  |  未合規的資源類型。  列舉：DEVICE\$1CERTIFICATE \$1 CA\$1CERTIFICATE \$1 IOT\$1POLICY \$1 COGNITO\$1IDENTITY\$1POOL \$1 CLIENT\$1ID \$1 ACCOUNT\$1SETTINGS  | 
|  resourceIdentifier  |  ResourceIdentifier  |  可識別不合規資源的資訊。  | 
|  deviceCertificateId  |  string  長度上限：64；下限：64  模式：(0x)?[a-fA-F0-9]\$1  |  連接到資源的憑證 ID。  | 
|  caCertificateId  |  string  長度上限：64；下限：64  模式：(0x)?[a-fA-F0-9]\$1  |  用於授權憑證之憑證授權機構憑證的 ID。  | 
|  cognitoIdentityPoolId  |  string  |  Amazon Cognito 身分集區的 ID。  | 
|  clientId  |  string  |  用戶端 ID。  | 
|  policyVersionIdentifier  |  PolicyVersionIdentifier  |  與資源相關聯的政策版本。  | 
|  policyName  |  string  長度上限：128；下限：1  模式：[w\$1=,.@-]\$1  |  政策的名稱。  | 
|  policyVersionId  |  string  模式：[0-9]\$1  |  與資源相關聯的政策版本 ID。  | 
|  帳戶  |  string  長度上限：12；下限：12  模式：[0-9]\$1  |  與資源相關聯的帳戶。  | 
|  additionalInfo  |  映射  |  有關不合規資源的其他資訊。  | 
|  relatedResources  |  列出  成員：RelatedResource  |  相關資源的清單。  | 
|  resourceType  |  string  |  資源的類型。  列舉：DEVICE\$1CERTIFICATE \$1 CA\$1CERTIFICATE \$1 IOT\$1POLICY \$1 COGNITO\$1IDENTITY\$1POOL \$1 CLIENT\$1ID \$1 ACCOUNT\$1SETTINGS  | 
|  resourceIdentifier  |  ResourceIdentifier  |  可識別資源的資訊。  | 
|  deviceCertificateId  |  string  長度上限：64；下限：64  模式：(0x)?[a-fA-F0-9]\$1  |  連接到資源的憑證 ID。  | 
|  caCertificateId  |  string  長度上限：64；下限：64  模式：(0x)?[a-fA-F0-9]\$1  |  用於授權憑證之憑證授權機構憑證的 ID。  | 
|  cognitoIdentityPoolId  |  string  |  Amazon Cognito 身分集區的 ID。  | 
|  clientId  |  string  |  用戶端 ID。  | 
|  policyVersionIdentifier  |  PolicyVersionIdentifier  |  與資源相關聯的政策版本。  | 
|  iamRoleArn  |  string  長度上限：2048；下限：20  |  具有過於寬鬆動作之 IAM 角色的 ARN。  | 
|  policyName  |  string  長度上限：128；下限：1  模式：[w\$1=,.@-]\$1  |  政策的名稱。  | 
|  policyVersionId  |  string  模式：[0-9]\$1  |  與資源相關聯的政策版本 ID。  | 
|  roleAliasArn  |  string  長度上限：2048；下限：1  |  具有過於寬鬆動作之角色別名的 ARN。  | 
|  帳戶  |  string  長度上限：12；下限：12  模式：[0-9]\$1  |  與資源相關聯的帳戶。  | 
|  additionalInfo  |  映射  |  關於資源的其他資訊。  | 
|  reasonForNonCompliance  |  string  |  資源未合規的原因。  | 
|  reasonForNonComplianceCode  |  string  |  可指出資源不合規原因的代碼。  | 
|  nextToken  |  string  |  可用於擷取下一組結果的字符，或如果沒有其他結果則為 `null`。  | 

 **錯誤**

`InvalidRequestException`  
請求的內容無效。

`ThrottlingException`  
請求頻率超過限制。

`InternalFailureException`  
出現未預期的錯誤。