を使用してダッシュボードを作成するAWS CLI - AWS CloudTrail

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

を使用してダッシュボードを作成するAWS CLI

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

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

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

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

を使用してカスタムダッシュボードを作成するAWS CLI

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

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

    カスタムダッシュボードを作成すると、最大 10 個のウィジェットを持つ配列を渡すことができます。ウィジェットは、クエリの結果をグラフィカルに表示します。各ウィジェットは、ViewPropertiesQueryStatement、および QueryParameters で構成されます。

    • ViewProperties – ビュータイプのプロパティを指定します。詳細については、「ウィジェットのプロパティを表示する」を参照してください。

    • QueryStatement – ダッシュボードが更新されたときに CloudTrail が実行するクエリ。イベントデータストアがアカウントに存在する限り、複数のイベントデータストア間でクエリを実行できます。

    • QueryParameters – カスタムダッシュボード $Period$$StartTime$、および $EndTime$ では、QueryParameters の値がサポートされています。QueryParameters を使用するには、パラメータを置き換えたい QueryStatement? を配置します。CloudTrail は、クエリの実行時にパラメータを入力します。

    次の例では、各ビュータイプの 1 つである 4 つのウィジェットを含むダッシュボードを作成します。

    注記

    この例では、?eventTime で使用されるため、一重引用符で囲まれています。実行中のオペレーティングシステムによっては、一重引用符をエスケープ引用符で囲む必要がある場合があります。詳細については、「AWS CLI 内の文字列に引用符とリテラルを使用する」を参照してください。

    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$"] } ]'
  2. ウィジェットの QueryStatement に含まれる各イベントデータストアに必要なリソースポリシーを含む個別のファイルを作成します。ファイルに policy.json という名前を付け、次のポリシーステートメントの例を指定します。

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

    ダッシュボードのリソースベースのポリシーの詳細については、「例: CloudTrail がクエリを実行してダッシュボードを更新できるようにする」を参照してください。

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

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

    aws cloudtrail put-resource-policy \ --resource-arn eds-arn \ --resource-policy file://policy.json
  4. put-resource-policy コマンドを実行して、リソースベースのポリシーをダッシュボードにアタッチします。ポリシーの例については「ダッシュボードのリソースベースのポリシーの例」を参照してください。

    次の例では、ダッシュボードにリソースベースのポリシーをアタッチします。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"}}}]}'
  5. update-dashboard コマンドを実行して、--refresh-schedule パラメータを設定することで更新スケジュールを設定および有効にします。

    --refresh-schedule は、以下のオプションパラメータで構成されます。

    • Frequency – スケジュールの UnitValue

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

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

      カスタムダッシュボードの場合、単位が 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

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

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

    aws cloudtrail create-dashboard --name AWSCloudTrail-Highlights
  2. アカウント内のイベントデータストアごとに、put-resource-policy コマンドを実行して、リソースベースのポリシーをイベントデータストアにアタッチします。CloudTrail コンソールでイベントデータストアのリソースベースのポリシーをアップデートすることもできます。ポリシーの例については「例: CloudTrail がクエリを実行してダッシュボードを更新できるようにする」を参照してください。

    次の例では、リソースベースのポリシーをイベントデータストアにアタッチします。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"}}} ]}'
  3. put-resource-policy コマンドを実行して、リソースベースのポリシーをダッシュボードにアタッチします。ポリシーの例については「ダッシュボードのリソースベースのポリシーの例」を参照してください。

    次の例では、ダッシュボードにリソースベースのポリシーをアタッチします。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"}}}]}'
  4. update-dashboard コマンドを実行して、--refresh-schedule パラメータを設定することで更新スケジュールを設定および有効にします。Highlights ダッシュボードでは、唯一の有効な UNITHOURS で、唯一の有効な Value6 です。

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