

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# を使用してダッシュボードを管理する AWS CLI
<a name="lake-dashboard-cli-manage"></a>

このセクションでは、ダッシュボードの取得、ダッシュボードの一覧表示、ダッシュボードの更新、ダッシュボードのアップデートなど、ダッシュボードを管理するために実行できる他のいくつかのコマンドについて説明します。

を使用する場合 AWS CLI、コマンドはプロファイル用に AWS リージョン 設定された で実行されることに注意してください。別のリージョンでコマンドを実行する場合は、プロファイルのデフォルトのリージョンを変更するか、コマンドに `--region` パラメータを使用します。

**Topics**
+ [を使用してダッシュボードを取得する AWS CLI](#lake-dashboard-cli-get)
+ [を使用してダッシュボードを一覧表示する AWS CLI](#lake-dashboard-cli-list)
+ [を使用して、リソースベースのポリシーをイベントデータストアまたはダッシュボードにアタッチする AWS CLI](#lake-dashboard-cli-add-rbp)
+ [を使用してダッシュボードを手動で更新する AWS CLI](#lake-dashboard-cli-refresh)
+ [を使用してダッシュボードを更新する AWS CLI](#lake-dashboard-cli-update)

## を使用してダッシュボードを取得する AWS CLI
<a name="lake-dashboard-cli-get"></a>

`get-dashboard` コマンドを実行してダッシュボードを返します。ダッシュボード ARN またはダッシュボード名を指定して、`--dashboard-id` を指定します。

```
aws cloudtrail get-dashboard --dashboard-id arn:aws:cloudtrail:us-east-1:123456789012:dashboard/exampleDash
```

## を使用してダッシュボードを一覧表示する AWS CLI
<a name="lake-dashboard-cli-list"></a>

`list-dashboards` コマンドを実行して、アカウントのダッシュボードを一覧表示します。
+ `--type` パラメータを含めて、`CUSTOM` または `MANAGED` ダッシュボードのみを表示します。
+  結果の数を制限するには、`--max-results` パラメータを含めます。有効な値は、1～100 です。
+ `--name-prefix` を含めて、指定されたプレフィックスに一致するダッシュボードを返します。

以下の例では、すべてのダッシュボードを一覧表示します。

```
aws cloudtrail list-dashboards
```

この例では、`CUSTOM` ダッシュボードのみを一覧表示します。

```
aws cloudtrail list-dashboards --type CUSTOM
```

次の例では、`MANAGED` ダッシュボードのみを一覧表示します。

```
aws cloudtrail list-dashboards --type MANAGED
```

最後の例では、指定されたプレフィックスに一致するダッシュボードを一覧表示します。

```
aws cloudtrail list-dashboards --name-prefix {{ExamplePrefix}}
```

## を使用して、リソースベースのポリシーをイベントデータストアまたはダッシュボードにアタッチする AWS CLI
<a name="lake-dashboard-cli-add-rbp"></a>

`put-resource-policy` コマンドを実行して、リソースベースのポリシーをイベントデータストアまたはダッシュボードに適用します。

### リソースベースのポリシーをイベントデータストアにアタッチする
<a name="lake-dashboard-cli-add-rbp-eds"></a>

手動またはスケジュールされた更新中にダッシュボードでクエリを実行するには、ダッシュボードのウィジェットに関連付けられているすべてのイベントデータストアにリソースベースのポリシーをアタッチする必要があります。これにより、CloudTrail Lake はユーザーに代わってクエリを実行できます。リソースベースのポリシーの詳細については、「[例: CloudTrail がクエリを実行してダッシュボードを更新できるようにする](security_iam_resource-based-policy-examples.md#security_iam_resource-based-policy-examples-eds-dashboard)」を参照してください。

次の例では、リソースベースのポリシーをイベントデータストアにアタッチします。{{account-id}} をアカウント ID に、{{eds-arn}} を CloudTrail がクエリを実行するイベントデータストアの ARN に、また {{dashboard-arn}} をダッシュボードの ARN に置き換えます。

```
aws cloudtrail put-resource-policy \
--resource-arn {{eds-arn}} \
--resource-policy '{"Version": "2012-10-17",		 	 	  "Statement": [{"Sid": "EDSPolicy", "Effect": "Allow", "Principal": { "Service": "cloudtrail.amazonaws.com" }, "Action": "cloudtrail:StartQuery", "Condition": { "StringEquals": { "AWS:SourceArn": "{{dashboard-arn}}", "AWS:SourceAccount": "{{account-id}}"}}} ]}'
```

### リソースベースのポリシーをダッシュボードにアタッチする
<a name="lake-dashboard-cli-add-rbp-dashboard"></a>

ダッシュボードの更新スケジュールを設定するには、リソースベースのポリシーをダッシュボードにアタッチして、CloudTrail Lake がユーザーに代わってダッシュボードを更新できるようにする必要があります。リソースベースのポリシーの詳細については、「[ダッシュボードのリソースベースのポリシーの例](security_iam_resource-based-policy-examples.md#security_iam_resource-based-policy-examples-dashboards)」を参照してください。

次の例では、ダッシュボードにリソースベースのポリシーをアタッチします。{{account-id}} をアカウント ID に、また {{dashboard-arn}} をダッシュボードの ARN に置き換えます。

```
aws cloudtrail put-resource-policy \
--resource-arn {{dashboard-arn}} \
--resource-policy '{"Version": "2012-10-17",		 	 	  "Statement": [{"Sid": "DashboardPolicy", "Effect": "Allow", "Principal": { "Service": "cloudtrail.amazonaws.com" }, "Action": "cloudtrail:StartDashboardRefresh", "Condition": { "StringEquals": { "AWS:SourceArn": "{{dashboard-arn}}", "AWS:SourceAccount": "{{account-id}}"}}}]}'
```

## を使用してダッシュボードを手動で更新する AWS CLI
<a name="lake-dashboard-cli-refresh"></a>

`start-dashboard-refresh` コマンドを実行して、ダッシュボードを手動で更新します。このコマンドを実行する前に、ダッシュボードウィジェットに関連付けられたすべてのイベントデータストアに[リソースベースのポリシーをアタッチ](#lake-dashboard-cli-add-rbp-eds)する必要があります。

以下の例は、カスタムダッシュボードを手動で更新する方法を示しています。

```
aws cloudtrail start-dashboard-refresh \ 
--dashboard-id  {{dashboard-id}} \ 
--query-parameter-values '{"$StartTime$": "2024-11-05T10:45:24.00Z"}'
```

次の例は、マネージドダッシュボードを手動で更新する方法を示しています。マネージドダッシュボードは CloudTrail によって設定されるため、更新リクエストにはクエリを実行するイベントデータストアの ID を含める必要があります。

```
aws cloudtrail start-dashboard-refresh \
--dashboard-id {{dashboard-id}}  \
--query-parameter-values '{"$StartTime$": "2024-11-05T10:45:24.00Z", "$EventDataStoreId$": "{{eds-id}}"}'
```

## を使用してダッシュボードを更新する AWS CLI
<a name="lake-dashboard-cli-update"></a>

`update-dashboard` コマンドを実行してダッシュボードをアップデートします。ダッシュボードをアップデートして、更新スケジュールの設定、更新スケジュールの有効化または無効化、ウィジェットの変更、終了保護の有効化または無効化を行うことができます。

### で更新スケジュールを更新する AWS CLI
<a name="lake-dashboard-cli-update-schedule"></a>

次の例では、`AccountActivityDashboard` という名前のカスタムダッシュボードの更新スケジュールをアップデートします。

```
aws cloudtrail update-dashboard --dashboard-id AccountActivityDashboard \
--refresh-schedule '{"Frequency": {"Unit": "HOURS", "Value": 6}, "Status": "ENABLED"}'
```

### を使用してカスタムダッシュボードで終了保護と更新スケジュールを無効にする AWS CLI
<a name="lake-dashboard-cli-update-termination-protection"></a>

次の例では、`AccountActivityDashboard` という名前のカスタムダッシュボードの終了保護を無効にして、ダッシュボードの削除を許可します。また、更新スケジュールもオフになります。

```
aws cloudtrail update-dashboard --dashboard-id AccountActivityDashboard \
--refresh-schedule '{ "Status": "DISABLED"}' \
--no-termination-protection-enabled
```

### ウィジェットをカスタムダッシュボードに追加する
<a name="lake-dashboard-cli-update-widget"></a>

次の例では、`TopServices` という名前の新しいウィジェットを `AccountActivityDashboard` という名前のカスタムダッシュボードに追加します。ウィジェット配列には、ダッシュボード用に既に作成された 2 つのウィジェットと新しいウィジェットが含まれます。

**注記**  
この例では、`?` は `eventTime` で使用されるため、一重引用符で囲まれています。実行中のオペレーティングシステムによっては、一重引用符をエスケープ引用符で囲む必要がある場合があります。詳細については、「[AWS CLI内の文字列に引用符とリテラルを使用する](https://docs.aws.amazon.com/cli/v1/userguide/cli-usage-parameters-quoting-strings.html)」を参照してください。

```
aws cloudtrail update-dashboard --dashboard-id AccountActivityDashboard \
--widgets '[
    {
      "ViewProperties": {
        "Height": "2",
        "Width": "4",
        "Title": "TopErrors",
        "View": "Table"
      },
      "QueryStatement": "SELECT errorCode, COUNT(*) AS eventCount FROM eds WHERE eventTime > '?' AND eventTime < '?' AND (errorCode is not null) GROUP BY errorCode ORDER BY eventCount DESC LIMIT 100",
      "QueryParameters": ["$StartTime$", "$EndTime$"]
    },
    {
      "ViewProperties": {
        "Height": "2",
        "Width": "4",
        "Title": "MostActiveRegions",
        "View": "PieChart",
        "LabelColumn": "awsRegion",
        "ValueColumn": "eventCount",
        "FilterColumn": "awsRegion"
      },
      "QueryStatement": "SELECT awsRegion, COUNT(*) AS eventCount FROM eds where eventTime > '?' and eventTime < '?' GROUP BY awsRegion ORDER BY eventCount LIMIT 100",
      "QueryParameters": ["$StartTime$", "$EndTime$"]
    },
    {
      "ViewProperties": {
        "Height": "2",
        "Width": "4",
        "Title": "TopServices",
        "View": "BarChart",
        "LabelColumn": "service",
        "ValueColumn": "eventCount",
        "FilterColumn": "service",
        "Orientation": "Vertical"
      },
      "QueryStatement": "SELECT replace(eventSource, '.amazonaws.com') AS service, COUNT(*) as eventCount FROM eds WHERE eventTime > '?' AND eventTime < '?' GROUP BY eventSource ORDER BY eventCount DESC LIMIT 100",
      "QueryParameters": ["$StartTime$", "$EndTime$"]
    }
  ]'
```