/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Provides a consistent format for Security Hub findings.
* A
* finding is a potential security issue generated either by Amazon Web Services
* services or by the integrated third-party solutions and standards checks.AwsSecurityFinding
format allows you to share findings between
* Amazon Web Services security services and third-party solutions.See Also:
AWS
* API Reference
The schema version that a finding is formatted for.
*/ inline const Aws::String& GetSchemaVersion() const{ return m_schemaVersion; } /** *The schema version that a finding is formatted for.
*/ inline bool SchemaVersionHasBeenSet() const { return m_schemaVersionHasBeenSet; } /** *The schema version that a finding is formatted for.
*/ inline void SetSchemaVersion(const Aws::String& value) { m_schemaVersionHasBeenSet = true; m_schemaVersion = value; } /** *The schema version that a finding is formatted for.
*/ inline void SetSchemaVersion(Aws::String&& value) { m_schemaVersionHasBeenSet = true; m_schemaVersion = std::move(value); } /** *The schema version that a finding is formatted for.
*/ inline void SetSchemaVersion(const char* value) { m_schemaVersionHasBeenSet = true; m_schemaVersion.assign(value); } /** *The schema version that a finding is formatted for.
*/ inline AwsSecurityFinding& WithSchemaVersion(const Aws::String& value) { SetSchemaVersion(value); return *this;} /** *The schema version that a finding is formatted for.
*/ inline AwsSecurityFinding& WithSchemaVersion(Aws::String&& value) { SetSchemaVersion(std::move(value)); return *this;} /** *The schema version that a finding is formatted for.
*/ inline AwsSecurityFinding& WithSchemaVersion(const char* value) { SetSchemaVersion(value); return *this;} /** *The security findings provider-specific identifier for a finding.
*/ inline const Aws::String& GetId() const{ return m_id; } /** *The security findings provider-specific identifier for a finding.
*/ inline bool IdHasBeenSet() const { return m_idHasBeenSet; } /** *The security findings provider-specific identifier for a finding.
*/ inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; } /** *The security findings provider-specific identifier for a finding.
*/ inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); } /** *The security findings provider-specific identifier for a finding.
*/ inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); } /** *The security findings provider-specific identifier for a finding.
*/ inline AwsSecurityFinding& WithId(const Aws::String& value) { SetId(value); return *this;} /** *The security findings provider-specific identifier for a finding.
*/ inline AwsSecurityFinding& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;} /** *The security findings provider-specific identifier for a finding.
*/ inline AwsSecurityFinding& WithId(const char* value) { SetId(value); return *this;} /** *The ARN generated by Security Hub that uniquely identifies a product that * generates findings. This can be the ARN for a third-party product that is * integrated with Security Hub, or the ARN for a custom integration.
*/ inline const Aws::String& GetProductArn() const{ return m_productArn; } /** *The ARN generated by Security Hub that uniquely identifies a product that * generates findings. This can be the ARN for a third-party product that is * integrated with Security Hub, or the ARN for a custom integration.
*/ inline bool ProductArnHasBeenSet() const { return m_productArnHasBeenSet; } /** *The ARN generated by Security Hub that uniquely identifies a product that * generates findings. This can be the ARN for a third-party product that is * integrated with Security Hub, or the ARN for a custom integration.
*/ inline void SetProductArn(const Aws::String& value) { m_productArnHasBeenSet = true; m_productArn = value; } /** *The ARN generated by Security Hub that uniquely identifies a product that * generates findings. This can be the ARN for a third-party product that is * integrated with Security Hub, or the ARN for a custom integration.
*/ inline void SetProductArn(Aws::String&& value) { m_productArnHasBeenSet = true; m_productArn = std::move(value); } /** *The ARN generated by Security Hub that uniquely identifies a product that * generates findings. This can be the ARN for a third-party product that is * integrated with Security Hub, or the ARN for a custom integration.
*/ inline void SetProductArn(const char* value) { m_productArnHasBeenSet = true; m_productArn.assign(value); } /** *The ARN generated by Security Hub that uniquely identifies a product that * generates findings. This can be the ARN for a third-party product that is * integrated with Security Hub, or the ARN for a custom integration.
*/ inline AwsSecurityFinding& WithProductArn(const Aws::String& value) { SetProductArn(value); return *this;} /** *The ARN generated by Security Hub that uniquely identifies a product that * generates findings. This can be the ARN for a third-party product that is * integrated with Security Hub, or the ARN for a custom integration.
*/ inline AwsSecurityFinding& WithProductArn(Aws::String&& value) { SetProductArn(std::move(value)); return *this;} /** *The ARN generated by Security Hub that uniquely identifies a product that * generates findings. This can be the ARN for a third-party product that is * integrated with Security Hub, or the ARN for a custom integration.
*/ inline AwsSecurityFinding& WithProductArn(const char* value) { SetProductArn(value); return *this;} /** *The name of the product that generated the finding.
Security Hub
* populates this attribute automatically for each finding. You cannot update this
* attribute with BatchImportFindings
or
* BatchUpdateFindings
. The exception to this is a custom
* integration.
When you use the Security Hub console or API to filter * findings by product name, you use this attribute.
*/ inline const Aws::String& GetProductName() const{ return m_productName; } /** *The name of the product that generated the finding.
Security Hub
* populates this attribute automatically for each finding. You cannot update this
* attribute with BatchImportFindings
or
* BatchUpdateFindings
. The exception to this is a custom
* integration.
When you use the Security Hub console or API to filter * findings by product name, you use this attribute.
*/ inline bool ProductNameHasBeenSet() const { return m_productNameHasBeenSet; } /** *The name of the product that generated the finding.
Security Hub
* populates this attribute automatically for each finding. You cannot update this
* attribute with BatchImportFindings
or
* BatchUpdateFindings
. The exception to this is a custom
* integration.
When you use the Security Hub console or API to filter * findings by product name, you use this attribute.
*/ inline void SetProductName(const Aws::String& value) { m_productNameHasBeenSet = true; m_productName = value; } /** *The name of the product that generated the finding.
Security Hub
* populates this attribute automatically for each finding. You cannot update this
* attribute with BatchImportFindings
or
* BatchUpdateFindings
. The exception to this is a custom
* integration.
When you use the Security Hub console or API to filter * findings by product name, you use this attribute.
*/ inline void SetProductName(Aws::String&& value) { m_productNameHasBeenSet = true; m_productName = std::move(value); } /** *The name of the product that generated the finding.
Security Hub
* populates this attribute automatically for each finding. You cannot update this
* attribute with BatchImportFindings
or
* BatchUpdateFindings
. The exception to this is a custom
* integration.
When you use the Security Hub console or API to filter * findings by product name, you use this attribute.
*/ inline void SetProductName(const char* value) { m_productNameHasBeenSet = true; m_productName.assign(value); } /** *The name of the product that generated the finding.
Security Hub
* populates this attribute automatically for each finding. You cannot update this
* attribute with BatchImportFindings
or
* BatchUpdateFindings
. The exception to this is a custom
* integration.
When you use the Security Hub console or API to filter * findings by product name, you use this attribute.
*/ inline AwsSecurityFinding& WithProductName(const Aws::String& value) { SetProductName(value); return *this;} /** *The name of the product that generated the finding.
Security Hub
* populates this attribute automatically for each finding. You cannot update this
* attribute with BatchImportFindings
or
* BatchUpdateFindings
. The exception to this is a custom
* integration.
When you use the Security Hub console or API to filter * findings by product name, you use this attribute.
*/ inline AwsSecurityFinding& WithProductName(Aws::String&& value) { SetProductName(std::move(value)); return *this;} /** *The name of the product that generated the finding.
Security Hub
* populates this attribute automatically for each finding. You cannot update this
* attribute with BatchImportFindings
or
* BatchUpdateFindings
. The exception to this is a custom
* integration.
When you use the Security Hub console or API to filter * findings by product name, you use this attribute.
*/ inline AwsSecurityFinding& WithProductName(const char* value) { SetProductName(value); return *this;} /** *The name of the company for the product that generated the finding.
*Security Hub populates this attribute automatically for each finding. You
* cannot update this attribute with BatchImportFindings
or
* BatchUpdateFindings
. The exception to this is a custom
* integration.
When you use the Security Hub console or API to filter * findings by company name, you use this attribute.
*/ inline const Aws::String& GetCompanyName() const{ return m_companyName; } /** *The name of the company for the product that generated the finding.
*Security Hub populates this attribute automatically for each finding. You
* cannot update this attribute with BatchImportFindings
or
* BatchUpdateFindings
. The exception to this is a custom
* integration.
When you use the Security Hub console or API to filter * findings by company name, you use this attribute.
*/ inline bool CompanyNameHasBeenSet() const { return m_companyNameHasBeenSet; } /** *The name of the company for the product that generated the finding.
*Security Hub populates this attribute automatically for each finding. You
* cannot update this attribute with BatchImportFindings
or
* BatchUpdateFindings
. The exception to this is a custom
* integration.
When you use the Security Hub console or API to filter * findings by company name, you use this attribute.
*/ inline void SetCompanyName(const Aws::String& value) { m_companyNameHasBeenSet = true; m_companyName = value; } /** *The name of the company for the product that generated the finding.
*Security Hub populates this attribute automatically for each finding. You
* cannot update this attribute with BatchImportFindings
or
* BatchUpdateFindings
. The exception to this is a custom
* integration.
When you use the Security Hub console or API to filter * findings by company name, you use this attribute.
*/ inline void SetCompanyName(Aws::String&& value) { m_companyNameHasBeenSet = true; m_companyName = std::move(value); } /** *The name of the company for the product that generated the finding.
*Security Hub populates this attribute automatically for each finding. You
* cannot update this attribute with BatchImportFindings
or
* BatchUpdateFindings
. The exception to this is a custom
* integration.
When you use the Security Hub console or API to filter * findings by company name, you use this attribute.
*/ inline void SetCompanyName(const char* value) { m_companyNameHasBeenSet = true; m_companyName.assign(value); } /** *The name of the company for the product that generated the finding.
*Security Hub populates this attribute automatically for each finding. You
* cannot update this attribute with BatchImportFindings
or
* BatchUpdateFindings
. The exception to this is a custom
* integration.
When you use the Security Hub console or API to filter * findings by company name, you use this attribute.
*/ inline AwsSecurityFinding& WithCompanyName(const Aws::String& value) { SetCompanyName(value); return *this;} /** *The name of the company for the product that generated the finding.
*Security Hub populates this attribute automatically for each finding. You
* cannot update this attribute with BatchImportFindings
or
* BatchUpdateFindings
. The exception to this is a custom
* integration.
When you use the Security Hub console or API to filter * findings by company name, you use this attribute.
*/ inline AwsSecurityFinding& WithCompanyName(Aws::String&& value) { SetCompanyName(std::move(value)); return *this;} /** *The name of the company for the product that generated the finding.
*Security Hub populates this attribute automatically for each finding. You
* cannot update this attribute with BatchImportFindings
or
* BatchUpdateFindings
. The exception to this is a custom
* integration.
When you use the Security Hub console or API to filter * findings by company name, you use this attribute.
*/ inline AwsSecurityFinding& WithCompanyName(const char* value) { SetCompanyName(value); return *this;} /** *The Region from which the finding was generated.
Security Hub
* populates this attribute automatically for each finding. You cannot update it
* using BatchImportFindings
or BatchUpdateFindings
.
The Region from which the finding was generated.
Security Hub
* populates this attribute automatically for each finding. You cannot update it
* using BatchImportFindings
or BatchUpdateFindings
.
The Region from which the finding was generated.
Security Hub
* populates this attribute automatically for each finding. You cannot update it
* using BatchImportFindings
or BatchUpdateFindings
.
The Region from which the finding was generated.
Security Hub
* populates this attribute automatically for each finding. You cannot update it
* using BatchImportFindings
or BatchUpdateFindings
.
The Region from which the finding was generated.
Security Hub
* populates this attribute automatically for each finding. You cannot update it
* using BatchImportFindings
or BatchUpdateFindings
.
The Region from which the finding was generated.
Security Hub
* populates this attribute automatically for each finding. You cannot update it
* using BatchImportFindings
or BatchUpdateFindings
.
The Region from which the finding was generated.
Security Hub
* populates this attribute automatically for each finding. You cannot update it
* using BatchImportFindings
or BatchUpdateFindings
.
The Region from which the finding was generated.
Security Hub
* populates this attribute automatically for each finding. You cannot update it
* using BatchImportFindings
or BatchUpdateFindings
.
The identifier for the solution-specific component (a discrete unit of logic) * that generated a finding. In various security findings providers' solutions, * this generator can be called a rule, a check, a detector, a plugin, etc.
*/ inline const Aws::String& GetGeneratorId() const{ return m_generatorId; } /** *The identifier for the solution-specific component (a discrete unit of logic) * that generated a finding. In various security findings providers' solutions, * this generator can be called a rule, a check, a detector, a plugin, etc.
*/ inline bool GeneratorIdHasBeenSet() const { return m_generatorIdHasBeenSet; } /** *The identifier for the solution-specific component (a discrete unit of logic) * that generated a finding. In various security findings providers' solutions, * this generator can be called a rule, a check, a detector, a plugin, etc.
*/ inline void SetGeneratorId(const Aws::String& value) { m_generatorIdHasBeenSet = true; m_generatorId = value; } /** *The identifier for the solution-specific component (a discrete unit of logic) * that generated a finding. In various security findings providers' solutions, * this generator can be called a rule, a check, a detector, a plugin, etc.
*/ inline void SetGeneratorId(Aws::String&& value) { m_generatorIdHasBeenSet = true; m_generatorId = std::move(value); } /** *The identifier for the solution-specific component (a discrete unit of logic) * that generated a finding. In various security findings providers' solutions, * this generator can be called a rule, a check, a detector, a plugin, etc.
*/ inline void SetGeneratorId(const char* value) { m_generatorIdHasBeenSet = true; m_generatorId.assign(value); } /** *The identifier for the solution-specific component (a discrete unit of logic) * that generated a finding. In various security findings providers' solutions, * this generator can be called a rule, a check, a detector, a plugin, etc.
*/ inline AwsSecurityFinding& WithGeneratorId(const Aws::String& value) { SetGeneratorId(value); return *this;} /** *The identifier for the solution-specific component (a discrete unit of logic) * that generated a finding. In various security findings providers' solutions, * this generator can be called a rule, a check, a detector, a plugin, etc.
*/ inline AwsSecurityFinding& WithGeneratorId(Aws::String&& value) { SetGeneratorId(std::move(value)); return *this;} /** *The identifier for the solution-specific component (a discrete unit of logic) * that generated a finding. In various security findings providers' solutions, * this generator can be called a rule, a check, a detector, a plugin, etc.
*/ inline AwsSecurityFinding& WithGeneratorId(const char* value) { SetGeneratorId(value); return *this;} /** *The Amazon Web Services account ID that a finding is generated in.
*/ inline const Aws::String& GetAwsAccountId() const{ return m_awsAccountId; } /** *The Amazon Web Services account ID that a finding is generated in.
*/ inline bool AwsAccountIdHasBeenSet() const { return m_awsAccountIdHasBeenSet; } /** *The Amazon Web Services account ID that a finding is generated in.
*/ inline void SetAwsAccountId(const Aws::String& value) { m_awsAccountIdHasBeenSet = true; m_awsAccountId = value; } /** *The Amazon Web Services account ID that a finding is generated in.
*/ inline void SetAwsAccountId(Aws::String&& value) { m_awsAccountIdHasBeenSet = true; m_awsAccountId = std::move(value); } /** *The Amazon Web Services account ID that a finding is generated in.
*/ inline void SetAwsAccountId(const char* value) { m_awsAccountIdHasBeenSet = true; m_awsAccountId.assign(value); } /** *The Amazon Web Services account ID that a finding is generated in.
*/ inline AwsSecurityFinding& WithAwsAccountId(const Aws::String& value) { SetAwsAccountId(value); return *this;} /** *The Amazon Web Services account ID that a finding is generated in.
*/ inline AwsSecurityFinding& WithAwsAccountId(Aws::String&& value) { SetAwsAccountId(std::move(value)); return *this;} /** *The Amazon Web Services account ID that a finding is generated in.
*/ inline AwsSecurityFinding& WithAwsAccountId(const char* value) { SetAwsAccountId(value); return *this;} /** *One or more finding types in the format of
* namespace/category/classifier
that classify a finding.
Valid * namespace values are: Software and Configuration Checks | TTPs | Effects | * Unusual Behaviors | Sensitive Data Identifications
*/ inline const Aws::VectorOne or more finding types in the format of
* namespace/category/classifier
that classify a finding.
Valid * namespace values are: Software and Configuration Checks | TTPs | Effects | * Unusual Behaviors | Sensitive Data Identifications
*/ inline bool TypesHasBeenSet() const { return m_typesHasBeenSet; } /** *One or more finding types in the format of
* namespace/category/classifier
that classify a finding.
Valid * namespace values are: Software and Configuration Checks | TTPs | Effects | * Unusual Behaviors | Sensitive Data Identifications
*/ inline void SetTypes(const Aws::VectorOne or more finding types in the format of
* namespace/category/classifier
that classify a finding.
Valid * namespace values are: Software and Configuration Checks | TTPs | Effects | * Unusual Behaviors | Sensitive Data Identifications
*/ inline void SetTypes(Aws::VectorOne or more finding types in the format of
* namespace/category/classifier
that classify a finding.
Valid * namespace values are: Software and Configuration Checks | TTPs | Effects | * Unusual Behaviors | Sensitive Data Identifications
*/ inline AwsSecurityFinding& WithTypes(const Aws::VectorOne or more finding types in the format of
* namespace/category/classifier
that classify a finding.
Valid * namespace values are: Software and Configuration Checks | TTPs | Effects | * Unusual Behaviors | Sensitive Data Identifications
*/ inline AwsSecurityFinding& WithTypes(Aws::VectorOne or more finding types in the format of
* namespace/category/classifier
that classify a finding.
Valid * namespace values are: Software and Configuration Checks | TTPs | Effects | * Unusual Behaviors | Sensitive Data Identifications
*/ inline AwsSecurityFinding& AddTypes(const Aws::String& value) { m_typesHasBeenSet = true; m_types.push_back(value); return *this; } /** *One or more finding types in the format of
* namespace/category/classifier
that classify a finding.
Valid * namespace values are: Software and Configuration Checks | TTPs | Effects | * Unusual Behaviors | Sensitive Data Identifications
*/ inline AwsSecurityFinding& AddTypes(Aws::String&& value) { m_typesHasBeenSet = true; m_types.push_back(std::move(value)); return *this; } /** *One or more finding types in the format of
* namespace/category/classifier
that classify a finding.
Valid * namespace values are: Software and Configuration Checks | TTPs | Effects | * Unusual Behaviors | Sensitive Data Identifications
*/ inline AwsSecurityFinding& AddTypes(const char* value) { m_typesHasBeenSet = true; m_types.push_back(value); return *this; } /** *Indicates when the security findings provider first observed the potential * security issue that a finding captured.
Uses the date-time
* format specified in RFC 3339 section 5.6,
* Internet Date/Time Format. The value cannot contain spaces, and date and
* time should be separated by T
. For example,
* 2020-03-22T13:22:13.933Z
.
Indicates when the security findings provider first observed the potential * security issue that a finding captured.
Uses the date-time
* format specified in RFC 3339 section 5.6,
* Internet Date/Time Format. The value cannot contain spaces, and date and
* time should be separated by T
. For example,
* 2020-03-22T13:22:13.933Z
.
Indicates when the security findings provider first observed the potential * security issue that a finding captured.
Uses the date-time
* format specified in RFC 3339 section 5.6,
* Internet Date/Time Format. The value cannot contain spaces, and date and
* time should be separated by T
. For example,
* 2020-03-22T13:22:13.933Z
.
Indicates when the security findings provider first observed the potential * security issue that a finding captured.
Uses the date-time
* format specified in RFC 3339 section 5.6,
* Internet Date/Time Format. The value cannot contain spaces, and date and
* time should be separated by T
. For example,
* 2020-03-22T13:22:13.933Z
.
Indicates when the security findings provider first observed the potential * security issue that a finding captured.
Uses the date-time
* format specified in RFC 3339 section 5.6,
* Internet Date/Time Format. The value cannot contain spaces, and date and
* time should be separated by T
. For example,
* 2020-03-22T13:22:13.933Z
.
Indicates when the security findings provider first observed the potential * security issue that a finding captured.
Uses the date-time
* format specified in RFC 3339 section 5.6,
* Internet Date/Time Format. The value cannot contain spaces, and date and
* time should be separated by T
. For example,
* 2020-03-22T13:22:13.933Z
.
Indicates when the security findings provider first observed the potential * security issue that a finding captured.
Uses the date-time
* format specified in RFC 3339 section 5.6,
* Internet Date/Time Format. The value cannot contain spaces, and date and
* time should be separated by T
. For example,
* 2020-03-22T13:22:13.933Z
.
Indicates when the security findings provider first observed the potential * security issue that a finding captured.
Uses the date-time
* format specified in RFC 3339 section 5.6,
* Internet Date/Time Format. The value cannot contain spaces, and date and
* time should be separated by T
. For example,
* 2020-03-22T13:22:13.933Z
.
Indicates when the security findings provider most recently observed the * potential security issue that a finding captured.
Uses the
* date-time
format specified in RFC 3339 section 5.6,
* Internet Date/Time Format. The value cannot contain spaces, and date and
* time should be separated by T
. For example,
* 2020-03-22T13:22:13.933Z
.
Indicates when the security findings provider most recently observed the * potential security issue that a finding captured.
Uses the
* date-time
format specified in RFC 3339 section 5.6,
* Internet Date/Time Format. The value cannot contain spaces, and date and
* time should be separated by T
. For example,
* 2020-03-22T13:22:13.933Z
.
Indicates when the security findings provider most recently observed the * potential security issue that a finding captured.
Uses the
* date-time
format specified in RFC 3339 section 5.6,
* Internet Date/Time Format. The value cannot contain spaces, and date and
* time should be separated by T
. For example,
* 2020-03-22T13:22:13.933Z
.
Indicates when the security findings provider most recently observed the * potential security issue that a finding captured.
Uses the
* date-time
format specified in RFC 3339 section 5.6,
* Internet Date/Time Format. The value cannot contain spaces, and date and
* time should be separated by T
. For example,
* 2020-03-22T13:22:13.933Z
.
Indicates when the security findings provider most recently observed the * potential security issue that a finding captured.
Uses the
* date-time
format specified in RFC 3339 section 5.6,
* Internet Date/Time Format. The value cannot contain spaces, and date and
* time should be separated by T
. For example,
* 2020-03-22T13:22:13.933Z
.
Indicates when the security findings provider most recently observed the * potential security issue that a finding captured.
Uses the
* date-time
format specified in RFC 3339 section 5.6,
* Internet Date/Time Format. The value cannot contain spaces, and date and
* time should be separated by T
. For example,
* 2020-03-22T13:22:13.933Z
.
Indicates when the security findings provider most recently observed the * potential security issue that a finding captured.
Uses the
* date-time
format specified in RFC 3339 section 5.6,
* Internet Date/Time Format. The value cannot contain spaces, and date and
* time should be separated by T
. For example,
* 2020-03-22T13:22:13.933Z
.
Indicates when the security findings provider most recently observed the * potential security issue that a finding captured.
Uses the
* date-time
format specified in RFC 3339 section 5.6,
* Internet Date/Time Format. The value cannot contain spaces, and date and
* time should be separated by T
. For example,
* 2020-03-22T13:22:13.933Z
.
Indicates when the security findings provider created the potential security * issue that a finding captured.
Uses the date-time
format
* specified in RFC 3339
* section 5.6, Internet Date/Time Format. The value cannot contain spaces, and
* date and time should be separated by T
. For example,
* 2020-03-22T13:22:13.933Z
.
Indicates when the security findings provider created the potential security * issue that a finding captured.
Uses the date-time
format
* specified in RFC 3339
* section 5.6, Internet Date/Time Format. The value cannot contain spaces, and
* date and time should be separated by T
. For example,
* 2020-03-22T13:22:13.933Z
.
Indicates when the security findings provider created the potential security * issue that a finding captured.
Uses the date-time
format
* specified in RFC 3339
* section 5.6, Internet Date/Time Format. The value cannot contain spaces, and
* date and time should be separated by T
. For example,
* 2020-03-22T13:22:13.933Z
.
Indicates when the security findings provider created the potential security * issue that a finding captured.
Uses the date-time
format
* specified in RFC 3339
* section 5.6, Internet Date/Time Format. The value cannot contain spaces, and
* date and time should be separated by T
. For example,
* 2020-03-22T13:22:13.933Z
.
Indicates when the security findings provider created the potential security * issue that a finding captured.
Uses the date-time
format
* specified in RFC 3339
* section 5.6, Internet Date/Time Format. The value cannot contain spaces, and
* date and time should be separated by T
. For example,
* 2020-03-22T13:22:13.933Z
.
Indicates when the security findings provider created the potential security * issue that a finding captured.
Uses the date-time
format
* specified in RFC 3339
* section 5.6, Internet Date/Time Format. The value cannot contain spaces, and
* date and time should be separated by T
. For example,
* 2020-03-22T13:22:13.933Z
.
Indicates when the security findings provider created the potential security * issue that a finding captured.
Uses the date-time
format
* specified in RFC 3339
* section 5.6, Internet Date/Time Format. The value cannot contain spaces, and
* date and time should be separated by T
. For example,
* 2020-03-22T13:22:13.933Z
.
Indicates when the security findings provider created the potential security * issue that a finding captured.
Uses the date-time
format
* specified in RFC 3339
* section 5.6, Internet Date/Time Format. The value cannot contain spaces, and
* date and time should be separated by T
. For example,
* 2020-03-22T13:22:13.933Z
.
Indicates when the security findings provider last updated the finding * record.
Uses the date-time
format specified in RFC 3339 section 5.6,
* Internet Date/Time Format. The value cannot contain spaces, and date and
* time should be separated by T
. For example,
* 2020-03-22T13:22:13.933Z
.
Indicates when the security findings provider last updated the finding * record.
Uses the date-time
format specified in RFC 3339 section 5.6,
* Internet Date/Time Format. The value cannot contain spaces, and date and
* time should be separated by T
. For example,
* 2020-03-22T13:22:13.933Z
.
Indicates when the security findings provider last updated the finding * record.
Uses the date-time
format specified in RFC 3339 section 5.6,
* Internet Date/Time Format. The value cannot contain spaces, and date and
* time should be separated by T
. For example,
* 2020-03-22T13:22:13.933Z
.
Indicates when the security findings provider last updated the finding * record.
Uses the date-time
format specified in RFC 3339 section 5.6,
* Internet Date/Time Format. The value cannot contain spaces, and date and
* time should be separated by T
. For example,
* 2020-03-22T13:22:13.933Z
.
Indicates when the security findings provider last updated the finding * record.
Uses the date-time
format specified in RFC 3339 section 5.6,
* Internet Date/Time Format. The value cannot contain spaces, and date and
* time should be separated by T
. For example,
* 2020-03-22T13:22:13.933Z
.
Indicates when the security findings provider last updated the finding * record.
Uses the date-time
format specified in RFC 3339 section 5.6,
* Internet Date/Time Format. The value cannot contain spaces, and date and
* time should be separated by T
. For example,
* 2020-03-22T13:22:13.933Z
.
Indicates when the security findings provider last updated the finding * record.
Uses the date-time
format specified in RFC 3339 section 5.6,
* Internet Date/Time Format. The value cannot contain spaces, and date and
* time should be separated by T
. For example,
* 2020-03-22T13:22:13.933Z
.
Indicates when the security findings provider last updated the finding * record.
Uses the date-time
format specified in RFC 3339 section 5.6,
* Internet Date/Time Format. The value cannot contain spaces, and date and
* time should be separated by T
. For example,
* 2020-03-22T13:22:13.933Z
.
A finding's severity.
*/ inline const Severity& GetSeverity() const{ return m_severity; } /** *A finding's severity.
*/ inline bool SeverityHasBeenSet() const { return m_severityHasBeenSet; } /** *A finding's severity.
*/ inline void SetSeverity(const Severity& value) { m_severityHasBeenSet = true; m_severity = value; } /** *A finding's severity.
*/ inline void SetSeverity(Severity&& value) { m_severityHasBeenSet = true; m_severity = std::move(value); } /** *A finding's severity.
*/ inline AwsSecurityFinding& WithSeverity(const Severity& value) { SetSeverity(value); return *this;} /** *A finding's severity.
*/ inline AwsSecurityFinding& WithSeverity(Severity&& value) { SetSeverity(std::move(value)); return *this;} /** *A finding's confidence. Confidence is defined as the likelihood that a * finding accurately identifies the behavior or issue that it was intended to * identify.
Confidence is scored on a 0-100 basis using a ratio scale, * where 0 means zero percent confidence and 100 means 100 percent confidence.
*/ inline int GetConfidence() const{ return m_confidence; } /** *A finding's confidence. Confidence is defined as the likelihood that a * finding accurately identifies the behavior or issue that it was intended to * identify.
Confidence is scored on a 0-100 basis using a ratio scale, * where 0 means zero percent confidence and 100 means 100 percent confidence.
*/ inline bool ConfidenceHasBeenSet() const { return m_confidenceHasBeenSet; } /** *A finding's confidence. Confidence is defined as the likelihood that a * finding accurately identifies the behavior or issue that it was intended to * identify.
Confidence is scored on a 0-100 basis using a ratio scale, * where 0 means zero percent confidence and 100 means 100 percent confidence.
*/ inline void SetConfidence(int value) { m_confidenceHasBeenSet = true; m_confidence = value; } /** *A finding's confidence. Confidence is defined as the likelihood that a * finding accurately identifies the behavior or issue that it was intended to * identify.
Confidence is scored on a 0-100 basis using a ratio scale, * where 0 means zero percent confidence and 100 means 100 percent confidence.
*/ inline AwsSecurityFinding& WithConfidence(int value) { SetConfidence(value); return *this;} /** *The level of importance assigned to the resources associated with the * finding.
A score of 0 means that the underlying resources have no * criticality, and a score of 100 is reserved for the most critical resources.
*/ inline int GetCriticality() const{ return m_criticality; } /** *The level of importance assigned to the resources associated with the * finding.
A score of 0 means that the underlying resources have no * criticality, and a score of 100 is reserved for the most critical resources.
*/ inline bool CriticalityHasBeenSet() const { return m_criticalityHasBeenSet; } /** *The level of importance assigned to the resources associated with the * finding.
A score of 0 means that the underlying resources have no * criticality, and a score of 100 is reserved for the most critical resources.
*/ inline void SetCriticality(int value) { m_criticalityHasBeenSet = true; m_criticality = value; } /** *The level of importance assigned to the resources associated with the * finding.
A score of 0 means that the underlying resources have no * criticality, and a score of 100 is reserved for the most critical resources.
*/ inline AwsSecurityFinding& WithCriticality(int value) { SetCriticality(value); return *this;} /** *A finding's title.
In this release, Title
is a
* required property.
A finding's title.
In this release, Title
is a
* required property.
A finding's title.
In this release, Title
is a
* required property.
A finding's title.
In this release, Title
is a
* required property.
A finding's title.
In this release, Title
is a
* required property.
A finding's title.
In this release, Title
is a
* required property.
A finding's title.
In this release, Title
is a
* required property.
A finding's title.
In this release, Title
is a
* required property.
A finding's description.
In this release,
* Description
is a required property.
A finding's description.
In this release,
* Description
is a required property.
A finding's description.
In this release,
* Description
is a required property.
A finding's description.
In this release,
* Description
is a required property.
A finding's description.
In this release,
* Description
is a required property.
A finding's description.
In this release,
* Description
is a required property.
A finding's description.
In this release,
* Description
is a required property.
A finding's description.
In this release,
* Description
is a required property.
A data type that describes the remediation options for a finding.
*/ inline const Remediation& GetRemediation() const{ return m_remediation; } /** *A data type that describes the remediation options for a finding.
*/ inline bool RemediationHasBeenSet() const { return m_remediationHasBeenSet; } /** *A data type that describes the remediation options for a finding.
*/ inline void SetRemediation(const Remediation& value) { m_remediationHasBeenSet = true; m_remediation = value; } /** *A data type that describes the remediation options for a finding.
*/ inline void SetRemediation(Remediation&& value) { m_remediationHasBeenSet = true; m_remediation = std::move(value); } /** *A data type that describes the remediation options for a finding.
*/ inline AwsSecurityFinding& WithRemediation(const Remediation& value) { SetRemediation(value); return *this;} /** *A data type that describes the remediation options for a finding.
*/ inline AwsSecurityFinding& WithRemediation(Remediation&& value) { SetRemediation(std::move(value)); return *this;} /** *A URL that links to a page about the current finding in the security findings * provider's solution.
*/ inline const Aws::String& GetSourceUrl() const{ return m_sourceUrl; } /** *A URL that links to a page about the current finding in the security findings * provider's solution.
*/ inline bool SourceUrlHasBeenSet() const { return m_sourceUrlHasBeenSet; } /** *A URL that links to a page about the current finding in the security findings * provider's solution.
*/ inline void SetSourceUrl(const Aws::String& value) { m_sourceUrlHasBeenSet = true; m_sourceUrl = value; } /** *A URL that links to a page about the current finding in the security findings * provider's solution.
*/ inline void SetSourceUrl(Aws::String&& value) { m_sourceUrlHasBeenSet = true; m_sourceUrl = std::move(value); } /** *A URL that links to a page about the current finding in the security findings * provider's solution.
*/ inline void SetSourceUrl(const char* value) { m_sourceUrlHasBeenSet = true; m_sourceUrl.assign(value); } /** *A URL that links to a page about the current finding in the security findings * provider's solution.
*/ inline AwsSecurityFinding& WithSourceUrl(const Aws::String& value) { SetSourceUrl(value); return *this;} /** *A URL that links to a page about the current finding in the security findings * provider's solution.
*/ inline AwsSecurityFinding& WithSourceUrl(Aws::String&& value) { SetSourceUrl(std::move(value)); return *this;} /** *A URL that links to a page about the current finding in the security findings * provider's solution.
*/ inline AwsSecurityFinding& WithSourceUrl(const char* value) { SetSourceUrl(value); return *this;} /** *A data type where security findings providers can include additional
* solution-specific details that aren't part of the defined
* AwsSecurityFinding
format.
Can contain up to 50 key-value * pairs. For each key-value pair, the key can contain up to 128 characters, and * the value can contain up to 2048 characters.
*/ inline const Aws::MapA data type where security findings providers can include additional
* solution-specific details that aren't part of the defined
* AwsSecurityFinding
format.
Can contain up to 50 key-value * pairs. For each key-value pair, the key can contain up to 128 characters, and * the value can contain up to 2048 characters.
*/ inline bool ProductFieldsHasBeenSet() const { return m_productFieldsHasBeenSet; } /** *A data type where security findings providers can include additional
* solution-specific details that aren't part of the defined
* AwsSecurityFinding
format.
Can contain up to 50 key-value * pairs. For each key-value pair, the key can contain up to 128 characters, and * the value can contain up to 2048 characters.
*/ inline void SetProductFields(const Aws::MapA data type where security findings providers can include additional
* solution-specific details that aren't part of the defined
* AwsSecurityFinding
format.
Can contain up to 50 key-value * pairs. For each key-value pair, the key can contain up to 128 characters, and * the value can contain up to 2048 characters.
*/ inline void SetProductFields(Aws::MapA data type where security findings providers can include additional
* solution-specific details that aren't part of the defined
* AwsSecurityFinding
format.
Can contain up to 50 key-value * pairs. For each key-value pair, the key can contain up to 128 characters, and * the value can contain up to 2048 characters.
*/ inline AwsSecurityFinding& WithProductFields(const Aws::MapA data type where security findings providers can include additional
* solution-specific details that aren't part of the defined
* AwsSecurityFinding
format.
Can contain up to 50 key-value * pairs. For each key-value pair, the key can contain up to 128 characters, and * the value can contain up to 2048 characters.
*/ inline AwsSecurityFinding& WithProductFields(Aws::MapA data type where security findings providers can include additional
* solution-specific details that aren't part of the defined
* AwsSecurityFinding
format.
Can contain up to 50 key-value * pairs. For each key-value pair, the key can contain up to 128 characters, and * the value can contain up to 2048 characters.
*/ inline AwsSecurityFinding& AddProductFields(const Aws::String& key, const Aws::String& value) { m_productFieldsHasBeenSet = true; m_productFields.emplace(key, value); return *this; } /** *A data type where security findings providers can include additional
* solution-specific details that aren't part of the defined
* AwsSecurityFinding
format.
Can contain up to 50 key-value * pairs. For each key-value pair, the key can contain up to 128 characters, and * the value can contain up to 2048 characters.
*/ inline AwsSecurityFinding& AddProductFields(Aws::String&& key, const Aws::String& value) { m_productFieldsHasBeenSet = true; m_productFields.emplace(std::move(key), value); return *this; } /** *A data type where security findings providers can include additional
* solution-specific details that aren't part of the defined
* AwsSecurityFinding
format.
Can contain up to 50 key-value * pairs. For each key-value pair, the key can contain up to 128 characters, and * the value can contain up to 2048 characters.
*/ inline AwsSecurityFinding& AddProductFields(const Aws::String& key, Aws::String&& value) { m_productFieldsHasBeenSet = true; m_productFields.emplace(key, std::move(value)); return *this; } /** *A data type where security findings providers can include additional
* solution-specific details that aren't part of the defined
* AwsSecurityFinding
format.
Can contain up to 50 key-value * pairs. For each key-value pair, the key can contain up to 128 characters, and * the value can contain up to 2048 characters.
*/ inline AwsSecurityFinding& AddProductFields(Aws::String&& key, Aws::String&& value) { m_productFieldsHasBeenSet = true; m_productFields.emplace(std::move(key), std::move(value)); return *this; } /** *A data type where security findings providers can include additional
* solution-specific details that aren't part of the defined
* AwsSecurityFinding
format.
Can contain up to 50 key-value * pairs. For each key-value pair, the key can contain up to 128 characters, and * the value can contain up to 2048 characters.
*/ inline AwsSecurityFinding& AddProductFields(const char* key, Aws::String&& value) { m_productFieldsHasBeenSet = true; m_productFields.emplace(key, std::move(value)); return *this; } /** *A data type where security findings providers can include additional
* solution-specific details that aren't part of the defined
* AwsSecurityFinding
format.
Can contain up to 50 key-value * pairs. For each key-value pair, the key can contain up to 128 characters, and * the value can contain up to 2048 characters.
*/ inline AwsSecurityFinding& AddProductFields(Aws::String&& key, const char* value) { m_productFieldsHasBeenSet = true; m_productFields.emplace(std::move(key), value); return *this; } /** *A data type where security findings providers can include additional
* solution-specific details that aren't part of the defined
* AwsSecurityFinding
format.
Can contain up to 50 key-value * pairs. For each key-value pair, the key can contain up to 128 characters, and * the value can contain up to 2048 characters.
*/ inline AwsSecurityFinding& AddProductFields(const char* key, const char* value) { m_productFieldsHasBeenSet = true; m_productFields.emplace(key, value); return *this; } /** *A list of name/value string pairs associated with the finding. These are * custom, user-defined fields added to a finding.
*/ inline const Aws::MapA list of name/value string pairs associated with the finding. These are * custom, user-defined fields added to a finding.
*/ inline bool UserDefinedFieldsHasBeenSet() const { return m_userDefinedFieldsHasBeenSet; } /** *A list of name/value string pairs associated with the finding. These are * custom, user-defined fields added to a finding.
*/ inline void SetUserDefinedFields(const Aws::MapA list of name/value string pairs associated with the finding. These are * custom, user-defined fields added to a finding.
*/ inline void SetUserDefinedFields(Aws::MapA list of name/value string pairs associated with the finding. These are * custom, user-defined fields added to a finding.
*/ inline AwsSecurityFinding& WithUserDefinedFields(const Aws::MapA list of name/value string pairs associated with the finding. These are * custom, user-defined fields added to a finding.
*/ inline AwsSecurityFinding& WithUserDefinedFields(Aws::MapA list of name/value string pairs associated with the finding. These are * custom, user-defined fields added to a finding.
*/ inline AwsSecurityFinding& AddUserDefinedFields(const Aws::String& key, const Aws::String& value) { m_userDefinedFieldsHasBeenSet = true; m_userDefinedFields.emplace(key, value); return *this; } /** *A list of name/value string pairs associated with the finding. These are * custom, user-defined fields added to a finding.
*/ inline AwsSecurityFinding& AddUserDefinedFields(Aws::String&& key, const Aws::String& value) { m_userDefinedFieldsHasBeenSet = true; m_userDefinedFields.emplace(std::move(key), value); return *this; } /** *A list of name/value string pairs associated with the finding. These are * custom, user-defined fields added to a finding.
*/ inline AwsSecurityFinding& AddUserDefinedFields(const Aws::String& key, Aws::String&& value) { m_userDefinedFieldsHasBeenSet = true; m_userDefinedFields.emplace(key, std::move(value)); return *this; } /** *A list of name/value string pairs associated with the finding. These are * custom, user-defined fields added to a finding.
*/ inline AwsSecurityFinding& AddUserDefinedFields(Aws::String&& key, Aws::String&& value) { m_userDefinedFieldsHasBeenSet = true; m_userDefinedFields.emplace(std::move(key), std::move(value)); return *this; } /** *A list of name/value string pairs associated with the finding. These are * custom, user-defined fields added to a finding.
*/ inline AwsSecurityFinding& AddUserDefinedFields(const char* key, Aws::String&& value) { m_userDefinedFieldsHasBeenSet = true; m_userDefinedFields.emplace(key, std::move(value)); return *this; } /** *A list of name/value string pairs associated with the finding. These are * custom, user-defined fields added to a finding.
*/ inline AwsSecurityFinding& AddUserDefinedFields(Aws::String&& key, const char* value) { m_userDefinedFieldsHasBeenSet = true; m_userDefinedFields.emplace(std::move(key), value); return *this; } /** *A list of name/value string pairs associated with the finding. These are * custom, user-defined fields added to a finding.
*/ inline AwsSecurityFinding& AddUserDefinedFields(const char* key, const char* value) { m_userDefinedFieldsHasBeenSet = true; m_userDefinedFields.emplace(key, value); return *this; } /** *A list of malware related to a finding.
*/ inline const Aws::VectorA list of malware related to a finding.
*/ inline bool MalwareHasBeenSet() const { return m_malwareHasBeenSet; } /** *A list of malware related to a finding.
*/ inline void SetMalware(const Aws::VectorA list of malware related to a finding.
*/ inline void SetMalware(Aws::VectorA list of malware related to a finding.
*/ inline AwsSecurityFinding& WithMalware(const Aws::VectorA list of malware related to a finding.
*/ inline AwsSecurityFinding& WithMalware(Aws::VectorA list of malware related to a finding.
*/ inline AwsSecurityFinding& AddMalware(const Malware& value) { m_malwareHasBeenSet = true; m_malware.push_back(value); return *this; } /** *A list of malware related to a finding.
*/ inline AwsSecurityFinding& AddMalware(Malware&& value) { m_malwareHasBeenSet = true; m_malware.push_back(std::move(value)); return *this; } /** *The details of network-related information about a finding.
*/ inline const Network& GetNetwork() const{ return m_network; } /** *The details of network-related information about a finding.
*/ inline bool NetworkHasBeenSet() const { return m_networkHasBeenSet; } /** *The details of network-related information about a finding.
*/ inline void SetNetwork(const Network& value) { m_networkHasBeenSet = true; m_network = value; } /** *The details of network-related information about a finding.
*/ inline void SetNetwork(Network&& value) { m_networkHasBeenSet = true; m_network = std::move(value); } /** *The details of network-related information about a finding.
*/ inline AwsSecurityFinding& WithNetwork(const Network& value) { SetNetwork(value); return *this;} /** *The details of network-related information about a finding.
*/ inline AwsSecurityFinding& WithNetwork(Network&& value) { SetNetwork(std::move(value)); return *this;} /** *Provides information about a network path that is relevant to a finding. Each
* entry under NetworkPath
represents a component of that path.
Provides information about a network path that is relevant to a finding. Each
* entry under NetworkPath
represents a component of that path.
Provides information about a network path that is relevant to a finding. Each
* entry under NetworkPath
represents a component of that path.
Provides information about a network path that is relevant to a finding. Each
* entry under NetworkPath
represents a component of that path.
Provides information about a network path that is relevant to a finding. Each
* entry under NetworkPath
represents a component of that path.
Provides information about a network path that is relevant to a finding. Each
* entry under NetworkPath
represents a component of that path.
Provides information about a network path that is relevant to a finding. Each
* entry under NetworkPath
represents a component of that path.
Provides information about a network path that is relevant to a finding. Each
* entry under NetworkPath
represents a component of that path.
The details of process-related information about a finding.
*/ inline const ProcessDetails& GetProcess() const{ return m_process; } /** *The details of process-related information about a finding.
*/ inline bool ProcessHasBeenSet() const { return m_processHasBeenSet; } /** *The details of process-related information about a finding.
*/ inline void SetProcess(const ProcessDetails& value) { m_processHasBeenSet = true; m_process = value; } /** *The details of process-related information about a finding.
*/ inline void SetProcess(ProcessDetails&& value) { m_processHasBeenSet = true; m_process = std::move(value); } /** *The details of process-related information about a finding.
*/ inline AwsSecurityFinding& WithProcess(const ProcessDetails& value) { SetProcess(value); return *this;} /** *The details of process-related information about a finding.
*/ inline AwsSecurityFinding& WithProcess(ProcessDetails&& value) { SetProcess(std::move(value)); return *this;} /** *Details about the threat detected in a security finding and the file paths * that were affected by the threat.
*/ inline const Aws::VectorDetails about the threat detected in a security finding and the file paths * that were affected by the threat.
*/ inline bool ThreatsHasBeenSet() const { return m_threatsHasBeenSet; } /** *Details about the threat detected in a security finding and the file paths * that were affected by the threat.
*/ inline void SetThreats(const Aws::VectorDetails about the threat detected in a security finding and the file paths * that were affected by the threat.
*/ inline void SetThreats(Aws::VectorDetails about the threat detected in a security finding and the file paths * that were affected by the threat.
*/ inline AwsSecurityFinding& WithThreats(const Aws::VectorDetails about the threat detected in a security finding and the file paths * that were affected by the threat.
*/ inline AwsSecurityFinding& WithThreats(Aws::VectorDetails about the threat detected in a security finding and the file paths * that were affected by the threat.
*/ inline AwsSecurityFinding& AddThreats(const Threat& value) { m_threatsHasBeenSet = true; m_threats.push_back(value); return *this; } /** *Details about the threat detected in a security finding and the file paths * that were affected by the threat.
*/ inline AwsSecurityFinding& AddThreats(Threat&& value) { m_threatsHasBeenSet = true; m_threats.push_back(std::move(value)); return *this; } /** *Threat intelligence details related to a finding.
*/ inline const Aws::VectorThreat intelligence details related to a finding.
*/ inline bool ThreatIntelIndicatorsHasBeenSet() const { return m_threatIntelIndicatorsHasBeenSet; } /** *Threat intelligence details related to a finding.
*/ inline void SetThreatIntelIndicators(const Aws::VectorThreat intelligence details related to a finding.
*/ inline void SetThreatIntelIndicators(Aws::VectorThreat intelligence details related to a finding.
*/ inline AwsSecurityFinding& WithThreatIntelIndicators(const Aws::VectorThreat intelligence details related to a finding.
*/ inline AwsSecurityFinding& WithThreatIntelIndicators(Aws::VectorThreat intelligence details related to a finding.
*/ inline AwsSecurityFinding& AddThreatIntelIndicators(const ThreatIntelIndicator& value) { m_threatIntelIndicatorsHasBeenSet = true; m_threatIntelIndicators.push_back(value); return *this; } /** *Threat intelligence details related to a finding.
*/ inline AwsSecurityFinding& AddThreatIntelIndicators(ThreatIntelIndicator&& value) { m_threatIntelIndicatorsHasBeenSet = true; m_threatIntelIndicators.push_back(std::move(value)); return *this; } /** *A set of resource data types that describe the resources that the finding * refers to.
*/ inline const Aws::VectorA set of resource data types that describe the resources that the finding * refers to.
*/ inline bool ResourcesHasBeenSet() const { return m_resourcesHasBeenSet; } /** *A set of resource data types that describe the resources that the finding * refers to.
*/ inline void SetResources(const Aws::VectorA set of resource data types that describe the resources that the finding * refers to.
*/ inline void SetResources(Aws::VectorA set of resource data types that describe the resources that the finding * refers to.
*/ inline AwsSecurityFinding& WithResources(const Aws::VectorA set of resource data types that describe the resources that the finding * refers to.
*/ inline AwsSecurityFinding& WithResources(Aws::VectorA set of resource data types that describe the resources that the finding * refers to.
*/ inline AwsSecurityFinding& AddResources(const Resource& value) { m_resourcesHasBeenSet = true; m_resources.push_back(value); return *this; } /** *A set of resource data types that describe the resources that the finding * refers to.
*/ inline AwsSecurityFinding& AddResources(Resource&& value) { m_resourcesHasBeenSet = true; m_resources.push_back(std::move(value)); return *this; } /** *This data type is exclusive to findings that are generated as the result of a * check run against a specific rule in a supported security standard, such as CIS * Amazon Web Services Foundations. Contains security standard-related finding * details.
*/ inline const Compliance& GetCompliance() const{ return m_compliance; } /** *This data type is exclusive to findings that are generated as the result of a * check run against a specific rule in a supported security standard, such as CIS * Amazon Web Services Foundations. Contains security standard-related finding * details.
*/ inline bool ComplianceHasBeenSet() const { return m_complianceHasBeenSet; } /** *This data type is exclusive to findings that are generated as the result of a * check run against a specific rule in a supported security standard, such as CIS * Amazon Web Services Foundations. Contains security standard-related finding * details.
*/ inline void SetCompliance(const Compliance& value) { m_complianceHasBeenSet = true; m_compliance = value; } /** *This data type is exclusive to findings that are generated as the result of a * check run against a specific rule in a supported security standard, such as CIS * Amazon Web Services Foundations. Contains security standard-related finding * details.
*/ inline void SetCompliance(Compliance&& value) { m_complianceHasBeenSet = true; m_compliance = std::move(value); } /** *This data type is exclusive to findings that are generated as the result of a * check run against a specific rule in a supported security standard, such as CIS * Amazon Web Services Foundations. Contains security standard-related finding * details.
*/ inline AwsSecurityFinding& WithCompliance(const Compliance& value) { SetCompliance(value); return *this;} /** *This data type is exclusive to findings that are generated as the result of a * check run against a specific rule in a supported security standard, such as CIS * Amazon Web Services Foundations. Contains security standard-related finding * details.
*/ inline AwsSecurityFinding& WithCompliance(Compliance&& value) { SetCompliance(std::move(value)); return *this;} /** *Indicates the veracity of a finding.
*/ inline const VerificationState& GetVerificationState() const{ return m_verificationState; } /** *Indicates the veracity of a finding.
*/ inline bool VerificationStateHasBeenSet() const { return m_verificationStateHasBeenSet; } /** *Indicates the veracity of a finding.
*/ inline void SetVerificationState(const VerificationState& value) { m_verificationStateHasBeenSet = true; m_verificationState = value; } /** *Indicates the veracity of a finding.
*/ inline void SetVerificationState(VerificationState&& value) { m_verificationStateHasBeenSet = true; m_verificationState = std::move(value); } /** *Indicates the veracity of a finding.
*/ inline AwsSecurityFinding& WithVerificationState(const VerificationState& value) { SetVerificationState(value); return *this;} /** *Indicates the veracity of a finding.
*/ inline AwsSecurityFinding& WithVerificationState(VerificationState&& value) { SetVerificationState(std::move(value)); return *this;} /** *The workflow state of a finding.
*/ inline const WorkflowState& GetWorkflowState() const{ return m_workflowState; } /** *The workflow state of a finding.
*/ inline bool WorkflowStateHasBeenSet() const { return m_workflowStateHasBeenSet; } /** *The workflow state of a finding.
*/ inline void SetWorkflowState(const WorkflowState& value) { m_workflowStateHasBeenSet = true; m_workflowState = value; } /** *The workflow state of a finding.
*/ inline void SetWorkflowState(WorkflowState&& value) { m_workflowStateHasBeenSet = true; m_workflowState = std::move(value); } /** *The workflow state of a finding.
*/ inline AwsSecurityFinding& WithWorkflowState(const WorkflowState& value) { SetWorkflowState(value); return *this;} /** *The workflow state of a finding.
*/ inline AwsSecurityFinding& WithWorkflowState(WorkflowState&& value) { SetWorkflowState(std::move(value)); return *this;} /** *Provides information about the status of the investigation into a * finding.
*/ inline const Workflow& GetWorkflow() const{ return m_workflow; } /** *Provides information about the status of the investigation into a * finding.
*/ inline bool WorkflowHasBeenSet() const { return m_workflowHasBeenSet; } /** *Provides information about the status of the investigation into a * finding.
*/ inline void SetWorkflow(const Workflow& value) { m_workflowHasBeenSet = true; m_workflow = value; } /** *Provides information about the status of the investigation into a * finding.
*/ inline void SetWorkflow(Workflow&& value) { m_workflowHasBeenSet = true; m_workflow = std::move(value); } /** *Provides information about the status of the investigation into a * finding.
*/ inline AwsSecurityFinding& WithWorkflow(const Workflow& value) { SetWorkflow(value); return *this;} /** *Provides information about the status of the investigation into a * finding.
*/ inline AwsSecurityFinding& WithWorkflow(Workflow&& value) { SetWorkflow(std::move(value)); return *this;} /** *The record state of a finding.
*/ inline const RecordState& GetRecordState() const{ return m_recordState; } /** *The record state of a finding.
*/ inline bool RecordStateHasBeenSet() const { return m_recordStateHasBeenSet; } /** *The record state of a finding.
*/ inline void SetRecordState(const RecordState& value) { m_recordStateHasBeenSet = true; m_recordState = value; } /** *The record state of a finding.
*/ inline void SetRecordState(RecordState&& value) { m_recordStateHasBeenSet = true; m_recordState = std::move(value); } /** *The record state of a finding.
*/ inline AwsSecurityFinding& WithRecordState(const RecordState& value) { SetRecordState(value); return *this;} /** *The record state of a finding.
*/ inline AwsSecurityFinding& WithRecordState(RecordState&& value) { SetRecordState(std::move(value)); return *this;} /** *A list of related findings.
*/ inline const Aws::VectorA list of related findings.
*/ inline bool RelatedFindingsHasBeenSet() const { return m_relatedFindingsHasBeenSet; } /** *A list of related findings.
*/ inline void SetRelatedFindings(const Aws::VectorA list of related findings.
*/ inline void SetRelatedFindings(Aws::VectorA list of related findings.
*/ inline AwsSecurityFinding& WithRelatedFindings(const Aws::VectorA list of related findings.
*/ inline AwsSecurityFinding& WithRelatedFindings(Aws::VectorA list of related findings.
*/ inline AwsSecurityFinding& AddRelatedFindings(const RelatedFinding& value) { m_relatedFindingsHasBeenSet = true; m_relatedFindings.push_back(value); return *this; } /** *A list of related findings.
*/ inline AwsSecurityFinding& AddRelatedFindings(RelatedFinding&& value) { m_relatedFindingsHasBeenSet = true; m_relatedFindings.push_back(std::move(value)); return *this; } /** *A user-defined note added to a finding.
*/ inline const Note& GetNote() const{ return m_note; } /** *A user-defined note added to a finding.
*/ inline bool NoteHasBeenSet() const { return m_noteHasBeenSet; } /** *A user-defined note added to a finding.
*/ inline void SetNote(const Note& value) { m_noteHasBeenSet = true; m_note = value; } /** *A user-defined note added to a finding.
*/ inline void SetNote(Note&& value) { m_noteHasBeenSet = true; m_note = std::move(value); } /** *A user-defined note added to a finding.
*/ inline AwsSecurityFinding& WithNote(const Note& value) { SetNote(value); return *this;} /** *A user-defined note added to a finding.
*/ inline AwsSecurityFinding& WithNote(Note&& value) { SetNote(std::move(value)); return *this;} /** *Provides a list of vulnerabilities associated with the findings.
*/ inline const Aws::VectorProvides a list of vulnerabilities associated with the findings.
*/ inline bool VulnerabilitiesHasBeenSet() const { return m_vulnerabilitiesHasBeenSet; } /** *Provides a list of vulnerabilities associated with the findings.
*/ inline void SetVulnerabilities(const Aws::VectorProvides a list of vulnerabilities associated with the findings.
*/ inline void SetVulnerabilities(Aws::VectorProvides a list of vulnerabilities associated with the findings.
*/ inline AwsSecurityFinding& WithVulnerabilities(const Aws::VectorProvides a list of vulnerabilities associated with the findings.
*/ inline AwsSecurityFinding& WithVulnerabilities(Aws::VectorProvides a list of vulnerabilities associated with the findings.
*/ inline AwsSecurityFinding& AddVulnerabilities(const Vulnerability& value) { m_vulnerabilitiesHasBeenSet = true; m_vulnerabilities.push_back(value); return *this; } /** *Provides a list of vulnerabilities associated with the findings.
*/ inline AwsSecurityFinding& AddVulnerabilities(Vulnerability&& value) { m_vulnerabilitiesHasBeenSet = true; m_vulnerabilities.push_back(std::move(value)); return *this; } /** *Provides an overview of the patch compliance status for an instance against a * selected compliance standard.
*/ inline const PatchSummary& GetPatchSummary() const{ return m_patchSummary; } /** *Provides an overview of the patch compliance status for an instance against a * selected compliance standard.
*/ inline bool PatchSummaryHasBeenSet() const { return m_patchSummaryHasBeenSet; } /** *Provides an overview of the patch compliance status for an instance against a * selected compliance standard.
*/ inline void SetPatchSummary(const PatchSummary& value) { m_patchSummaryHasBeenSet = true; m_patchSummary = value; } /** *Provides an overview of the patch compliance status for an instance against a * selected compliance standard.
*/ inline void SetPatchSummary(PatchSummary&& value) { m_patchSummaryHasBeenSet = true; m_patchSummary = std::move(value); } /** *Provides an overview of the patch compliance status for an instance against a * selected compliance standard.
*/ inline AwsSecurityFinding& WithPatchSummary(const PatchSummary& value) { SetPatchSummary(value); return *this;} /** *Provides an overview of the patch compliance status for an instance against a * selected compliance standard.
*/ inline AwsSecurityFinding& WithPatchSummary(PatchSummary&& value) { SetPatchSummary(std::move(value)); return *this;} /** *Provides details about an action that affects or that was taken on a * resource.
*/ inline const Action& GetAction() const{ return m_action; } /** *Provides details about an action that affects or that was taken on a * resource.
*/ inline bool ActionHasBeenSet() const { return m_actionHasBeenSet; } /** *Provides details about an action that affects or that was taken on a * resource.
*/ inline void SetAction(const Action& value) { m_actionHasBeenSet = true; m_action = value; } /** *Provides details about an action that affects or that was taken on a * resource.
*/ inline void SetAction(Action&& value) { m_actionHasBeenSet = true; m_action = std::move(value); } /** *Provides details about an action that affects or that was taken on a * resource.
*/ inline AwsSecurityFinding& WithAction(const Action& value) { SetAction(value); return *this;} /** *Provides details about an action that affects or that was taken on a * resource.
*/ inline AwsSecurityFinding& WithAction(Action&& value) { SetAction(std::move(value)); return *this;} /** *In a BatchImportFindings
request, finding providers use
* FindingProviderFields
to provide and update their own values for
* confidence, criticality, related findings, severity, and types.
In a BatchImportFindings
request, finding providers use
* FindingProviderFields
to provide and update their own values for
* confidence, criticality, related findings, severity, and types.
In a BatchImportFindings
request, finding providers use
* FindingProviderFields
to provide and update their own values for
* confidence, criticality, related findings, severity, and types.
In a BatchImportFindings
request, finding providers use
* FindingProviderFields
to provide and update their own values for
* confidence, criticality, related findings, severity, and types.
In a BatchImportFindings
request, finding providers use
* FindingProviderFields
to provide and update their own values for
* confidence, criticality, related findings, severity, and types.
In a BatchImportFindings
request, finding providers use
* FindingProviderFields
to provide and update their own values for
* confidence, criticality, related findings, severity, and types.
Indicates whether the finding is a sample finding.
*/ inline bool GetSample() const{ return m_sample; } /** *Indicates whether the finding is a sample finding.
*/ inline bool SampleHasBeenSet() const { return m_sampleHasBeenSet; } /** *Indicates whether the finding is a sample finding.
*/ inline void SetSample(bool value) { m_sampleHasBeenSet = true; m_sample = value; } /** *Indicates whether the finding is a sample finding.
*/ inline AwsSecurityFinding& WithSample(bool value) { SetSample(value); return *this;} private: Aws::String m_schemaVersion; bool m_schemaVersionHasBeenSet = false; Aws::String m_id; bool m_idHasBeenSet = false; Aws::String m_productArn; bool m_productArnHasBeenSet = false; Aws::String m_productName; bool m_productNameHasBeenSet = false; Aws::String m_companyName; bool m_companyNameHasBeenSet = false; Aws::String m_region; bool m_regionHasBeenSet = false; Aws::String m_generatorId; bool m_generatorIdHasBeenSet = false; Aws::String m_awsAccountId; bool m_awsAccountIdHasBeenSet = false; Aws::Vector