aws-sdk-inspector 1.0.0.rc1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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