AWS SDK またはコマンドラインツールLookupEventsで を使用する - AWS SDK コード例

Doc AWS SDK Examples リポジトリには、他にも SDK の例があります。 AWS GitHub

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

AWS SDK またはコマンドラインツールLookupEventsで を使用する

以下のコード例は、LookupEvents の使用方法を示しています。

C++
SDK for C++
注記

の詳細については、「」を参照してください GitHub。AWS コード例リポジトリ で全く同じ例を見つけて、設定と実行の方法を確認してください。

// Routine which looks up events captured by AWS CloudTrail. /*! \param clientConfig: Aws client configuration. \return bool: Function succeeded. */ bool AwsDoc::CloudTrail::lookupEvents( const Aws::Client::ClientConfiguration &clientConfig) { Aws::CloudTrail::CloudTrailClient cloudtrail(clientConfig); Aws::String nextToken; // Used for pagination. Aws::Vector<Aws::CloudTrail::Model::Event> allEvents; Aws::CloudTrail::Model::LookupEventsRequest request; size_t count = 0; do { if (!nextToken.empty()) { request.SetNextToken(nextToken); } Aws::CloudTrail::Model::LookupEventsOutcome outcome = cloudtrail.LookupEvents( request); if (outcome.IsSuccess()) { const Aws::Vector<Aws::CloudTrail::Model::Event> &events = outcome.GetResult().GetEvents(); count += events.size(); allEvents.insert(allEvents.end(), events.begin(), events.end()); nextToken = outcome.GetResult().GetNextToken(); } else { std::cerr << "Error: " << outcome.GetError().GetMessage() << std::endl; return false; } } while (!nextToken.empty() && count <= 50); // Limit to 50 events. std::cout << "Found " << allEvents.size() << " event(s)." << std::endl; for (auto &event: allEvents) { std::cout << "Event name: " << event.GetEventName() << std::endl; std::cout << "Event source: " << event.GetEventSource() << std::endl; std::cout << "Event id: " << event.GetEventId() << std::endl; std::cout << "Resources: " << std::endl; for (auto &resource: event.GetResources()) { std::cout << " " << resource.GetResourceName() << std::endl; } } return true; }
  • API の詳細については、「 API リファレンスLookupEvents」の「」を参照してください。 AWS SDK for C++

CLI
AWS CLI

証跡のイベントを検索するには

次のlookup-eventsコマンドは、属性 で API アクティビティイベントを検索しますEventName

aws cloudtrail lookup-events --lookup-attributes AttributeKey=EventName,AttributeValue=ConsoleLogin

出力:

{ "Events": [ { "EventId": "654ccbc0-ba0d-486a-9076-dbf7274677a7", "Username": "my-session-name", "EventTime": "2021-11-18T09:41:02-08:00", "CloudTrailEvent": "{\"eventVersion\":\"1.02\",\"userIdentity\":{\"type\":\"AssumedRole\",\"principalId\":\"AROAJIKPFTA72SWU4L7T4:my-session-name\",\"arn\":\"arn:aws:sts::123456789012:assumed-role/my-role/my-session-name\",\"accountId\":\"123456789012\",\"sessionContext\":{\"attributes\":{\"mfaAuthenticated\":\"false\",\"creationDate\":\"2016-01-26T21:42:12Z\"},\"sessionIssuer\":{\"type\":\"Role\",\"principalId\":\"AROAJIKPFTA72SWU4L7T4\",\"arn\":\"arn:aws:iam::123456789012:role/my-role\",\"accountId\":\"123456789012\",\"userName\":\"my-role\"}}},\"eventTime\":\"2016-01-26T21:42:12Z\",\"eventSource\":\"signin.amazonaws.com\",\"eventName\":\"ConsoleLogin\",\"awsRegion\":\"us-east-1\",\"sourceIPAddress\":\"72.21.198.70\",\"userAgent\":\"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.111 Safari/537.36\",\"requestParameters\":null,\"responseElements\":{\"ConsoleLogin\":\"Success\"},\"additionalEventData\":{\"MobileVersion\":\"No\",\"MFAUsed\":\"No\"},\"eventID\":\"654ccbc0-ba0d-486a-9076-dbf7274677a7\",\"eventType\":\"AwsConsoleSignIn\",\"recipientAccountId\":\"123456789012\"}", "EventName": "ConsoleLogin", "Resources": [] } ] }
  • API の詳細については、「 コマンドリファレンスLookupEvents」の「」を参照してください。 AWS CLI

PowerShell
のツール PowerShell

例 1: 過去 7 日間に発生したすべてのイベントを返します。デフォルトで、 コマンドレットはすべてのイベントを配信するために複数の呼び出しを自動的に実行し、サービスがそれ以上データがないことを示している場合に終了します。

Find-CTEvent

例 2: 現在のシェルのデフォルトではないリージョンを指定して、過去 7 日間に発生したすべてのイベントを返します。

Find-CTEvent -Region eu-central-1

例 3: RunInstances API コールに関連付けられているすべてのイベントを返します。

Find-CTEvent -LookupAttribute @{ AttributeKey="EventName"; AttributeValue="RunInstances" }

例 4: 使用可能な最初の 5 つのイベントを返します。さらにイベントを取得するために使用するトークンは、「」という名前のメモプロパティとして$AWSHistory.LastServiceResponseメンバーNextTokenにアタッチされます。

Find-CTEvent -MaxResult 5

例 5: 前の呼び出しの「次のページ」トークンを使用して次の 10 個のイベントを返し、シーケンス内のイベントを返し始める場所を示します。

Find-CTEvent -MaxResult 10 -NextToken $AWSHistory.LastServiceResponse.NextToken

例 6: この例は、手動ページングを使用して利用可能なイベントをループし、呼び出しごとに最大 5 つのイベントを取得する方法を示しています。

$nextToken = $null do { Find-CTEvent -MaxResult 5 -NextToken $nextToken $nextToken = $AWSHistory.LastServiceResponse.NextToken } while ($nextToken -ne $null)
  • API の詳細については、AWS Tools for PowerShell 「 コマンドレットリファレンスLookupEvents」の「」を参照してください。

Ruby
SDK for Ruby
注記

の詳細については、「」を参照してください GitHub。AWS コード例リポジトリ で全く同じ例を見つけて、設定と実行の方法を確認してください。

require "aws-sdk-cloudtrail" # v2: require 'aws-sdk' # @param [Object] client def lookup_events_example(client) resp = client.lookup_events puts "Found #{resp.events.count} events:" resp.events.each do |e| puts "Event name: #{e.event_name}" puts "Event ID: #{e.event_id}" puts "Event time: #{e.event_time}" puts "Resources:" e.resources.each do |r| puts " Name: #{r.resource_name}" puts " Type: #{r.resource_type}" puts "" end end end
  • API の詳細については、「 API リファレンスLookupEvents」の「」を参照してください。 AWS SDK for Ruby