aws-sdk-inspector 1.0.0.rc1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 14a046f3236b12b139878921ea68f1559a1edece
4
+ data.tar.gz: 7dd9a2fe81bc5ceeb5aca8fb7dead6dca32f2d11
5
+ SHA512:
6
+ metadata.gz: 6ad62d139e8f6fd81c4c89c08f0bbfadc93118d1dffea3f928794fe4e631df5a4106da4aa5b6ddb3e101c63937f580b204fb75f6d7e6cd0abb306f1c9ac46268
7
+ data.tar.gz: 34752ef1799f91ab40aba02fa10cab1ca44e359b0e5f8ec6b8ab1e8d5c5bd70f4bbd335e623e8135ab446305b909c02874cd249556f4467752f821522b8042cc
@@ -0,0 +1,47 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing for info on making contributions:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ require 'aws-sdk-core'
9
+ require 'aws-sigv4'
10
+
11
+ require_relative 'aws-sdk-inspector/types'
12
+ require_relative 'aws-sdk-inspector/client_api'
13
+ require_relative 'aws-sdk-inspector/client'
14
+ require_relative 'aws-sdk-inspector/errors'
15
+ require_relative 'aws-sdk-inspector/resource'
16
+ require_relative 'aws-sdk-inspector/customizations'
17
+
18
+ # This module provides support for Amazon Inspector. This module is available in the
19
+ # `aws-sdk-inspector` gem.
20
+ #
21
+ # # Client
22
+ #
23
+ # The {Client} class provides one method for each API operation. Operation
24
+ # methods each accept a hash of request parameters and return a response
25
+ # structure.
26
+ #
27
+ # See {Client} for more information.
28
+ #
29
+ # # Errors
30
+ #
31
+ # Errors returned from Amazon Inspector all
32
+ # extend {Errors::ServiceError}.
33
+ #
34
+ # begin
35
+ # # do stuff
36
+ # rescue Aws::Inspector::Errors::ServiceError
37
+ # # rescues all service API errors
38
+ # end
39
+ #
40
+ # See {Errors} for more information.
41
+ #
42
+ # @service
43
+ module Aws::Inspector
44
+
45
+ GEM_VERSION = '1.0.0.rc1'
46
+
47
+ end
@@ -0,0 +1,1293 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing for info on making contributions:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ require 'seahorse/client/plugins/content_length.rb'
9
+ require 'aws-sdk-core/plugins/credentials_configuration.rb'
10
+ require 'aws-sdk-core/plugins/logging.rb'
11
+ require 'aws-sdk-core/plugins/param_converter.rb'
12
+ require 'aws-sdk-core/plugins/param_validator.rb'
13
+ require 'aws-sdk-core/plugins/user_agent.rb'
14
+ require 'aws-sdk-core/plugins/helpful_socket_errors.rb'
15
+ require 'aws-sdk-core/plugins/retry_errors.rb'
16
+ require 'aws-sdk-core/plugins/global_configuration.rb'
17
+ require 'aws-sdk-core/plugins/regional_endpoint.rb'
18
+ require 'aws-sdk-core/plugins/response_paging.rb'
19
+ require 'aws-sdk-core/plugins/stub_responses.rb'
20
+ require 'aws-sdk-core/plugins/idempotency_token.rb'
21
+ require 'aws-sdk-core/plugins/signature_v4.rb'
22
+ require 'aws-sdk-core/plugins/protocols/json_rpc.rb'
23
+
24
+ Aws::Plugins::GlobalConfiguration.add_identifier(:inspector)
25
+
26
+ module Aws
27
+ module Inspector
28
+ class Client < Seahorse::Client::Base
29
+
30
+ include Aws::ClientStubs
31
+
32
+ @identifier = :inspector
33
+
34
+ set_api(ClientApi::API)
35
+
36
+ add_plugin(Seahorse::Client::Plugins::ContentLength)
37
+ add_plugin(Aws::Plugins::CredentialsConfiguration)
38
+ add_plugin(Aws::Plugins::Logging)
39
+ add_plugin(Aws::Plugins::ParamConverter)
40
+ add_plugin(Aws::Plugins::ParamValidator)
41
+ add_plugin(Aws::Plugins::UserAgent)
42
+ add_plugin(Aws::Plugins::HelpfulSocketErrors)
43
+ add_plugin(Aws::Plugins::RetryErrors)
44
+ add_plugin(Aws::Plugins::GlobalConfiguration)
45
+ add_plugin(Aws::Plugins::RegionalEndpoint)
46
+ add_plugin(Aws::Plugins::ResponsePaging)
47
+ add_plugin(Aws::Plugins::StubResponses)
48
+ add_plugin(Aws::Plugins::IdempotencyToken)
49
+ add_plugin(Aws::Plugins::SignatureV4)
50
+ add_plugin(Aws::Plugins::Protocols::JsonRpc)
51
+
52
+ # @option options [required, Aws::CredentialProvider] :credentials
53
+ # Your AWS credentials. This can be an instance of any one of the
54
+ # following classes:
55
+ #
56
+ # * `Aws::Credentials` - Used for configuring static, non-refreshing
57
+ # credentials.
58
+ #
59
+ # * `Aws::InstanceProfileCredentials` - Used for loading credentials
60
+ # from an EC2 IMDS on an EC2 instance.
61
+ #
62
+ # * `Aws::SharedCredentials` - Used for loading credentials from a
63
+ # shared file, such as `~/.aws/config`.
64
+ #
65
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
66
+ #
67
+ # When `:credentials` are not configured directly, the following
68
+ # locations will be searched for credentials:
69
+ #
70
+ # * `Aws.config[:credentials]`
71
+ # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
72
+ # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
73
+ # * `~/.aws/credentials`
74
+ # * `~/.aws/config`
75
+ # * EC2 IMDS instance profile - When used by default, the timeouts are
76
+ # very aggressive. Construct and pass an instance of
77
+ # `Aws::InstanceProfileCredentails` to enable retries and extended
78
+ # timeouts.
79
+ # @option options [required, String] :region
80
+ # The AWS region to connect to. The configured `:region` is
81
+ # used to determine the service `:endpoint`. When not passed,
82
+ # a default `:region` is search for in the following locations:
83
+ #
84
+ # * `Aws.config[:region]`
85
+ # * `ENV['AWS_REGION']`
86
+ # * `ENV['AMAZON_REGION']`
87
+ # * `ENV['AWS_DEFAULT_REGION']`
88
+ # * `~/.aws/credentials`
89
+ # * `~/.aws/config`
90
+ # @option options [String] :access_key_id
91
+ # @option options [Boolean] :convert_params (true)
92
+ # When `true`, an attempt is made to coerce request parameters into
93
+ # the required types.
94
+ # @option options [String] :endpoint
95
+ # The client endpoint is normally constructed from the `:region`
96
+ # option. You should only configure an `:endpoint` when connecting
97
+ # to test endpoints. This should be avalid HTTP(S) URI.
98
+ # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
99
+ # The log formatter.
100
+ # @option options [Symbol] :log_level (:info)
101
+ # The log level to send messages to the `:logger` at.
102
+ # @option options [Logger] :logger
103
+ # The Logger instance to send log messages to. If this option
104
+ # is not set, logging will be disabled.
105
+ # @option options [String] :profile ("default")
106
+ # Used when loading credentials from the shared credentials file
107
+ # at HOME/.aws/credentials. When not specified, 'default' is used.
108
+ # @option options [Integer] :retry_limit (3)
109
+ # The maximum number of times to retry failed requests. Only
110
+ # ~ 500 level server errors and certain ~ 400 level client errors
111
+ # are retried. Generally, these are throttling errors, data
112
+ # checksum errors, networking errors, timeout errors and auth
113
+ # errors from expired credentials.
114
+ # @option options [String] :secret_access_key
115
+ # @option options [String] :session_token
116
+ # @option options [Boolean] :simple_json (false)
117
+ # Disables request parameter conversion, validation, and formatting.
118
+ # Also disable response data type conversions. This option is useful
119
+ # when you want to ensure the highest level of performance by
120
+ # avoiding overhead of walking request parameters and response data
121
+ # structures.
122
+ #
123
+ # When `:simple_json` is enabled, the request parameters hash must
124
+ # be formatted exactly as the DynamoDB API expects.
125
+ # @option options [Boolean] :stub_responses (false)
126
+ # Causes the client to return stubbed responses. By default
127
+ # fake responses are generated and returned. You can specify
128
+ # the response data to return or errors to raise by calling
129
+ # {ClientStubs#stub_responses}. See {ClientStubs} for more information.
130
+ #
131
+ # ** Please note ** When response stubbing is enabled, no HTTP
132
+ # requests are made, and retries are disabled.
133
+ # @option options [Boolean] :validate_params (true)
134
+ # When `true`, request parameters are validated before
135
+ # sending the request.
136
+ def initialize(*args)
137
+ super
138
+ end
139
+
140
+ # @!group API Operations
141
+
142
+ # Assigns attributes (key and value pairs) to the findings that are
143
+ # specified by the ARNs of the findings.
144
+ # @option params [required, Array<String>] :finding_arns
145
+ # The ARNs that specify the findings that you want to assign attributes
146
+ # to.
147
+ # @option params [required, Array<Types::Attribute>] :attributes
148
+ # The array of attributes that you want to assign to specified findings.
149
+ # @return [Types::AddAttributesToFindingsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
150
+ #
151
+ # * {Types::AddAttributesToFindingsResponse#failed_items #failedItems} => Hash&lt;String,Types::FailedItemDetails&gt;
152
+ #
153
+ # @example Request syntax with placeholder values
154
+ # resp = client.add_attributes_to_findings({
155
+ # finding_arns: ["Arn"], # required
156
+ # attributes: [ # required
157
+ # {
158
+ # key: "AttributeKey", # required
159
+ # value: "AttributeValue",
160
+ # },
161
+ # ],
162
+ # })
163
+ #
164
+ # @example Response structure
165
+ # resp.failed_items #=> Hash
166
+ # resp.failed_items["Arn"].failure_code #=> String, one of "INVALID_ARN", "DUPLICATE_ARN", "ITEM_DOES_NOT_EXIST", "ACCESS_DENIED", "LIMIT_EXCEEDED", "INTERNAL_ERROR"
167
+ # resp.failed_items["Arn"].retryable #=> Boolean
168
+ # @overload add_attributes_to_findings(params = {})
169
+ # @param [Hash] params ({})
170
+ def add_attributes_to_findings(params = {}, options = {})
171
+ req = build_request(:add_attributes_to_findings, params)
172
+ req.send_request(options)
173
+ end
174
+
175
+ # Creates a new assessment target using the ARN of the resource group
176
+ # that is generated by CreateResourceGroup. You can create up to 50
177
+ # assessment targets per AWS account. You can run up to 500 concurrent
178
+ # agents per AWS account. For more information, see [ Amazon Inspector
179
+ # Assessment Targets][1].
180
+ #
181
+ #
182
+ #
183
+ # [1]: http://docs.aws.amazon.com/inspector/latest/userguide/inspector_applications.html
184
+ # @option params [required, String] :assessment_target_name
185
+ # The user-defined name that identifies the assessment target that you
186
+ # want to create. The name must be unique within the AWS account.
187
+ # @option params [required, String] :resource_group_arn
188
+ # The ARN that specifies the resource group that is used to create the
189
+ # assessment target.
190
+ # @return [Types::CreateAssessmentTargetResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
191
+ #
192
+ # * {Types::CreateAssessmentTargetResponse#assessment_target_arn #assessmentTargetArn} => String
193
+ #
194
+ # @example Request syntax with placeholder values
195
+ # resp = client.create_assessment_target({
196
+ # assessment_target_name: "AssessmentTargetName", # required
197
+ # resource_group_arn: "Arn", # required
198
+ # })
199
+ #
200
+ # @example Response structure
201
+ # resp.assessment_target_arn #=> String
202
+ # @overload create_assessment_target(params = {})
203
+ # @param [Hash] params ({})
204
+ def create_assessment_target(params = {}, options = {})
205
+ req = build_request(:create_assessment_target, params)
206
+ req.send_request(options)
207
+ end
208
+
209
+ # Creates an assessment template for the assessment target that is
210
+ # specified by the ARN of the assessment target.
211
+ # @option params [required, String] :assessment_target_arn
212
+ # The ARN that specifies the assessment target for which you want to
213
+ # create the assessment template.
214
+ # @option params [required, String] :assessment_template_name
215
+ # The user-defined name that identifies the assessment template that you
216
+ # want to create. You can create several assessment templates for an
217
+ # assessment target. The names of the assessment templates that
218
+ # correspond to a particular assessment target must be unique.
219
+ # @option params [required, Integer] :duration_in_seconds
220
+ # The duration of the assessment run in seconds. The default value is
221
+ # 3600 seconds (one hour).
222
+ # @option params [required, Array<String>] :rules_package_arns
223
+ # The ARNs that specify the rules packages that you want to attach to
224
+ # the assessment template.
225
+ # @option params [Array<Types::Attribute>] :user_attributes_for_findings
226
+ # The user-defined attributes that are assigned to every finding that is
227
+ # generated by the assessment run that uses this assessment template.
228
+ # @return [Types::CreateAssessmentTemplateResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
229
+ #
230
+ # * {Types::CreateAssessmentTemplateResponse#assessment_template_arn #assessmentTemplateArn} => String
231
+ #
232
+ # @example Request syntax with placeholder values
233
+ # resp = client.create_assessment_template({
234
+ # assessment_target_arn: "Arn", # required
235
+ # assessment_template_name: "AssessmentTemplateName", # required
236
+ # duration_in_seconds: 1, # required
237
+ # rules_package_arns: ["Arn"], # required
238
+ # user_attributes_for_findings: [
239
+ # {
240
+ # key: "AttributeKey", # required
241
+ # value: "AttributeValue",
242
+ # },
243
+ # ],
244
+ # })
245
+ #
246
+ # @example Response structure
247
+ # resp.assessment_template_arn #=> String
248
+ # @overload create_assessment_template(params = {})
249
+ # @param [Hash] params ({})
250
+ def create_assessment_template(params = {}, options = {})
251
+ req = build_request(:create_assessment_template, params)
252
+ req.send_request(options)
253
+ end
254
+
255
+ # Creates a resource group using the specified set of tags (key and
256
+ # value pairs) that are used to select the EC2 instances to be included
257
+ # in an Amazon Inspector assessment target. The created resource group
258
+ # is then used to create an Amazon Inspector assessment target. For more
259
+ # information, see CreateAssessmentTarget.
260
+ # @option params [required, Array<Types::ResourceGroupTag>] :resource_group_tags
261
+ # A collection of keys and an array of possible values,
262
+ # '\[\\\{"key":"key1","values":\["Value1","Value2"\]\\},\\\{"key":"Key2","values":\["Value3"\]\\}\]'.
263
+ #
264
+ # For
265
+ # example,'\[\\\{"key":"Name","values":\["TestEC2Instance"\]\\}\]'.
266
+ # @return [Types::CreateResourceGroupResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
267
+ #
268
+ # * {Types::CreateResourceGroupResponse#resource_group_arn #resourceGroupArn} => String
269
+ #
270
+ # @example Request syntax with placeholder values
271
+ # resp = client.create_resource_group({
272
+ # resource_group_tags: [ # required
273
+ # {
274
+ # key: "TagKey", # required
275
+ # value: "TagValue",
276
+ # },
277
+ # ],
278
+ # })
279
+ #
280
+ # @example Response structure
281
+ # resp.resource_group_arn #=> String
282
+ # @overload create_resource_group(params = {})
283
+ # @param [Hash] params ({})
284
+ def create_resource_group(params = {}, options = {})
285
+ req = build_request(:create_resource_group, params)
286
+ req.send_request(options)
287
+ end
288
+
289
+ # Deletes the assessment run that is specified by the ARN of the
290
+ # assessment run.
291
+ # @option params [required, String] :assessment_run_arn
292
+ # The ARN that specifies the assessment run that you want to delete.
293
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
294
+ #
295
+ # @example Request syntax with placeholder values
296
+ # resp = client.delete_assessment_run({
297
+ # assessment_run_arn: "Arn", # required
298
+ # })
299
+ # @overload delete_assessment_run(params = {})
300
+ # @param [Hash] params ({})
301
+ def delete_assessment_run(params = {}, options = {})
302
+ req = build_request(:delete_assessment_run, params)
303
+ req.send_request(options)
304
+ end
305
+
306
+ # Deletes the assessment target that is specified by the ARN of the
307
+ # assessment target.
308
+ # @option params [required, String] :assessment_target_arn
309
+ # The ARN that specifies the assessment target that you want to delete.
310
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
311
+ #
312
+ # @example Request syntax with placeholder values
313
+ # resp = client.delete_assessment_target({
314
+ # assessment_target_arn: "Arn", # required
315
+ # })
316
+ # @overload delete_assessment_target(params = {})
317
+ # @param [Hash] params ({})
318
+ def delete_assessment_target(params = {}, options = {})
319
+ req = build_request(:delete_assessment_target, params)
320
+ req.send_request(options)
321
+ end
322
+
323
+ # Deletes the assessment template that is specified by the ARN of the
324
+ # assessment template.
325
+ # @option params [required, String] :assessment_template_arn
326
+ # The ARN that specifies the assessment template that you want to
327
+ # delete.
328
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
329
+ #
330
+ # @example Request syntax with placeholder values
331
+ # resp = client.delete_assessment_template({
332
+ # assessment_template_arn: "Arn", # required
333
+ # })
334
+ # @overload delete_assessment_template(params = {})
335
+ # @param [Hash] params ({})
336
+ def delete_assessment_template(params = {}, options = {})
337
+ req = build_request(:delete_assessment_template, params)
338
+ req.send_request(options)
339
+ end
340
+
341
+ # Describes the assessment runs that are specified by the ARNs of the
342
+ # assessment runs.
343
+ # @option params [required, Array<String>] :assessment_run_arns
344
+ # The ARN that specifies the assessment run that you want to describe.
345
+ # @return [Types::DescribeAssessmentRunsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
346
+ #
347
+ # * {Types::DescribeAssessmentRunsResponse#assessment_runs #assessmentRuns} => Array&lt;Types::AssessmentRun&gt;
348
+ # * {Types::DescribeAssessmentRunsResponse#failed_items #failedItems} => Hash&lt;String,Types::FailedItemDetails&gt;
349
+ #
350
+ # @example Request syntax with placeholder values
351
+ # resp = client.describe_assessment_runs({
352
+ # assessment_run_arns: ["Arn"], # required
353
+ # })
354
+ #
355
+ # @example Response structure
356
+ # resp.assessment_runs #=> Array
357
+ # resp.assessment_runs[0].arn #=> String
358
+ # resp.assessment_runs[0].name #=> String
359
+ # resp.assessment_runs[0].assessment_template_arn #=> String
360
+ # resp.assessment_runs[0].state #=> String, one of "CREATED", "START_DATA_COLLECTION_PENDING", "START_DATA_COLLECTION_IN_PROGRESS", "COLLECTING_DATA", "STOP_DATA_COLLECTION_PENDING", "DATA_COLLECTED", "EVALUATING_RULES", "FAILED", "COMPLETED", "COMPLETED_WITH_ERRORS"
361
+ # resp.assessment_runs[0].duration_in_seconds #=> Integer
362
+ # resp.assessment_runs[0].rules_package_arns #=> Array
363
+ # resp.assessment_runs[0].rules_package_arns[0] #=> String
364
+ # resp.assessment_runs[0].user_attributes_for_findings #=> Array
365
+ # resp.assessment_runs[0].user_attributes_for_findings[0].key #=> String
366
+ # resp.assessment_runs[0].user_attributes_for_findings[0].value #=> <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
367
+ # resp.assessment_runs[0].created_at #=> Time
368
+ # resp.assessment_runs[0].started_at #=> Time
369
+ # resp.assessment_runs[0].completed_at #=> Time
370
+ # resp.assessment_runs[0].state_changed_at #=> Time
371
+ # resp.assessment_runs[0].data_collected #=> Boolean
372
+ # resp.assessment_runs[0].state_changes #=> Array
373
+ # resp.assessment_runs[0].state_changes[0].state_changed_at #=> Time
374
+ # resp.assessment_runs[0].state_changes[0].state #=> String, one of "CREATED", "START_DATA_COLLECTION_PENDING", "START_DATA_COLLECTION_IN_PROGRESS", "COLLECTING_DATA", "STOP_DATA_COLLECTION_PENDING", "DATA_COLLECTED", "EVALUATING_RULES", "FAILED", "COMPLETED", "COMPLETED_WITH_ERRORS"
375
+ # resp.assessment_runs[0].notifications #=> Array
376
+ # resp.assessment_runs[0].notifications[0].date #=> Time
377
+ # resp.assessment_runs[0].notifications[0].event #=> String, one of "ASSESSMENT_RUN_STARTED", "ASSESSMENT_RUN_COMPLETED", "ASSESSMENT_RUN_STATE_CHANGED", "FINDING_REPORTED", "OTHER"
378
+ # resp.assessment_runs[0].notifications[0].message #=> String
379
+ # resp.assessment_runs[0].notifications[0].error #=> Boolean
380
+ # resp.assessment_runs[0].notifications[0].sns_topic_arn #=> String
381
+ # resp.assessment_runs[0].notifications[0].sns_publish_status_code #=> String, one of "SUCCESS", "TOPIC_DOES_NOT_EXIST", "ACCESS_DENIED", "INTERNAL_ERROR"
382
+ # resp.failed_items #=> Hash
383
+ # resp.failed_items["Arn"].failure_code #=> String, one of "INVALID_ARN", "DUPLICATE_ARN", "ITEM_DOES_NOT_EXIST", "ACCESS_DENIED", "LIMIT_EXCEEDED", "INTERNAL_ERROR"
384
+ # resp.failed_items["Arn"].retryable #=> Boolean
385
+ # @overload describe_assessment_runs(params = {})
386
+ # @param [Hash] params ({})
387
+ def describe_assessment_runs(params = {}, options = {})
388
+ req = build_request(:describe_assessment_runs, params)
389
+ req.send_request(options)
390
+ end
391
+
392
+ # Describes the assessment targets that are specified by the ARNs of the
393
+ # assessment targets.
394
+ # @option params [required, Array<String>] :assessment_target_arns
395
+ # The ARNs that specifies the assessment targets that you want to
396
+ # describe.
397
+ # @return [Types::DescribeAssessmentTargetsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
398
+ #
399
+ # * {Types::DescribeAssessmentTargetsResponse#assessment_targets #assessmentTargets} => Array&lt;Types::AssessmentTarget&gt;
400
+ # * {Types::DescribeAssessmentTargetsResponse#failed_items #failedItems} => Hash&lt;String,Types::FailedItemDetails&gt;
401
+ #
402
+ # @example Request syntax with placeholder values
403
+ # resp = client.describe_assessment_targets({
404
+ # assessment_target_arns: ["Arn"], # required
405
+ # })
406
+ #
407
+ # @example Response structure
408
+ # resp.assessment_targets #=> Array
409
+ # resp.assessment_targets[0].arn #=> String
410
+ # resp.assessment_targets[0].name #=> String
411
+ # resp.assessment_targets[0].resource_group_arn #=> String
412
+ # resp.assessment_targets[0].created_at #=> Time
413
+ # resp.assessment_targets[0].updated_at #=> Time
414
+ # resp.failed_items #=> Hash
415
+ # resp.failed_items["Arn"].failure_code #=> String, one of "INVALID_ARN", "DUPLICATE_ARN", "ITEM_DOES_NOT_EXIST", "ACCESS_DENIED", "LIMIT_EXCEEDED", "INTERNAL_ERROR"
416
+ # resp.failed_items["Arn"].retryable #=> Boolean
417
+ # @overload describe_assessment_targets(params = {})
418
+ # @param [Hash] params ({})
419
+ def describe_assessment_targets(params = {}, options = {})
420
+ req = build_request(:describe_assessment_targets, params)
421
+ req.send_request(options)
422
+ end
423
+
424
+ # Describes the assessment templates that are specified by the ARNs of
425
+ # the assessment templates.
426
+ # @option params [required, Array<String>] :assessment_template_arns
427
+ # The ARN that specifiesthe assessment templates that you want to
428
+ # describe.
429
+ # @return [Types::DescribeAssessmentTemplatesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
430
+ #
431
+ # * {Types::DescribeAssessmentTemplatesResponse#assessment_templates #assessmentTemplates} => Array&lt;Types::AssessmentTemplate&gt;
432
+ # * {Types::DescribeAssessmentTemplatesResponse#failed_items #failedItems} => Hash&lt;String,Types::FailedItemDetails&gt;
433
+ #
434
+ # @example Request syntax with placeholder values
435
+ # resp = client.describe_assessment_templates({
436
+ # assessment_template_arns: ["Arn"], # required
437
+ # })
438
+ #
439
+ # @example Response structure
440
+ # resp.assessment_templates #=> Array
441
+ # resp.assessment_templates[0].arn #=> String
442
+ # resp.assessment_templates[0].name #=> String
443
+ # resp.assessment_templates[0].assessment_target_arn #=> String
444
+ # resp.assessment_templates[0].duration_in_seconds #=> Integer
445
+ # resp.assessment_templates[0].rules_package_arns #=> Array
446
+ # resp.assessment_templates[0].rules_package_arns[0] #=> String
447
+ # resp.assessment_templates[0].user_attributes_for_findings #=> Array
448
+ # resp.assessment_templates[0].user_attributes_for_findings[0].key #=> String
449
+ # resp.assessment_templates[0].user_attributes_for_findings[0].value #=> <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
450
+ # resp.assessment_templates[0].created_at #=> Time
451
+ # resp.failed_items #=> Hash
452
+ # resp.failed_items["Arn"].failure_code #=> String, one of "INVALID_ARN", "DUPLICATE_ARN", "ITEM_DOES_NOT_EXIST", "ACCESS_DENIED", "LIMIT_EXCEEDED", "INTERNAL_ERROR"
453
+ # resp.failed_items["Arn"].retryable #=> Boolean
454
+ # @overload describe_assessment_templates(params = {})
455
+ # @param [Hash] params ({})
456
+ def describe_assessment_templates(params = {}, options = {})
457
+ req = build_request(:describe_assessment_templates, params)
458
+ req.send_request(options)
459
+ end
460
+
461
+ # Describes the IAM role that enables Amazon Inspector to access your
462
+ # AWS account.
463
+ # @return [Types::DescribeCrossAccountAccessRoleResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
464
+ #
465
+ # * {Types::DescribeCrossAccountAccessRoleResponse#role_arn #roleArn} => String
466
+ # * {Types::DescribeCrossAccountAccessRoleResponse#valid #valid} => Boolean
467
+ # * {Types::DescribeCrossAccountAccessRoleResponse#registered_at #registeredAt} => Time
468
+ #
469
+ # @example Response structure
470
+ # resp.role_arn #=> String
471
+ # resp.valid #=> Boolean
472
+ # resp.registered_at #=> Time
473
+ # @overload describe_cross_account_access_role(params = {})
474
+ # @param [Hash] params ({})
475
+ def describe_cross_account_access_role(params = {}, options = {})
476
+ req = build_request(:describe_cross_account_access_role, params)
477
+ req.send_request(options)
478
+ end
479
+
480
+ # Describes the findings that are specified by the ARNs of the findings.
481
+ # @option params [required, Array<String>] :finding_arns
482
+ # The ARN that specifies the finding that you want to describe.
483
+ # @option params [String] :locale
484
+ # The locale into which you want to translate a finding description,
485
+ # recommendation, and the short description that identifies the finding.
486
+ # @return [Types::DescribeFindingsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
487
+ #
488
+ # * {Types::DescribeFindingsResponse#findings #findings} => Array&lt;Types::Finding&gt;
489
+ # * {Types::DescribeFindingsResponse#failed_items #failedItems} => Hash&lt;String,Types::FailedItemDetails&gt;
490
+ #
491
+ # @example Request syntax with placeholder values
492
+ # resp = client.describe_findings({
493
+ # finding_arns: ["Arn"], # required
494
+ # locale: "EN_US", # accepts EN_US
495
+ # })
496
+ #
497
+ # @example Response structure
498
+ # resp.findings #=> Array
499
+ # resp.findings[0].arn #=> String
500
+ # resp.findings[0].schema_version #=> Integer
501
+ # resp.findings[0].service #=> String
502
+ # resp.findings[0].service_attributes.schema_version #=> Integer
503
+ # resp.findings[0].service_attributes.assessment_run_arn #=> String
504
+ # resp.findings[0].service_attributes.rules_package_arn #=> String
505
+ # resp.findings[0].asset_type #=> String, one of "ec2-instance"
506
+ # resp.findings[0].asset_attributes.schema_version #=> Integer
507
+ # resp.findings[0].asset_attributes.agent_id #=> String
508
+ # resp.findings[0].asset_attributes.auto_scaling_group #=> String
509
+ # resp.findings[0].asset_attributes.ami_id #=> String
510
+ # resp.findings[0].asset_attributes.hostname #=> String
511
+ # resp.findings[0].asset_attributes.ipv4_addresses #=> Array
512
+ # resp.findings[0].asset_attributes.ipv4_addresses[0] #=> String
513
+ # resp.findings[0].id #=> String
514
+ # resp.findings[0].title #=> String
515
+ # resp.findings[0].description #=> String
516
+ # resp.findings[0].recommendation #=> String
517
+ # resp.findings[0].severity #=> String, one of "Low", "Medium", "High", "Informational", "Undefined"
518
+ # resp.findings[0].numeric_severity #=> Float
519
+ # resp.findings[0].confidence #=> Integer
520
+ # resp.findings[0].indicator_of_compromise #=> Boolean
521
+ # resp.findings[0].attributes #=> Array
522
+ # resp.findings[0].attributes[0].key #=> String
523
+ # resp.findings[0].attributes[0].value #=> <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
524
+ # resp.findings[0].user_attributes #=> Array
525
+ # resp.findings[0].user_attributes[0].key #=> String
526
+ # resp.findings[0].user_attributes[0].value #=> <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
527
+ # resp.findings[0].created_at #=> Time
528
+ # resp.findings[0].updated_at #=> Time
529
+ # resp.failed_items #=> Hash
530
+ # resp.failed_items["Arn"].failure_code #=> String, one of "INVALID_ARN", "DUPLICATE_ARN", "ITEM_DOES_NOT_EXIST", "ACCESS_DENIED", "LIMIT_EXCEEDED", "INTERNAL_ERROR"
531
+ # resp.failed_items["Arn"].retryable #=> Boolean
532
+ # @overload describe_findings(params = {})
533
+ # @param [Hash] params ({})
534
+ def describe_findings(params = {}, options = {})
535
+ req = build_request(:describe_findings, params)
536
+ req.send_request(options)
537
+ end
538
+
539
+ # Describes the resource groups that are specified by the ARNs of the
540
+ # resource groups.
541
+ # @option params [required, Array<String>] :resource_group_arns
542
+ # The ARN that specifies the resource group that you want to describe.
543
+ # @return [Types::DescribeResourceGroupsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
544
+ #
545
+ # * {Types::DescribeResourceGroupsResponse#resource_groups #resourceGroups} => Array&lt;Types::ResourceGroup&gt;
546
+ # * {Types::DescribeResourceGroupsResponse#failed_items #failedItems} => Hash&lt;String,Types::FailedItemDetails&gt;
547
+ #
548
+ # @example Request syntax with placeholder values
549
+ # resp = client.describe_resource_groups({
550
+ # resource_group_arns: ["Arn"], # required
551
+ # })
552
+ #
553
+ # @example Response structure
554
+ # resp.resource_groups #=> Array
555
+ # resp.resource_groups[0].arn #=> String
556
+ # resp.resource_groups[0].tags #=> Array
557
+ # resp.resource_groups[0].tags[0].key #=> String
558
+ # resp.resource_groups[0].tags[0].value #=> String
559
+ # resp.resource_groups[0].created_at #=> Time
560
+ # resp.failed_items #=> Hash
561
+ # resp.failed_items["Arn"].failure_code #=> String, one of "INVALID_ARN", "DUPLICATE_ARN", "ITEM_DOES_NOT_EXIST", "ACCESS_DENIED", "LIMIT_EXCEEDED", "INTERNAL_ERROR"
562
+ # resp.failed_items["Arn"].retryable #=> Boolean
563
+ # @overload describe_resource_groups(params = {})
564
+ # @param [Hash] params ({})
565
+ def describe_resource_groups(params = {}, options = {})
566
+ req = build_request(:describe_resource_groups, params)
567
+ req.send_request(options)
568
+ end
569
+
570
+ # Describes the rules packages that are specified by the ARNs of the
571
+ # rules packages.
572
+ # @option params [required, Array<String>] :rules_package_arns
573
+ # The ARN that specifies the rules package that you want to describe.
574
+ # @option params [String] :locale
575
+ # The locale that you want to translate a rules package description
576
+ # into.
577
+ # @return [Types::DescribeRulesPackagesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
578
+ #
579
+ # * {Types::DescribeRulesPackagesResponse#rules_packages #rulesPackages} => Array&lt;Types::RulesPackage&gt;
580
+ # * {Types::DescribeRulesPackagesResponse#failed_items #failedItems} => Hash&lt;String,Types::FailedItemDetails&gt;
581
+ #
582
+ # @example Request syntax with placeholder values
583
+ # resp = client.describe_rules_packages({
584
+ # rules_package_arns: ["Arn"], # required
585
+ # locale: "EN_US", # accepts EN_US
586
+ # })
587
+ #
588
+ # @example Response structure
589
+ # resp.rules_packages #=> Array
590
+ # resp.rules_packages[0].arn #=> String
591
+ # resp.rules_packages[0].name #=> String
592
+ # resp.rules_packages[0].version #=> String
593
+ # resp.rules_packages[0].provider #=> String
594
+ # resp.rules_packages[0].description #=> String
595
+ # resp.failed_items #=> Hash
596
+ # resp.failed_items["Arn"].failure_code #=> String, one of "INVALID_ARN", "DUPLICATE_ARN", "ITEM_DOES_NOT_EXIST", "ACCESS_DENIED", "LIMIT_EXCEEDED", "INTERNAL_ERROR"
597
+ # resp.failed_items["Arn"].retryable #=> Boolean
598
+ # @overload describe_rules_packages(params = {})
599
+ # @param [Hash] params ({})
600
+ def describe_rules_packages(params = {}, options = {})
601
+ req = build_request(:describe_rules_packages, params)
602
+ req.send_request(options)
603
+ end
604
+
605
+ # Information about the data that is collected for the specified
606
+ # assessment run.
607
+ # @option params [required, String] :assessment_run_arn
608
+ # The ARN that specifies the assessment run that has the telemetry data
609
+ # that you want to obtain.
610
+ # @return [Types::GetTelemetryMetadataResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
611
+ #
612
+ # * {Types::GetTelemetryMetadataResponse#telemetry_metadata #telemetryMetadata} => Array&lt;Types::TelemetryMetadata&gt;
613
+ #
614
+ # @example Request syntax with placeholder values
615
+ # resp = client.get_telemetry_metadata({
616
+ # assessment_run_arn: "Arn", # required
617
+ # })
618
+ #
619
+ # @example Response structure
620
+ # resp.telemetry_metadata #=> Array
621
+ # resp.telemetry_metadata[0].message_type #=> String
622
+ # resp.telemetry_metadata[0].count #=> Integer
623
+ # resp.telemetry_metadata[0].data_size #=> Integer
624
+ # @overload get_telemetry_metadata(params = {})
625
+ # @param [Hash] params ({})
626
+ def get_telemetry_metadata(params = {}, options = {})
627
+ req = build_request(:get_telemetry_metadata, params)
628
+ req.send_request(options)
629
+ end
630
+
631
+ # Lists the agents of the assessment runs that are specified by the ARNs
632
+ # of the assessment runs.
633
+ # @option params [required, String] :assessment_run_arn
634
+ # The ARN that specifies the assessment run whose agents you want to
635
+ # list.
636
+ # @option params [Types::AgentFilter] :filter
637
+ # You can use this parameter to specify a subset of data to be included
638
+ # in the action's response.
639
+ #
640
+ # For a record to match a filter, all specified filter attributes must
641
+ # match. When multiple values are specified for a filter attribute, any
642
+ # of the values can match.
643
+ # @option params [String] :next_token
644
+ # You can use this parameter when paginating results. Set the value of
645
+ # this parameter to null on your first call to the
646
+ # **ListAssessmentRunAgents** action. Subsequent calls to the action
647
+ # fill **nextToken** in the request with the value of **NextToken** from
648
+ # the previous response to continue listing data.
649
+ # @option params [Integer] :max_results
650
+ # You can use this parameter to indicate the maximum number of items
651
+ # that you want in the response. The default value is 10. The maximum
652
+ # value is 500.
653
+ # @return [Types::ListAssessmentRunAgentsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
654
+ #
655
+ # * {Types::ListAssessmentRunAgentsResponse#assessment_run_agents #assessmentRunAgents} => Array&lt;Types::AssessmentRunAgent&gt;
656
+ # * {Types::ListAssessmentRunAgentsResponse#next_token #nextToken} => String
657
+ #
658
+ # @example Request syntax with placeholder values
659
+ # resp = client.list_assessment_run_agents({
660
+ # assessment_run_arn: "Arn", # required
661
+ # filter: {
662
+ # agent_healths: ["HEALTHY"], # required, accepts HEALTHY, UNHEALTHY
663
+ # agent_health_codes: ["IDLE"], # required, accepts IDLE, RUNNING, SHUTDOWN, UNHEALTHY, THROTTLED, UNKNOWN
664
+ # },
665
+ # next_token: "PaginationToken",
666
+ # max_results: 1,
667
+ # })
668
+ #
669
+ # @example Response structure
670
+ # resp.assessment_run_agents #=> Array
671
+ # resp.assessment_run_agents[0].agent_id #=> String
672
+ # resp.assessment_run_agents[0].assessment_run_arn #=> String
673
+ # resp.assessment_run_agents[0].agent_health #=> String, one of "HEALTHY", "UNHEALTHY"
674
+ # resp.assessment_run_agents[0].agent_health_code #=> String, one of "IDLE", "RUNNING", "SHUTDOWN", "UNHEALTHY", "THROTTLED", "UNKNOWN"
675
+ # resp.assessment_run_agents[0].agent_health_details #=> String
676
+ # resp.assessment_run_agents[0].auto_scaling_group #=> String
677
+ # resp.assessment_run_agents[0].telemetry_metadata #=> Array
678
+ # resp.assessment_run_agents[0].telemetry_metadata[0].message_type #=> String
679
+ # resp.assessment_run_agents[0].telemetry_metadata[0].count #=> Integer
680
+ # resp.assessment_run_agents[0].telemetry_metadata[0].data_size #=> Integer
681
+ # resp.next_token #=> String
682
+ # @overload list_assessment_run_agents(params = {})
683
+ # @param [Hash] params ({})
684
+ def list_assessment_run_agents(params = {}, options = {})
685
+ req = build_request(:list_assessment_run_agents, params)
686
+ req.send_request(options)
687
+ end
688
+
689
+ # Lists the assessment runs that correspond to the assessment templates
690
+ # that are specified by the ARNs of the assessment templates.
691
+ # @option params [Array<String>] :assessment_template_arns
692
+ # The ARNs that specify the assessment templates whose assessment runs
693
+ # you want to list.
694
+ # @option params [Types::AssessmentRunFilter] :filter
695
+ # You can use this parameter to specify a subset of data to be included
696
+ # in the action's response.
697
+ #
698
+ # For a record to match a filter, all specified filter attributes must
699
+ # match. When multiple values are specified for a filter attribute, any
700
+ # of the values can match.
701
+ # @option params [String] :next_token
702
+ # You can use this parameter when paginating results. Set the value of
703
+ # this parameter to null on your first call to the
704
+ # **ListAssessmentRuns** action. Subsequent calls to the action fill
705
+ # **nextToken** in the request with the value of **NextToken** from the
706
+ # previous response to continue listing data.
707
+ # @option params [Integer] :max_results
708
+ # You can use this parameter to indicate the maximum number of items
709
+ # that you want in the response. The default value is 10. The maximum
710
+ # value is 500.
711
+ # @return [Types::ListAssessmentRunsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
712
+ #
713
+ # * {Types::ListAssessmentRunsResponse#assessment_run_arns #assessmentRunArns} => Array&lt;String&gt;
714
+ # * {Types::ListAssessmentRunsResponse#next_token #nextToken} => String
715
+ #
716
+ # @example Request syntax with placeholder values
717
+ # resp = client.list_assessment_runs({
718
+ # assessment_template_arns: ["Arn"],
719
+ # filter: {
720
+ # name_pattern: "NamePattern",
721
+ # states: ["CREATED"], # accepts CREATED, START_DATA_COLLECTION_PENDING, START_DATA_COLLECTION_IN_PROGRESS, COLLECTING_DATA, STOP_DATA_COLLECTION_PENDING, DATA_COLLECTED, EVALUATING_RULES, FAILED, COMPLETED, COMPLETED_WITH_ERRORS
722
+ # duration_range: {
723
+ # min_seconds: 1,
724
+ # max_seconds: 1,
725
+ # },
726
+ # rules_package_arns: ["Arn"],
727
+ # start_time_range: {
728
+ # begin_date: Time.now,
729
+ # end_date: Time.now,
730
+ # },
731
+ # completion_time_range: {
732
+ # begin_date: Time.now,
733
+ # end_date: Time.now,
734
+ # },
735
+ # state_change_time_range: {
736
+ # begin_date: Time.now,
737
+ # end_date: Time.now,
738
+ # },
739
+ # },
740
+ # next_token: "PaginationToken",
741
+ # max_results: 1,
742
+ # })
743
+ #
744
+ # @example Response structure
745
+ # resp.assessment_run_arns #=> Array
746
+ # resp.assessment_run_arns[0] #=> String
747
+ # resp.next_token #=> String
748
+ # @overload list_assessment_runs(params = {})
749
+ # @param [Hash] params ({})
750
+ def list_assessment_runs(params = {}, options = {})
751
+ req = build_request(:list_assessment_runs, params)
752
+ req.send_request(options)
753
+ end
754
+
755
+ # Lists the ARNs of the assessment targets within this AWS account. For
756
+ # more information about assessment targets, see [Amazon Inspector
757
+ # Assessment Targets][1].
758
+ #
759
+ #
760
+ #
761
+ # [1]: http://docs.aws.amazon.com/inspector/latest/userguide/inspector_applications.html
762
+ # @option params [Types::AssessmentTargetFilter] :filter
763
+ # You can use this parameter to specify a subset of data to be included
764
+ # in the action's response.
765
+ #
766
+ # For a record to match a filter, all specified filter attributes must
767
+ # match. When multiple values are specified for a filter attribute, any
768
+ # of the values can match.
769
+ # @option params [String] :next_token
770
+ # You can use this parameter when paginating results. Set the value of
771
+ # this parameter to null on your first call to the
772
+ # **ListAssessmentTargets** action. Subsequent calls to the action fill
773
+ # **nextToken** in the request with the value of **NextToken** from the
774
+ # previous response to continue listing data.
775
+ # @option params [Integer] :max_results
776
+ # You can use this parameter to indicate the maximum number of items you
777
+ # want in the response. The default value is 10. The maximum value is
778
+ # 500.
779
+ # @return [Types::ListAssessmentTargetsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
780
+ #
781
+ # * {Types::ListAssessmentTargetsResponse#assessment_target_arns #assessmentTargetArns} => Array&lt;String&gt;
782
+ # * {Types::ListAssessmentTargetsResponse#next_token #nextToken} => String
783
+ #
784
+ # @example Request syntax with placeholder values
785
+ # resp = client.list_assessment_targets({
786
+ # filter: {
787
+ # assessment_target_name_pattern: "NamePattern",
788
+ # },
789
+ # next_token: "PaginationToken",
790
+ # max_results: 1,
791
+ # })
792
+ #
793
+ # @example Response structure
794
+ # resp.assessment_target_arns #=> Array
795
+ # resp.assessment_target_arns[0] #=> String
796
+ # resp.next_token #=> String
797
+ # @overload list_assessment_targets(params = {})
798
+ # @param [Hash] params ({})
799
+ def list_assessment_targets(params = {}, options = {})
800
+ req = build_request(:list_assessment_targets, params)
801
+ req.send_request(options)
802
+ end
803
+
804
+ # Lists the assessment templates that correspond to the assessment
805
+ # targets that are specified by the ARNs of the assessment targets.
806
+ # @option params [Array<String>] :assessment_target_arns
807
+ # A list of ARNs that specifies the assessment targets whose assessment
808
+ # templates you want to list.
809
+ # @option params [Types::AssessmentTemplateFilter] :filter
810
+ # You can use this parameter to specify a subset of data to be included
811
+ # in the action's response.
812
+ #
813
+ # For a record to match a filter, all specified filter attributes must
814
+ # match. When multiple values are specified for a filter attribute, any
815
+ # of the values can match.
816
+ # @option params [String] :next_token
817
+ # You can use this parameter when paginating results. Set the value of
818
+ # this parameter to null on your first call to the
819
+ # **ListAssessmentTemplates** action. Subsequent calls to the action
820
+ # fill **nextToken** in the request with the value of **NextToken** from
821
+ # the previous response to continue listing data.
822
+ # @option params [Integer] :max_results
823
+ # You can use this parameter to indicate the maximum number of items you
824
+ # want in the response. The default value is 10. The maximum value is
825
+ # 500.
826
+ # @return [Types::ListAssessmentTemplatesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
827
+ #
828
+ # * {Types::ListAssessmentTemplatesResponse#assessment_template_arns #assessmentTemplateArns} => Array&lt;String&gt;
829
+ # * {Types::ListAssessmentTemplatesResponse#next_token #nextToken} => String
830
+ #
831
+ # @example Request syntax with placeholder values
832
+ # resp = client.list_assessment_templates({
833
+ # assessment_target_arns: ["Arn"],
834
+ # filter: {
835
+ # name_pattern: "NamePattern",
836
+ # duration_range: {
837
+ # min_seconds: 1,
838
+ # max_seconds: 1,
839
+ # },
840
+ # rules_package_arns: ["Arn"],
841
+ # },
842
+ # next_token: "PaginationToken",
843
+ # max_results: 1,
844
+ # })
845
+ #
846
+ # @example Response structure
847
+ # resp.assessment_template_arns #=> Array
848
+ # resp.assessment_template_arns[0] #=> String
849
+ # resp.next_token #=> String
850
+ # @overload list_assessment_templates(params = {})
851
+ # @param [Hash] params ({})
852
+ def list_assessment_templates(params = {}, options = {})
853
+ req = build_request(:list_assessment_templates, params)
854
+ req.send_request(options)
855
+ end
856
+
857
+ # Lists all the event subscriptions for the assessment template that is
858
+ # specified by the ARN of the assessment template. For more information,
859
+ # see SubscribeToEvent and UnsubscribeFromEvent.
860
+ # @option params [String] :resource_arn
861
+ # The ARN of the assessment template for which you want to list the
862
+ # existing event subscriptions.
863
+ # @option params [String] :next_token
864
+ # You can use this parameter when paginating results. Set the value of
865
+ # this parameter to null on your first call to the
866
+ # **ListEventSubscriptions** action. Subsequent calls to the action fill
867
+ # **nextToken** in the request with the value of **NextToken** from the
868
+ # previous response to continue listing data.
869
+ # @option params [Integer] :max_results
870
+ # You can use this parameter to indicate the maximum number of items you
871
+ # want in the response. The default value is 10. The maximum value is
872
+ # 500.
873
+ # @return [Types::ListEventSubscriptionsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
874
+ #
875
+ # * {Types::ListEventSubscriptionsResponse#subscriptions #subscriptions} => Array&lt;Types::Subscription&gt;
876
+ # * {Types::ListEventSubscriptionsResponse#next_token #nextToken} => String
877
+ #
878
+ # @example Request syntax with placeholder values
879
+ # resp = client.list_event_subscriptions({
880
+ # resource_arn: "Arn",
881
+ # next_token: "PaginationToken",
882
+ # max_results: 1,
883
+ # })
884
+ #
885
+ # @example Response structure
886
+ # resp.subscriptions #=> Array
887
+ # resp.subscriptions[0].resource_arn #=> String
888
+ # resp.subscriptions[0].topic_arn #=> String
889
+ # resp.subscriptions[0].event_subscriptions #=> Array
890
+ # resp.subscriptions[0].event_subscriptions[0].event #=> String, one of "ASSESSMENT_RUN_STARTED", "ASSESSMENT_RUN_COMPLETED", "ASSESSMENT_RUN_STATE_CHANGED", "FINDING_REPORTED", "OTHER"
891
+ # resp.subscriptions[0].event_subscriptions[0].subscribed_at #=> Time
892
+ # resp.next_token #=> String
893
+ # @overload list_event_subscriptions(params = {})
894
+ # @param [Hash] params ({})
895
+ def list_event_subscriptions(params = {}, options = {})
896
+ req = build_request(:list_event_subscriptions, params)
897
+ req.send_request(options)
898
+ end
899
+
900
+ # Lists findings that are generated by the assessment runs that are
901
+ # specified by the ARNs of the assessment runs.
902
+ # @option params [Array<String>] :assessment_run_arns
903
+ # The ARNs of the assessment runs that generate the findings that you
904
+ # want to list.
905
+ # @option params [Types::FindingFilter] :filter
906
+ # You can use this parameter to specify a subset of data to be included
907
+ # in the action's response.
908
+ #
909
+ # For a record to match a filter, all specified filter attributes must
910
+ # match. When multiple values are specified for a filter attribute, any
911
+ # of the values can match.
912
+ # @option params [String] :next_token
913
+ # You can use this parameter when paginating results. Set the value of
914
+ # this parameter to null on your first call to the **ListFindings**
915
+ # action. Subsequent calls to the action fill **nextToken** in the
916
+ # request with the value of **NextToken** from the previous response to
917
+ # continue listing data.
918
+ # @option params [Integer] :max_results
919
+ # You can use this parameter to indicate the maximum number of items you
920
+ # want in the response. The default value is 10. The maximum value is
921
+ # 500.
922
+ # @return [Types::ListFindingsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
923
+ #
924
+ # * {Types::ListFindingsResponse#finding_arns #findingArns} => Array&lt;String&gt;
925
+ # * {Types::ListFindingsResponse#next_token #nextToken} => String
926
+ #
927
+ # @example Request syntax with placeholder values
928
+ # resp = client.list_findings({
929
+ # assessment_run_arns: ["Arn"],
930
+ # filter: {
931
+ # agent_ids: ["AgentId"],
932
+ # auto_scaling_groups: ["AutoScalingGroup"],
933
+ # rule_names: ["RuleName"],
934
+ # severities: ["Low"], # accepts Low, Medium, High, Informational, Undefined
935
+ # rules_package_arns: ["Arn"],
936
+ # attributes: [
937
+ # {
938
+ # key: "AttributeKey", # required
939
+ # value: "AttributeValue",
940
+ # },
941
+ # ],
942
+ # user_attributes: [
943
+ # {
944
+ # key: "AttributeKey", # required
945
+ # value: "AttributeValue",
946
+ # },
947
+ # ],
948
+ # creation_time_range: {
949
+ # begin_date: Time.now,
950
+ # end_date: Time.now,
951
+ # },
952
+ # },
953
+ # next_token: "PaginationToken",
954
+ # max_results: 1,
955
+ # })
956
+ #
957
+ # @example Response structure
958
+ # resp.finding_arns #=> Array
959
+ # resp.finding_arns[0] #=> String
960
+ # resp.next_token #=> String
961
+ # @overload list_findings(params = {})
962
+ # @param [Hash] params ({})
963
+ def list_findings(params = {}, options = {})
964
+ req = build_request(:list_findings, params)
965
+ req.send_request(options)
966
+ end
967
+
968
+ # Lists all available Amazon Inspector rules packages.
969
+ # @option params [String] :next_token
970
+ # You can use this parameter when paginating results. Set the value of
971
+ # this parameter to null on your first call to the **ListRulesPackages**
972
+ # action. Subsequent calls to the action fill **nextToken** in the
973
+ # request with the value of **NextToken** from the previous response to
974
+ # continue listing data.
975
+ # @option params [Integer] :max_results
976
+ # You can use this parameter to indicate the maximum number of items you
977
+ # want in the response. The default value is 10. The maximum value is
978
+ # 500.
979
+ # @return [Types::ListRulesPackagesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
980
+ #
981
+ # * {Types::ListRulesPackagesResponse#rules_package_arns #rulesPackageArns} => Array&lt;String&gt;
982
+ # * {Types::ListRulesPackagesResponse#next_token #nextToken} => String
983
+ #
984
+ # @example Request syntax with placeholder values
985
+ # resp = client.list_rules_packages({
986
+ # next_token: "PaginationToken",
987
+ # max_results: 1,
988
+ # })
989
+ #
990
+ # @example Response structure
991
+ # resp.rules_package_arns #=> Array
992
+ # resp.rules_package_arns[0] #=> String
993
+ # resp.next_token #=> String
994
+ # @overload list_rules_packages(params = {})
995
+ # @param [Hash] params ({})
996
+ def list_rules_packages(params = {}, options = {})
997
+ req = build_request(:list_rules_packages, params)
998
+ req.send_request(options)
999
+ end
1000
+
1001
+ # Lists all tags associated with an assessment template.
1002
+ # @option params [required, String] :resource_arn
1003
+ # The ARN that specifies the assessment template whose tags you want to
1004
+ # list.
1005
+ # @return [Types::ListTagsForResourceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1006
+ #
1007
+ # * {Types::ListTagsForResourceResponse#tags #tags} => Array&lt;Types::Tag&gt;
1008
+ #
1009
+ # @example Request syntax with placeholder values
1010
+ # resp = client.list_tags_for_resource({
1011
+ # resource_arn: "Arn", # required
1012
+ # })
1013
+ #
1014
+ # @example Response structure
1015
+ # resp.tags #=> Array
1016
+ # resp.tags[0].key #=> String
1017
+ # resp.tags[0].value #=> String
1018
+ # @overload list_tags_for_resource(params = {})
1019
+ # @param [Hash] params ({})
1020
+ def list_tags_for_resource(params = {}, options = {})
1021
+ req = build_request(:list_tags_for_resource, params)
1022
+ req.send_request(options)
1023
+ end
1024
+
1025
+ # Previews the agents installed on the EC2 instances that are part of
1026
+ # the specified assessment target.
1027
+ # @option params [required, String] :preview_agents_arn
1028
+ # The ARN of the assessment target whose agents you want to preview.
1029
+ # @option params [String] :next_token
1030
+ # You can use this parameter when paginating results. Set the value of
1031
+ # this parameter to null on your first call to the **PreviewAgents**
1032
+ # action. Subsequent calls to the action fill **nextToken** in the
1033
+ # request with the value of **NextToken** from the previous response to
1034
+ # continue listing data.
1035
+ # @option params [Integer] :max_results
1036
+ # You can use this parameter to indicate the maximum number of items you
1037
+ # want in the response. The default value is 10. The maximum value is
1038
+ # 500.
1039
+ # @return [Types::PreviewAgentsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1040
+ #
1041
+ # * {Types::PreviewAgentsResponse#agent_previews #agentPreviews} => Array&lt;Types::AgentPreview&gt;
1042
+ # * {Types::PreviewAgentsResponse#next_token #nextToken} => String
1043
+ #
1044
+ # @example Request syntax with placeholder values
1045
+ # resp = client.preview_agents({
1046
+ # preview_agents_arn: "Arn", # required
1047
+ # next_token: "PaginationToken",
1048
+ # max_results: 1,
1049
+ # })
1050
+ #
1051
+ # @example Response structure
1052
+ # resp.agent_previews #=> Array
1053
+ # resp.agent_previews[0].agent_id #=> String
1054
+ # resp.agent_previews[0].auto_scaling_group #=> String
1055
+ # resp.next_token #=> String
1056
+ # @overload preview_agents(params = {})
1057
+ # @param [Hash] params ({})
1058
+ def preview_agents(params = {}, options = {})
1059
+ req = build_request(:preview_agents, params)
1060
+ req.send_request(options)
1061
+ end
1062
+
1063
+ # Registers the IAM role that Amazon Inspector uses to list your EC2
1064
+ # instances at the start of the assessment run or when you call the
1065
+ # PreviewAgents action.
1066
+ # @option params [required, String] :role_arn
1067
+ # The ARN of the IAM role that Amazon Inspector uses to list your EC2
1068
+ # instances during the assessment run or when you call the PreviewAgents
1069
+ # action.
1070
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1071
+ #
1072
+ # @example Request syntax with placeholder values
1073
+ # resp = client.register_cross_account_access_role({
1074
+ # role_arn: "Arn", # required
1075
+ # })
1076
+ # @overload register_cross_account_access_role(params = {})
1077
+ # @param [Hash] params ({})
1078
+ def register_cross_account_access_role(params = {}, options = {})
1079
+ req = build_request(:register_cross_account_access_role, params)
1080
+ req.send_request(options)
1081
+ end
1082
+
1083
+ # Removes entire attributes (key and value pairs) from the findings that
1084
+ # are specified by the ARNs of the findings where an attribute with the
1085
+ # specified key exists.
1086
+ # @option params [required, Array<String>] :finding_arns
1087
+ # The ARNs that specify the findings that you want to remove attributes
1088
+ # from.
1089
+ # @option params [required, Array<String>] :attribute_keys
1090
+ # The array of attribute keys that you want to remove from specified
1091
+ # findings.
1092
+ # @return [Types::RemoveAttributesFromFindingsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1093
+ #
1094
+ # * {Types::RemoveAttributesFromFindingsResponse#failed_items #failedItems} => Hash&lt;String,Types::FailedItemDetails&gt;
1095
+ #
1096
+ # @example Request syntax with placeholder values
1097
+ # resp = client.remove_attributes_from_findings({
1098
+ # finding_arns: ["Arn"], # required
1099
+ # attribute_keys: ["AttributeKey"], # required
1100
+ # })
1101
+ #
1102
+ # @example Response structure
1103
+ # resp.failed_items #=> Hash
1104
+ # resp.failed_items["Arn"].failure_code #=> String, one of "INVALID_ARN", "DUPLICATE_ARN", "ITEM_DOES_NOT_EXIST", "ACCESS_DENIED", "LIMIT_EXCEEDED", "INTERNAL_ERROR"
1105
+ # resp.failed_items["Arn"].retryable #=> Boolean
1106
+ # @overload remove_attributes_from_findings(params = {})
1107
+ # @param [Hash] params ({})
1108
+ def remove_attributes_from_findings(params = {}, options = {})
1109
+ req = build_request(:remove_attributes_from_findings, params)
1110
+ req.send_request(options)
1111
+ end
1112
+
1113
+ # Sets tags (key and value pairs) to the assessment template that is
1114
+ # specified by the ARN of the assessment template.
1115
+ # @option params [required, String] :resource_arn
1116
+ # The ARN of the assessment template that you want to set tags to.
1117
+ # @option params [Array<Types::Tag>] :tags
1118
+ # A collection of key and value pairs that you want to set to the
1119
+ # assessment template.
1120
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1121
+ #
1122
+ # @example Request syntax with placeholder values
1123
+ # resp = client.set_tags_for_resource({
1124
+ # resource_arn: "Arn", # required
1125
+ # tags: [
1126
+ # {
1127
+ # key: "TagKey", # required
1128
+ # value: "TagValue",
1129
+ # },
1130
+ # ],
1131
+ # })
1132
+ # @overload set_tags_for_resource(params = {})
1133
+ # @param [Hash] params ({})
1134
+ def set_tags_for_resource(params = {}, options = {})
1135
+ req = build_request(:set_tags_for_resource, params)
1136
+ req.send_request(options)
1137
+ end
1138
+
1139
+ # Starts the assessment run specified by the ARN of the assessment
1140
+ # template. For this API to function properly, you must not exceed the
1141
+ # limit of running up to 500 concurrent agents per AWS account.
1142
+ # @option params [required, String] :assessment_template_arn
1143
+ # The ARN of the assessment template of the assessment run that you want
1144
+ # to start.
1145
+ # @option params [String] :assessment_run_name
1146
+ # You can specify the name for the assessment run, or you can use the
1147
+ # auto-generated name that is based on the assessment template name. The
1148
+ # name must be unique for the assessment template.
1149
+ # @return [Types::StartAssessmentRunResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1150
+ #
1151
+ # * {Types::StartAssessmentRunResponse#assessment_run_arn #assessmentRunArn} => String
1152
+ #
1153
+ # @example Request syntax with placeholder values
1154
+ # resp = client.start_assessment_run({
1155
+ # assessment_template_arn: "Arn", # required
1156
+ # assessment_run_name: "AssessmentRunName",
1157
+ # })
1158
+ #
1159
+ # @example Response structure
1160
+ # resp.assessment_run_arn #=> String
1161
+ # @overload start_assessment_run(params = {})
1162
+ # @param [Hash] params ({})
1163
+ def start_assessment_run(params = {}, options = {})
1164
+ req = build_request(:start_assessment_run, params)
1165
+ req.send_request(options)
1166
+ end
1167
+
1168
+ # Stops the assessment run that is specified by the ARN of the
1169
+ # assessment run.
1170
+ # @option params [required, String] :assessment_run_arn
1171
+ # The ARN of the assessment run that you want to stop.
1172
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1173
+ #
1174
+ # @example Request syntax with placeholder values
1175
+ # resp = client.stop_assessment_run({
1176
+ # assessment_run_arn: "Arn", # required
1177
+ # })
1178
+ # @overload stop_assessment_run(params = {})
1179
+ # @param [Hash] params ({})
1180
+ def stop_assessment_run(params = {}, options = {})
1181
+ req = build_request(:stop_assessment_run, params)
1182
+ req.send_request(options)
1183
+ end
1184
+
1185
+ # Enables the process of sending Amazon Simple Notification Service
1186
+ # (SNS) notifications about a specified event to a specified SNS topic.
1187
+ # @option params [required, String] :resource_arn
1188
+ # The ARN of the assessment template that is used during the event for
1189
+ # which you want to receive SNS notifications.
1190
+ # @option params [required, String] :event
1191
+ # The event for which you want to receive SNS notifications.
1192
+ # @option params [required, String] :topic_arn
1193
+ # The ARN of the SNS topic to which the SNS notifications are sent.
1194
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1195
+ #
1196
+ # @example Request syntax with placeholder values
1197
+ # resp = client.subscribe_to_event({
1198
+ # resource_arn: "Arn", # required
1199
+ # event: "ASSESSMENT_RUN_STARTED", # required, accepts ASSESSMENT_RUN_STARTED, ASSESSMENT_RUN_COMPLETED, ASSESSMENT_RUN_STATE_CHANGED, FINDING_REPORTED, OTHER
1200
+ # topic_arn: "Arn", # required
1201
+ # })
1202
+ # @overload subscribe_to_event(params = {})
1203
+ # @param [Hash] params ({})
1204
+ def subscribe_to_event(params = {}, options = {})
1205
+ req = build_request(:subscribe_to_event, params)
1206
+ req.send_request(options)
1207
+ end
1208
+
1209
+ # Disables the process of sending Amazon Simple Notification Service
1210
+ # (SNS) notifications about a specified event to a specified SNS topic.
1211
+ # @option params [required, String] :resource_arn
1212
+ # The ARN of the assessment template that is used during the event for
1213
+ # which you want to stop receiving SNS notifications.
1214
+ # @option params [required, String] :event
1215
+ # The event for which you want to stop receiving SNS notifications.
1216
+ # @option params [required, String] :topic_arn
1217
+ # The ARN of the SNS topic to which SNS notifications are sent.
1218
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1219
+ #
1220
+ # @example Request syntax with placeholder values
1221
+ # resp = client.unsubscribe_from_event({
1222
+ # resource_arn: "Arn", # required
1223
+ # event: "ASSESSMENT_RUN_STARTED", # required, accepts ASSESSMENT_RUN_STARTED, ASSESSMENT_RUN_COMPLETED, ASSESSMENT_RUN_STATE_CHANGED, FINDING_REPORTED, OTHER
1224
+ # topic_arn: "Arn", # required
1225
+ # })
1226
+ # @overload unsubscribe_from_event(params = {})
1227
+ # @param [Hash] params ({})
1228
+ def unsubscribe_from_event(params = {}, options = {})
1229
+ req = build_request(:unsubscribe_from_event, params)
1230
+ req.send_request(options)
1231
+ end
1232
+
1233
+ # Updates the assessment target that is specified by the ARN of the
1234
+ # assessment target.
1235
+ # @option params [required, String] :assessment_target_arn
1236
+ # The ARN of the assessment target that you want to update.
1237
+ # @option params [required, String] :assessment_target_name
1238
+ # The name of the assessment target that you want to update.
1239
+ # @option params [required, String] :resource_group_arn
1240
+ # The ARN of the resource group that is used to specify the new resource
1241
+ # group to associate with the assessment target.
1242
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1243
+ #
1244
+ # @example Request syntax with placeholder values
1245
+ # resp = client.update_assessment_target({
1246
+ # assessment_target_arn: "Arn", # required
1247
+ # assessment_target_name: "AssessmentTargetName", # required
1248
+ # resource_group_arn: "Arn", # required
1249
+ # })
1250
+ # @overload update_assessment_target(params = {})
1251
+ # @param [Hash] params ({})
1252
+ def update_assessment_target(params = {}, options = {})
1253
+ req = build_request(:update_assessment_target, params)
1254
+ req.send_request(options)
1255
+ end
1256
+
1257
+ # @!endgroup
1258
+
1259
+ # @param params ({})
1260
+ # @api private
1261
+ def build_request(operation_name, params = {})
1262
+ handlers = @handlers.for(operation_name)
1263
+ context = Seahorse::Client::RequestContext.new(
1264
+ operation_name: operation_name,
1265
+ operation: config.api.operation(operation_name),
1266
+ client: self,
1267
+ params: params,
1268
+ config: config)
1269
+ context[:gem_name] = 'aws-sdk-inspector'
1270
+ context[:gem_version] = '1.0.0.rc1'
1271
+ Seahorse::Client::Request.new(handlers, context)
1272
+ end
1273
+
1274
+ # @api private
1275
+ # @deprecated
1276
+ def waiter_names
1277
+ []
1278
+ end
1279
+
1280
+ class << self
1281
+
1282
+ # @api private
1283
+ attr_reader :identifier
1284
+
1285
+ # @api private
1286
+ def errors_module
1287
+ Errors
1288
+ end
1289
+
1290
+ end
1291
+ end
1292
+ end
1293
+ end