/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include namespace Aws { namespace Inspector { /** * Amazon Inspector

Amazon Inspector enables you to analyze * the behavior of your AWS resources and to identify potential security issues. * For more information, see * Amazon Inspector User Guide.

*/ class AWS_INSPECTOR_API InspectorClient : public Aws::Client::AWSJsonClient, public Aws::Client::ClientWithAsyncTemplateMethods { public: typedef Aws::Client::AWSJsonClient BASECLASS; static const char* SERVICE_NAME; static const char* ALLOCATION_TAG; typedef InspectorClientConfiguration ClientConfigurationType; typedef InspectorEndpointProvider EndpointProviderType; /** * Initializes client to use DefaultCredentialProviderChain, with default http client factory, and optional client config. If client config * is not specified, it will be initialized to default values. */ InspectorClient(const Aws::Inspector::InspectorClientConfiguration& clientConfiguration = Aws::Inspector::InspectorClientConfiguration(), std::shared_ptr endpointProvider = Aws::MakeShared(ALLOCATION_TAG)); /** * Initializes client to use SimpleAWSCredentialsProvider, with default http client factory, and optional client config. If client config * is not specified, it will be initialized to default values. */ InspectorClient(const Aws::Auth::AWSCredentials& credentials, std::shared_ptr endpointProvider = Aws::MakeShared(ALLOCATION_TAG), const Aws::Inspector::InspectorClientConfiguration& clientConfiguration = Aws::Inspector::InspectorClientConfiguration()); /** * Initializes client to use specified credentials provider with specified client config. If http client factory is not supplied, * the default http client factory will be used */ InspectorClient(const std::shared_ptr& credentialsProvider, std::shared_ptr endpointProvider = Aws::MakeShared(ALLOCATION_TAG), const Aws::Inspector::InspectorClientConfiguration& clientConfiguration = Aws::Inspector::InspectorClientConfiguration()); /* Legacy constructors due deprecation */ /** * Initializes client to use DefaultCredentialProviderChain, with default http client factory, and optional client config. If client config * is not specified, it will be initialized to default values. */ InspectorClient(const Aws::Client::ClientConfiguration& clientConfiguration); /** * Initializes client to use SimpleAWSCredentialsProvider, with default http client factory, and optional client config. If client config * is not specified, it will be initialized to default values. */ InspectorClient(const Aws::Auth::AWSCredentials& credentials, const Aws::Client::ClientConfiguration& clientConfiguration); /** * Initializes client to use specified credentials provider with specified client config. If http client factory is not supplied, * the default http client factory will be used */ InspectorClient(const std::shared_ptr& credentialsProvider, const Aws::Client::ClientConfiguration& clientConfiguration); /* End of legacy constructors due deprecation */ virtual ~InspectorClient(); /** *

Assigns attributes (key and value pairs) to the findings that are specified * by the ARNs of the findings.

See Also:

AWS * API Reference

*/ virtual Model::AddAttributesToFindingsOutcome AddAttributesToFindings(const Model::AddAttributesToFindingsRequest& request) const; /** * A Callable wrapper for AddAttributesToFindings that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::AddAttributesToFindingsOutcomeCallable AddAttributesToFindingsCallable(const AddAttributesToFindingsRequestT& request) const { return SubmitCallable(&InspectorClient::AddAttributesToFindings, request); } /** * An Async wrapper for AddAttributesToFindings that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void AddAttributesToFindingsAsync(const AddAttributesToFindingsRequestT& request, const AddAttributesToFindingsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&InspectorClient::AddAttributesToFindings, request, handler, context); } /** *

Creates a new assessment target using the ARN of the resource group that is * generated by CreateResourceGroup. If resourceGroupArn is not specified, * all EC2 instances in the current AWS account and region are included in the * assessment target. If the service-linked * role isn’t already registered, this action also creates and registers a * service-linked role to grant Amazon Inspector access to AWS Services needed to * perform security assessments. You can create up to 50 assessment targets per AWS * account. You can run up to 500 concurrent agents per AWS account. For more * information, see * Amazon Inspector Assessment Targets.

See Also:

AWS * API Reference

*/ virtual Model::CreateAssessmentTargetOutcome CreateAssessmentTarget(const Model::CreateAssessmentTargetRequest& request) const; /** * A Callable wrapper for CreateAssessmentTarget that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::CreateAssessmentTargetOutcomeCallable CreateAssessmentTargetCallable(const CreateAssessmentTargetRequestT& request) const { return SubmitCallable(&InspectorClient::CreateAssessmentTarget, request); } /** * An Async wrapper for CreateAssessmentTarget that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void CreateAssessmentTargetAsync(const CreateAssessmentTargetRequestT& request, const CreateAssessmentTargetResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&InspectorClient::CreateAssessmentTarget, request, handler, context); } /** *

Creates an assessment template for the assessment target that is specified by * the ARN of the assessment target. If the service-linked * role isn’t already registered, this action also creates and registers a * service-linked role to grant Amazon Inspector access to AWS Services needed to * perform security assessments.

See Also:

AWS * API Reference

*/ virtual Model::CreateAssessmentTemplateOutcome CreateAssessmentTemplate(const Model::CreateAssessmentTemplateRequest& request) const; /** * A Callable wrapper for CreateAssessmentTemplate that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::CreateAssessmentTemplateOutcomeCallable CreateAssessmentTemplateCallable(const CreateAssessmentTemplateRequestT& request) const { return SubmitCallable(&InspectorClient::CreateAssessmentTemplate, request); } /** * An Async wrapper for CreateAssessmentTemplate that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void CreateAssessmentTemplateAsync(const CreateAssessmentTemplateRequestT& request, const CreateAssessmentTemplateResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&InspectorClient::CreateAssessmentTemplate, request, handler, context); } /** *

Starts the generation of an exclusions preview for the specified assessment * template. The exclusions preview lists the potential exclusions * (ExclusionPreview) that Inspector can detect before it runs the assessment. *

See Also:

AWS * API Reference

*/ virtual Model::CreateExclusionsPreviewOutcome CreateExclusionsPreview(const Model::CreateExclusionsPreviewRequest& request) const; /** * A Callable wrapper for CreateExclusionsPreview that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::CreateExclusionsPreviewOutcomeCallable CreateExclusionsPreviewCallable(const CreateExclusionsPreviewRequestT& request) const { return SubmitCallable(&InspectorClient::CreateExclusionsPreview, request); } /** * An Async wrapper for CreateExclusionsPreview that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void CreateExclusionsPreviewAsync(const CreateExclusionsPreviewRequestT& request, const CreateExclusionsPreviewResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&InspectorClient::CreateExclusionsPreview, request, handler, context); } /** *

Creates a resource group using the specified set of tags (key and value * pairs) that are used to select the EC2 instances to be included in an Amazon * Inspector assessment target. The created resource group is then used to create * an Amazon Inspector assessment target. For more information, see * CreateAssessmentTarget.

See Also:

AWS * API Reference

*/ virtual Model::CreateResourceGroupOutcome CreateResourceGroup(const Model::CreateResourceGroupRequest& request) const; /** * A Callable wrapper for CreateResourceGroup that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::CreateResourceGroupOutcomeCallable CreateResourceGroupCallable(const CreateResourceGroupRequestT& request) const { return SubmitCallable(&InspectorClient::CreateResourceGroup, request); } /** * An Async wrapper for CreateResourceGroup that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void CreateResourceGroupAsync(const CreateResourceGroupRequestT& request, const CreateResourceGroupResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&InspectorClient::CreateResourceGroup, request, handler, context); } /** *

Deletes the assessment run that is specified by the ARN of the assessment * run.

See Also:

AWS * API Reference

*/ virtual Model::DeleteAssessmentRunOutcome DeleteAssessmentRun(const Model::DeleteAssessmentRunRequest& request) const; /** * A Callable wrapper for DeleteAssessmentRun that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteAssessmentRunOutcomeCallable DeleteAssessmentRunCallable(const DeleteAssessmentRunRequestT& request) const { return SubmitCallable(&InspectorClient::DeleteAssessmentRun, request); } /** * An Async wrapper for DeleteAssessmentRun that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteAssessmentRunAsync(const DeleteAssessmentRunRequestT& request, const DeleteAssessmentRunResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&InspectorClient::DeleteAssessmentRun, request, handler, context); } /** *

Deletes the assessment target that is specified by the ARN of the assessment * target.

See Also:

AWS * API Reference

*/ virtual Model::DeleteAssessmentTargetOutcome DeleteAssessmentTarget(const Model::DeleteAssessmentTargetRequest& request) const; /** * A Callable wrapper for DeleteAssessmentTarget that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteAssessmentTargetOutcomeCallable DeleteAssessmentTargetCallable(const DeleteAssessmentTargetRequestT& request) const { return SubmitCallable(&InspectorClient::DeleteAssessmentTarget, request); } /** * An Async wrapper for DeleteAssessmentTarget that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteAssessmentTargetAsync(const DeleteAssessmentTargetRequestT& request, const DeleteAssessmentTargetResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&InspectorClient::DeleteAssessmentTarget, request, handler, context); } /** *

Deletes the assessment template that is specified by the ARN of the * assessment template.

See Also:

AWS * API Reference

*/ virtual Model::DeleteAssessmentTemplateOutcome DeleteAssessmentTemplate(const Model::DeleteAssessmentTemplateRequest& request) const; /** * A Callable wrapper for DeleteAssessmentTemplate that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteAssessmentTemplateOutcomeCallable DeleteAssessmentTemplateCallable(const DeleteAssessmentTemplateRequestT& request) const { return SubmitCallable(&InspectorClient::DeleteAssessmentTemplate, request); } /** * An Async wrapper for DeleteAssessmentTemplate that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteAssessmentTemplateAsync(const DeleteAssessmentTemplateRequestT& request, const DeleteAssessmentTemplateResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&InspectorClient::DeleteAssessmentTemplate, request, handler, context); } /** *

Describes the assessment runs that are specified by the ARNs of the * assessment runs.

See Also:

AWS * API Reference

*/ virtual Model::DescribeAssessmentRunsOutcome DescribeAssessmentRuns(const Model::DescribeAssessmentRunsRequest& request) const; /** * A Callable wrapper for DescribeAssessmentRuns that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DescribeAssessmentRunsOutcomeCallable DescribeAssessmentRunsCallable(const DescribeAssessmentRunsRequestT& request) const { return SubmitCallable(&InspectorClient::DescribeAssessmentRuns, request); } /** * An Async wrapper for DescribeAssessmentRuns that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DescribeAssessmentRunsAsync(const DescribeAssessmentRunsRequestT& request, const DescribeAssessmentRunsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&InspectorClient::DescribeAssessmentRuns, request, handler, context); } /** *

Describes the assessment targets that are specified by the ARNs of the * assessment targets.

See Also:

AWS * API Reference

*/ virtual Model::DescribeAssessmentTargetsOutcome DescribeAssessmentTargets(const Model::DescribeAssessmentTargetsRequest& request) const; /** * A Callable wrapper for DescribeAssessmentTargets that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DescribeAssessmentTargetsOutcomeCallable DescribeAssessmentTargetsCallable(const DescribeAssessmentTargetsRequestT& request) const { return SubmitCallable(&InspectorClient::DescribeAssessmentTargets, request); } /** * An Async wrapper for DescribeAssessmentTargets that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DescribeAssessmentTargetsAsync(const DescribeAssessmentTargetsRequestT& request, const DescribeAssessmentTargetsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&InspectorClient::DescribeAssessmentTargets, request, handler, context); } /** *

Describes the assessment templates that are specified by the ARNs of the * assessment templates.

See Also:

AWS * API Reference

*/ virtual Model::DescribeAssessmentTemplatesOutcome DescribeAssessmentTemplates(const Model::DescribeAssessmentTemplatesRequest& request) const; /** * A Callable wrapper for DescribeAssessmentTemplates that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DescribeAssessmentTemplatesOutcomeCallable DescribeAssessmentTemplatesCallable(const DescribeAssessmentTemplatesRequestT& request) const { return SubmitCallable(&InspectorClient::DescribeAssessmentTemplates, request); } /** * An Async wrapper for DescribeAssessmentTemplates that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DescribeAssessmentTemplatesAsync(const DescribeAssessmentTemplatesRequestT& request, const DescribeAssessmentTemplatesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&InspectorClient::DescribeAssessmentTemplates, request, handler, context); } /** *

Describes the IAM role that enables Amazon Inspector to access your AWS * account.

See Also:

AWS * API Reference

*/ virtual Model::DescribeCrossAccountAccessRoleOutcome DescribeCrossAccountAccessRole() const; /** * A Callable wrapper for DescribeCrossAccountAccessRole that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DescribeCrossAccountAccessRoleOutcomeCallable DescribeCrossAccountAccessRoleCallable() const { return SubmitCallable(&InspectorClient::DescribeCrossAccountAccessRole); } /** * An Async wrapper for DescribeCrossAccountAccessRole that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DescribeCrossAccountAccessRoleAsync(const DescribeCrossAccountAccessRoleResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&InspectorClient::DescribeCrossAccountAccessRole, handler, context); } /** *

Describes the exclusions that are specified by the exclusions' * ARNs.

See Also:

AWS * API Reference

*/ virtual Model::DescribeExclusionsOutcome DescribeExclusions(const Model::DescribeExclusionsRequest& request) const; /** * A Callable wrapper for DescribeExclusions that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DescribeExclusionsOutcomeCallable DescribeExclusionsCallable(const DescribeExclusionsRequestT& request) const { return SubmitCallable(&InspectorClient::DescribeExclusions, request); } /** * An Async wrapper for DescribeExclusions that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DescribeExclusionsAsync(const DescribeExclusionsRequestT& request, const DescribeExclusionsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&InspectorClient::DescribeExclusions, request, handler, context); } /** *

Describes the findings that are specified by the ARNs of the * findings.

See Also:

AWS * API Reference

*/ virtual Model::DescribeFindingsOutcome DescribeFindings(const Model::DescribeFindingsRequest& request) const; /** * A Callable wrapper for DescribeFindings that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DescribeFindingsOutcomeCallable DescribeFindingsCallable(const DescribeFindingsRequestT& request) const { return SubmitCallable(&InspectorClient::DescribeFindings, request); } /** * An Async wrapper for DescribeFindings that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DescribeFindingsAsync(const DescribeFindingsRequestT& request, const DescribeFindingsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&InspectorClient::DescribeFindings, request, handler, context); } /** *

Describes the resource groups that are specified by the ARNs of the resource * groups.

See Also:

AWS * API Reference

*/ virtual Model::DescribeResourceGroupsOutcome DescribeResourceGroups(const Model::DescribeResourceGroupsRequest& request) const; /** * A Callable wrapper for DescribeResourceGroups that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DescribeResourceGroupsOutcomeCallable DescribeResourceGroupsCallable(const DescribeResourceGroupsRequestT& request) const { return SubmitCallable(&InspectorClient::DescribeResourceGroups, request); } /** * An Async wrapper for DescribeResourceGroups that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DescribeResourceGroupsAsync(const DescribeResourceGroupsRequestT& request, const DescribeResourceGroupsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&InspectorClient::DescribeResourceGroups, request, handler, context); } /** *

Describes the rules packages that are specified by the ARNs of the rules * packages.

See Also:

AWS * API Reference

*/ virtual Model::DescribeRulesPackagesOutcome DescribeRulesPackages(const Model::DescribeRulesPackagesRequest& request) const; /** * A Callable wrapper for DescribeRulesPackages that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DescribeRulesPackagesOutcomeCallable DescribeRulesPackagesCallable(const DescribeRulesPackagesRequestT& request) const { return SubmitCallable(&InspectorClient::DescribeRulesPackages, request); } /** * An Async wrapper for DescribeRulesPackages that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DescribeRulesPackagesAsync(const DescribeRulesPackagesRequestT& request, const DescribeRulesPackagesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&InspectorClient::DescribeRulesPackages, request, handler, context); } /** *

Produces an assessment report that includes detailed and comprehensive * results of a specified assessment run.

See Also:

AWS * API Reference

*/ virtual Model::GetAssessmentReportOutcome GetAssessmentReport(const Model::GetAssessmentReportRequest& request) const; /** * A Callable wrapper for GetAssessmentReport that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetAssessmentReportOutcomeCallable GetAssessmentReportCallable(const GetAssessmentReportRequestT& request) const { return SubmitCallable(&InspectorClient::GetAssessmentReport, request); } /** * An Async wrapper for GetAssessmentReport that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetAssessmentReportAsync(const GetAssessmentReportRequestT& request, const GetAssessmentReportResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&InspectorClient::GetAssessmentReport, request, handler, context); } /** *

Retrieves the exclusions preview (a list of ExclusionPreview objects) * specified by the preview token. You can obtain the preview token by running the * CreateExclusionsPreview API.

See Also:

AWS * API Reference

*/ virtual Model::GetExclusionsPreviewOutcome GetExclusionsPreview(const Model::GetExclusionsPreviewRequest& request) const; /** * A Callable wrapper for GetExclusionsPreview that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetExclusionsPreviewOutcomeCallable GetExclusionsPreviewCallable(const GetExclusionsPreviewRequestT& request) const { return SubmitCallable(&InspectorClient::GetExclusionsPreview, request); } /** * An Async wrapper for GetExclusionsPreview that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetExclusionsPreviewAsync(const GetExclusionsPreviewRequestT& request, const GetExclusionsPreviewResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&InspectorClient::GetExclusionsPreview, request, handler, context); } /** *

Information about the data that is collected for the specified assessment * run.

See Also:

AWS * API Reference

*/ virtual Model::GetTelemetryMetadataOutcome GetTelemetryMetadata(const Model::GetTelemetryMetadataRequest& request) const; /** * A Callable wrapper for GetTelemetryMetadata that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetTelemetryMetadataOutcomeCallable GetTelemetryMetadataCallable(const GetTelemetryMetadataRequestT& request) const { return SubmitCallable(&InspectorClient::GetTelemetryMetadata, request); } /** * An Async wrapper for GetTelemetryMetadata that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetTelemetryMetadataAsync(const GetTelemetryMetadataRequestT& request, const GetTelemetryMetadataResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&InspectorClient::GetTelemetryMetadata, request, handler, context); } /** *

Lists the agents of the assessment runs that are specified by the ARNs of the * assessment runs.

See Also:

AWS * API Reference

*/ virtual Model::ListAssessmentRunAgentsOutcome ListAssessmentRunAgents(const Model::ListAssessmentRunAgentsRequest& request) const; /** * A Callable wrapper for ListAssessmentRunAgents that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListAssessmentRunAgentsOutcomeCallable ListAssessmentRunAgentsCallable(const ListAssessmentRunAgentsRequestT& request) const { return SubmitCallable(&InspectorClient::ListAssessmentRunAgents, request); } /** * An Async wrapper for ListAssessmentRunAgents that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListAssessmentRunAgentsAsync(const ListAssessmentRunAgentsRequestT& request, const ListAssessmentRunAgentsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&InspectorClient::ListAssessmentRunAgents, request, handler, context); } /** *

Lists the assessment runs that correspond to the assessment templates that * are specified by the ARNs of the assessment templates.

See Also:

* AWS * API Reference

*/ virtual Model::ListAssessmentRunsOutcome ListAssessmentRuns(const Model::ListAssessmentRunsRequest& request) const; /** * A Callable wrapper for ListAssessmentRuns that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListAssessmentRunsOutcomeCallable ListAssessmentRunsCallable(const ListAssessmentRunsRequestT& request) const { return SubmitCallable(&InspectorClient::ListAssessmentRuns, request); } /** * An Async wrapper for ListAssessmentRuns that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListAssessmentRunsAsync(const ListAssessmentRunsRequestT& request, const ListAssessmentRunsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&InspectorClient::ListAssessmentRuns, request, handler, context); } /** *

Lists the ARNs of the assessment targets within this AWS account. For more * information about assessment targets, see Amazon * Inspector Assessment Targets.

See Also:

AWS * API Reference

*/ virtual Model::ListAssessmentTargetsOutcome ListAssessmentTargets(const Model::ListAssessmentTargetsRequest& request) const; /** * A Callable wrapper for ListAssessmentTargets that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListAssessmentTargetsOutcomeCallable ListAssessmentTargetsCallable(const ListAssessmentTargetsRequestT& request) const { return SubmitCallable(&InspectorClient::ListAssessmentTargets, request); } /** * An Async wrapper for ListAssessmentTargets that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListAssessmentTargetsAsync(const ListAssessmentTargetsRequestT& request, const ListAssessmentTargetsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&InspectorClient::ListAssessmentTargets, request, handler, context); } /** *

Lists the assessment templates that correspond to the assessment targets that * are specified by the ARNs of the assessment targets.

See Also:

* AWS * API Reference

*/ virtual Model::ListAssessmentTemplatesOutcome ListAssessmentTemplates(const Model::ListAssessmentTemplatesRequest& request) const; /** * A Callable wrapper for ListAssessmentTemplates that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListAssessmentTemplatesOutcomeCallable ListAssessmentTemplatesCallable(const ListAssessmentTemplatesRequestT& request) const { return SubmitCallable(&InspectorClient::ListAssessmentTemplates, request); } /** * An Async wrapper for ListAssessmentTemplates that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListAssessmentTemplatesAsync(const ListAssessmentTemplatesRequestT& request, const ListAssessmentTemplatesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&InspectorClient::ListAssessmentTemplates, request, handler, context); } /** *

Lists all the event subscriptions for the assessment template that is * specified by the ARN of the assessment template. For more information, see * SubscribeToEvent and UnsubscribeFromEvent.

See * Also:

AWS * API Reference

*/ virtual Model::ListEventSubscriptionsOutcome ListEventSubscriptions(const Model::ListEventSubscriptionsRequest& request) const; /** * A Callable wrapper for ListEventSubscriptions that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListEventSubscriptionsOutcomeCallable ListEventSubscriptionsCallable(const ListEventSubscriptionsRequestT& request) const { return SubmitCallable(&InspectorClient::ListEventSubscriptions, request); } /** * An Async wrapper for ListEventSubscriptions that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListEventSubscriptionsAsync(const ListEventSubscriptionsRequestT& request, const ListEventSubscriptionsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&InspectorClient::ListEventSubscriptions, request, handler, context); } /** *

List exclusions that are generated by the assessment run.

See * Also:

AWS * API Reference

*/ virtual Model::ListExclusionsOutcome ListExclusions(const Model::ListExclusionsRequest& request) const; /** * A Callable wrapper for ListExclusions that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListExclusionsOutcomeCallable ListExclusionsCallable(const ListExclusionsRequestT& request) const { return SubmitCallable(&InspectorClient::ListExclusions, request); } /** * An Async wrapper for ListExclusions that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListExclusionsAsync(const ListExclusionsRequestT& request, const ListExclusionsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&InspectorClient::ListExclusions, request, handler, context); } /** *

Lists findings that are generated by the assessment runs that are specified * by the ARNs of the assessment runs.

See Also:

AWS * API Reference

*/ virtual Model::ListFindingsOutcome ListFindings(const Model::ListFindingsRequest& request) const; /** * A Callable wrapper for ListFindings that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListFindingsOutcomeCallable ListFindingsCallable(const ListFindingsRequestT& request) const { return SubmitCallable(&InspectorClient::ListFindings, request); } /** * An Async wrapper for ListFindings that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListFindingsAsync(const ListFindingsRequestT& request, const ListFindingsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&InspectorClient::ListFindings, request, handler, context); } /** *

Lists all available Amazon Inspector rules packages.

See Also:

* AWS * API Reference

*/ virtual Model::ListRulesPackagesOutcome ListRulesPackages(const Model::ListRulesPackagesRequest& request) const; /** * A Callable wrapper for ListRulesPackages that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListRulesPackagesOutcomeCallable ListRulesPackagesCallable(const ListRulesPackagesRequestT& request) const { return SubmitCallable(&InspectorClient::ListRulesPackages, request); } /** * An Async wrapper for ListRulesPackages that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListRulesPackagesAsync(const ListRulesPackagesRequestT& request, const ListRulesPackagesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&InspectorClient::ListRulesPackages, request, handler, context); } /** *

Lists all tags associated with an assessment template.

See * Also:

AWS * API Reference

*/ virtual Model::ListTagsForResourceOutcome ListTagsForResource(const Model::ListTagsForResourceRequest& request) const; /** * A Callable wrapper for ListTagsForResource that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListTagsForResourceOutcomeCallable ListTagsForResourceCallable(const ListTagsForResourceRequestT& request) const { return SubmitCallable(&InspectorClient::ListTagsForResource, request); } /** * An Async wrapper for ListTagsForResource that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListTagsForResourceAsync(const ListTagsForResourceRequestT& request, const ListTagsForResourceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&InspectorClient::ListTagsForResource, request, handler, context); } /** *

Previews the agents installed on the EC2 instances that are part of the * specified assessment target.

See Also:

AWS * API Reference

*/ virtual Model::PreviewAgentsOutcome PreviewAgents(const Model::PreviewAgentsRequest& request) const; /** * A Callable wrapper for PreviewAgents that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::PreviewAgentsOutcomeCallable PreviewAgentsCallable(const PreviewAgentsRequestT& request) const { return SubmitCallable(&InspectorClient::PreviewAgents, request); } /** * An Async wrapper for PreviewAgents that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void PreviewAgentsAsync(const PreviewAgentsRequestT& request, const PreviewAgentsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&InspectorClient::PreviewAgents, request, handler, context); } /** *

Registers the IAM role that grants Amazon Inspector access to AWS Services * needed to perform security assessments.

See Also:

AWS * API Reference

*/ virtual Model::RegisterCrossAccountAccessRoleOutcome RegisterCrossAccountAccessRole(const Model::RegisterCrossAccountAccessRoleRequest& request) const; /** * A Callable wrapper for RegisterCrossAccountAccessRole that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::RegisterCrossAccountAccessRoleOutcomeCallable RegisterCrossAccountAccessRoleCallable(const RegisterCrossAccountAccessRoleRequestT& request) const { return SubmitCallable(&InspectorClient::RegisterCrossAccountAccessRole, request); } /** * An Async wrapper for RegisterCrossAccountAccessRole that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void RegisterCrossAccountAccessRoleAsync(const RegisterCrossAccountAccessRoleRequestT& request, const RegisterCrossAccountAccessRoleResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&InspectorClient::RegisterCrossAccountAccessRole, request, handler, context); } /** *

Removes entire attributes (key and value pairs) from the findings that are * specified by the ARNs of the findings where an attribute with the specified key * exists.

See Also:

AWS * API Reference

*/ virtual Model::RemoveAttributesFromFindingsOutcome RemoveAttributesFromFindings(const Model::RemoveAttributesFromFindingsRequest& request) const; /** * A Callable wrapper for RemoveAttributesFromFindings that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::RemoveAttributesFromFindingsOutcomeCallable RemoveAttributesFromFindingsCallable(const RemoveAttributesFromFindingsRequestT& request) const { return SubmitCallable(&InspectorClient::RemoveAttributesFromFindings, request); } /** * An Async wrapper for RemoveAttributesFromFindings that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void RemoveAttributesFromFindingsAsync(const RemoveAttributesFromFindingsRequestT& request, const RemoveAttributesFromFindingsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&InspectorClient::RemoveAttributesFromFindings, request, handler, context); } /** *

Sets tags (key and value pairs) to the assessment template that is specified * by the ARN of the assessment template.

See Also:

AWS * API Reference

*/ virtual Model::SetTagsForResourceOutcome SetTagsForResource(const Model::SetTagsForResourceRequest& request) const; /** * A Callable wrapper for SetTagsForResource that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::SetTagsForResourceOutcomeCallable SetTagsForResourceCallable(const SetTagsForResourceRequestT& request) const { return SubmitCallable(&InspectorClient::SetTagsForResource, request); } /** * An Async wrapper for SetTagsForResource that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void SetTagsForResourceAsync(const SetTagsForResourceRequestT& request, const SetTagsForResourceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&InspectorClient::SetTagsForResource, request, handler, context); } /** *

Starts the assessment run specified by the ARN of the assessment template. * For this API to function properly, you must not exceed the limit of running up * to 500 concurrent agents per AWS account.

See Also:

AWS * API Reference

*/ virtual Model::StartAssessmentRunOutcome StartAssessmentRun(const Model::StartAssessmentRunRequest& request) const; /** * A Callable wrapper for StartAssessmentRun that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::StartAssessmentRunOutcomeCallable StartAssessmentRunCallable(const StartAssessmentRunRequestT& request) const { return SubmitCallable(&InspectorClient::StartAssessmentRun, request); } /** * An Async wrapper for StartAssessmentRun that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void StartAssessmentRunAsync(const StartAssessmentRunRequestT& request, const StartAssessmentRunResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&InspectorClient::StartAssessmentRun, request, handler, context); } /** *

Stops the assessment run that is specified by the ARN of the assessment * run.

See Also:

AWS * API Reference

*/ virtual Model::StopAssessmentRunOutcome StopAssessmentRun(const Model::StopAssessmentRunRequest& request) const; /** * A Callable wrapper for StopAssessmentRun that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::StopAssessmentRunOutcomeCallable StopAssessmentRunCallable(const StopAssessmentRunRequestT& request) const { return SubmitCallable(&InspectorClient::StopAssessmentRun, request); } /** * An Async wrapper for StopAssessmentRun that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void StopAssessmentRunAsync(const StopAssessmentRunRequestT& request, const StopAssessmentRunResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&InspectorClient::StopAssessmentRun, request, handler, context); } /** *

Enables the process of sending Amazon Simple Notification Service (SNS) * notifications about a specified event to a specified SNS topic.

See * Also:

AWS * API Reference

*/ virtual Model::SubscribeToEventOutcome SubscribeToEvent(const Model::SubscribeToEventRequest& request) const; /** * A Callable wrapper for SubscribeToEvent that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::SubscribeToEventOutcomeCallable SubscribeToEventCallable(const SubscribeToEventRequestT& request) const { return SubmitCallable(&InspectorClient::SubscribeToEvent, request); } /** * An Async wrapper for SubscribeToEvent that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void SubscribeToEventAsync(const SubscribeToEventRequestT& request, const SubscribeToEventResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&InspectorClient::SubscribeToEvent, request, handler, context); } /** *

Disables the process of sending Amazon Simple Notification Service (SNS) * notifications about a specified event to a specified SNS topic.

See * Also:

AWS * API Reference

*/ virtual Model::UnsubscribeFromEventOutcome UnsubscribeFromEvent(const Model::UnsubscribeFromEventRequest& request) const; /** * A Callable wrapper for UnsubscribeFromEvent that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UnsubscribeFromEventOutcomeCallable UnsubscribeFromEventCallable(const UnsubscribeFromEventRequestT& request) const { return SubmitCallable(&InspectorClient::UnsubscribeFromEvent, request); } /** * An Async wrapper for UnsubscribeFromEvent that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UnsubscribeFromEventAsync(const UnsubscribeFromEventRequestT& request, const UnsubscribeFromEventResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&InspectorClient::UnsubscribeFromEvent, request, handler, context); } /** *

Updates the assessment target that is specified by the ARN of the assessment * target.

If resourceGroupArn is not specified, all EC2 instances in the * current AWS account and region are included in the assessment * target.

See Also:

AWS * API Reference

*/ virtual Model::UpdateAssessmentTargetOutcome UpdateAssessmentTarget(const Model::UpdateAssessmentTargetRequest& request) const; /** * A Callable wrapper for UpdateAssessmentTarget that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UpdateAssessmentTargetOutcomeCallable UpdateAssessmentTargetCallable(const UpdateAssessmentTargetRequestT& request) const { return SubmitCallable(&InspectorClient::UpdateAssessmentTarget, request); } /** * An Async wrapper for UpdateAssessmentTarget that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UpdateAssessmentTargetAsync(const UpdateAssessmentTargetRequestT& request, const UpdateAssessmentTargetResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&InspectorClient::UpdateAssessmentTarget, request, handler, context); } void OverrideEndpoint(const Aws::String& endpoint); std::shared_ptr& accessEndpointProvider(); private: friend class Aws::Client::ClientWithAsyncTemplateMethods; void init(const InspectorClientConfiguration& clientConfiguration); InspectorClientConfiguration m_clientConfiguration; std::shared_ptr m_executor; std::shared_ptr m_endpointProvider; }; } // namespace Inspector } // namespace Aws