

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

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

このセクションでは、`create-dashboard` コマンドを使用してカスタムダッシュボードまたは Highlights ダッシュボードを作成する方法について説明します。

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

 CloudTrail はクエリを実行して、手動またはスケジュールされた更新中にダッシュボードのウィジェットを入力します。CloudTrail には、ダッシュボードウィジェットに関連付けられた各イベントデータストアで `StartQuery` オペレーションを実行するアクセス許可を付与する必要があります。アクセス許可を付与するには、`put-resource-policy` コマンドを実行してリソースベースのポリシーを各イベントデータストアにアタッチするか、CloudTrail コンソールでイベントデータストアのポリシーを編集します。ポリシーの例については「[例: CloudTrail がクエリを実行してダッシュボードを更新できるようにする](security_iam_resource-based-policy-examples.md#security_iam_resource-based-policy-examples-eds-dashboard)」を参照してください。

 更新スケジュールを設定するには、ユーザーに代わってダッシュボードを更新する`StartDashboardRefresh`オペレーションを実行するアクセス許可が に付与されている CloudTrail 必要があります。アクセス許可を付与するには、`put-resource-policy` オペレーションを実行してリソースベースのポリシーをダッシュボードにアタッチするか、CloudTrail コンソールでダッシュボードのポリシーを編集します。ポリシーの例については「[ダッシュボードのリソースベースのポリシーの例](security_iam_resource-based-policy-examples.md#security_iam_resource-based-policy-examples-dashboards)」を参照してください。

**Topics**
+ [を使用してカスタムダッシュボードを作成する AWS CLI](#lake-dashboard-cli-create-custom)
+ [で Highlights ダッシュボードを有効にする AWS CLI](#lake-dashboard-cli-create-highlights)
+ [ウィジェットのプロパティを表示する](lake-widget-properties.md)

## を使用してカスタムダッシュボードを作成する AWS CLI
<a name="lake-dashboard-cli-create-custom"></a>

次の手順は、カスタムダッシュボードを作成し、必要なリソースベースのポリシーをイベントデータストアとダッシュボードにアタッチし、ダッシュボードをアップデートして更新スケジュールを設定および有効にする方法を示しています。

1. `create-dashboard` を実行してダッシュボードを作成します。

   カスタムダッシュボードを作成すると、最大 10 個のウィジェットを持つ配列を渡すことができます。ウィジェットは、クエリの結果をグラフィカルに表示します。各ウィジェットは、`ViewProperties`、`QueryStatement`、および `QueryParameters` で構成されます。
   + `ViewProperties` – ビュータイプのプロパティを指定します。詳細については、「[ウィジェットのプロパティを表示する](lake-widget-properties.md)」を参照してください。
   + `QueryStatement` – ダッシュボードが更新されたときに CloudTrail が実行するクエリ。イベントデータストアがアカウントに存在する限り、複数のイベントデータストア間でクエリを実行できます。
   + `QueryParameters` – カスタムダッシュボード `$Period$`、`$StartTime$`、および `$EndTime$` では、`QueryParameters` の値がサポートされています。`QueryParameters` を使用するには、パラメータを置き換えたい `QueryStatement` に `?` を配置します。CloudTrail は、クエリの実行時にパラメータを入力します。

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

   ```
   aws cloudtrail create-dashboard --name 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": "AccountActivity",
           "View": "LineChart",
           "YAxisColumn": "eventCount",
           "XAxisColumn": "eventDate",
           "FilterColumn": "readOnly"
         },
         "QueryStatement": "SELECT DATE_TRUNC('?', eventTime) AS eventDate, IF(readOnly, 'read', 'write') AS readOnly, COUNT(*) as eventCount FROM eds WHERE eventTime > '?' AND eventTime < '?' GROUP BY DATE_TRUNC('?', eventTime), readOnly ORDER BY DATE_TRUNC('?', eventTime), readOnly",
         "QueryParameters": ["$Period$", "$StartTime$", "$EndTime$", "$Period$", "$Period$"]
       },
       {
         "ViewProperties": {
           "Height": "2",
           "Width": "4",
           "Title": "TopServices",
           "View": "BarChart",
           "LabelColumn": "service",
           "ValueColumn": "eventCount",
           "FilterColumn": "service",
           "Orientation": "Horizontal"
         },
         "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$"]
       }
     ]'
   ```

1. ウィジェットの `QueryStatement` に含まれる各イベントデータストアに必要なリソースポリシーを含む個別のファイルを作成します。ファイルに *policy.json* という名前を付け、次のポリシーステートメントの例を指定します。

    *123456789012* をアカウント ID に、また *arn:aws:cloudtrail:us-east-1:123456789012:dashboard/exampleDashboard* をダッシュボードの ARN に置き換えます。

   ダッシュボードのリソースベースのポリシーの詳細については、「[例: CloudTrail がクエリを実行してダッシュボードを更新できるようにする](security_iam_resource-based-policy-examples.md#security_iam_resource-based-policy-examples-eds-dashboard)」を参照してください。

1. `put-resource-policy` コマンドを実行して、ポリシーをアタッチします。CloudTrail コンソールでイベントデータストアのリソースベースのポリシーをアップデートすることもできます。

   次の例では、リソースベースのポリシーをイベントデータストアにアタッチします。

   ```
   aws cloudtrail put-resource-policy \
   --resource-arn eds-arn \
   --resource-policy file://policy.json
   ```

1. `put-resource-policy` コマンドを実行して、リソースベースのポリシーをダッシュボードにアタッチします。ポリシーの例については「[ダッシュボードのリソースベースのポリシーの例](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"}}}]}'
   ```

1. `update-dashboard` コマンドを実行して、`--refresh-schedule` パラメータを設定することで更新スケジュールを設定および有効にします。

   `--refresh-schedule` は、以下のオプションパラメータで構成されます。
   + `Frequency` – スケジュールの `Unit` と `Value`。

     カスタムダッシュボードの場合、単位は `HOURS` または `DAYS` です。

      カスタムダッシュボードの場合、単位が `HOURS` のときは、次の値が有効になります: `1`、`6`、`12`、`24`

     カスタムダッシュボードの場合、単位が `DAYS` のときの唯一の有効な値は `1` です。
   + `Status` – 更新スケジュールが有効かどうかを指定します。値を `ENABLED` に設定して更新スケジュールを有効にするか、`DISABLED` に設定して更新スケジュールをオフにします。
   + `TimeOfDay ` – スケジュールを実行する UTC の時刻で、時間単位の場合は分のみを参照します。デフォルトは 00:00 です。

   次の例では、6 時間ごとに更新スケジュールを設定し、スケジュールを有効にします。

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

## で Highlights ダッシュボードを有効にする AWS CLI
<a name="lake-dashboard-cli-create-highlights"></a>

次の手順は、Highlights ダッシュボードを作成し、必要なリソースベースのポリシーをイベントデータストアとダッシュボードにアタッチし、ダッシュボードをアップデートして更新スケジュールを設定および有効にする方法を示しています。

1. `create-dashboard` コマンドを実行して Highlights ダッシュボードを作成します。このダッシュボードを作成するには、`--name` が `AWSCloudTrail-Highlights` である必要があります。

   ```
   aws cloudtrail create-dashboard --name AWSCloudTrail-Highlights
   ```

1. アカウント内のイベントデータストアごとに、`put-resource-policy` コマンドを実行して、リソースベースのポリシーをイベントデータストアにアタッチします。CloudTrail コンソールでイベントデータストアのリソースベースのポリシーをアップデートすることもできます。ポリシーの例については「[例: CloudTrail がクエリを実行してダッシュボードを更新できるようにする](security_iam_resource-based-policy-examples.md#security_iam_resource-based-policy-examples-eds-dashboard)」を参照してください。

   次の例では、リソースベースのポリシーをイベントデータストアにアタッチします。*account-id* をアカウント ID に、*eds-arn* をイベントデータストアの 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"}}} ]}'
   ```

1. `put-resource-policy` コマンドを実行して、リソースベースのポリシーをダッシュボードにアタッチします。ポリシーの例については「[ダッシュボードのリソースベースのポリシーの例](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"}}}]}'
   ```

1. `update-dashboard` コマンドを実行して、`--refresh-schedule` パラメータを設定することで更新スケジュールを設定および有効にします。Highlights ダッシュボードでは、唯一の有効な `UNIT` は `HOURS` で、唯一の有効な `Value` は `6` です。

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