/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace SecurityHub { namespace Model { /** *

The severity of the finding.

The finding provider can provide the * initial severity. The finding provider can only update the severity if it hasn't * been updated using BatchUpdateFindings.

The finding must * have either Label or Normalized populated. If only one * of these attributes is populated, then Security Hub automatically populates the * other one. If neither attribute is populated, then the finding is invalid. * Label is the preferred attribute.

See Also:

AWS * API Reference

*/ class Severity { public: AWS_SECURITYHUB_API Severity(); AWS_SECURITYHUB_API Severity(Aws::Utils::Json::JsonView jsonValue); AWS_SECURITYHUB_API Severity& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_SECURITYHUB_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

Deprecated. This attribute is being deprecated. Instead of providing * Product, provide Original.

The native severity * as defined by the Amazon Web Services service or integrated partner product that * generated the finding.

*/ inline double GetProduct() const{ return m_product; } /** *

Deprecated. This attribute is being deprecated. Instead of providing * Product, provide Original.

The native severity * as defined by the Amazon Web Services service or integrated partner product that * generated the finding.

*/ inline bool ProductHasBeenSet() const { return m_productHasBeenSet; } /** *

Deprecated. This attribute is being deprecated. Instead of providing * Product, provide Original.

The native severity * as defined by the Amazon Web Services service or integrated partner product that * generated the finding.

*/ inline void SetProduct(double value) { m_productHasBeenSet = true; m_product = value; } /** *

Deprecated. This attribute is being deprecated. Instead of providing * Product, provide Original.

The native severity * as defined by the Amazon Web Services service or integrated partner product that * generated the finding.

*/ inline Severity& WithProduct(double value) { SetProduct(value); return *this;} /** *

The severity value of the finding. The allowed values are the following.

*
  • INFORMATIONAL - No issue was found.

  • *

    LOW - The issue does not require action on its own.

  • *
  • MEDIUM - The issue must be addressed but not urgently.

    *
  • HIGH - The issue must be addressed as a * priority.

  • CRITICAL - The issue must be * remediated immediately to avoid it escalating.

If you provide * Normalized and do not provide Label, then * Label is set automatically as follows.

  • 0 - * INFORMATIONAL

  • 1–39 - LOW

  • *
  • 40–69 - MEDIUM

  • 70–89 - HIGH *

  • 90–100 - CRITICAL

*/ inline const SeverityLabel& GetLabel() const{ return m_label; } /** *

The severity value of the finding. The allowed values are the following.

*
  • INFORMATIONAL - No issue was found.

  • *

    LOW - The issue does not require action on its own.

  • *
  • MEDIUM - The issue must be addressed but not urgently.

    *
  • HIGH - The issue must be addressed as a * priority.

  • CRITICAL - The issue must be * remediated immediately to avoid it escalating.

If you provide * Normalized and do not provide Label, then * Label is set automatically as follows.

  • 0 - * INFORMATIONAL

  • 1–39 - LOW

  • *
  • 40–69 - MEDIUM

  • 70–89 - HIGH *

  • 90–100 - CRITICAL

*/ inline bool LabelHasBeenSet() const { return m_labelHasBeenSet; } /** *

The severity value of the finding. The allowed values are the following.

*
  • INFORMATIONAL - No issue was found.

  • *

    LOW - The issue does not require action on its own.

  • *
  • MEDIUM - The issue must be addressed but not urgently.

    *
  • HIGH - The issue must be addressed as a * priority.

  • CRITICAL - The issue must be * remediated immediately to avoid it escalating.

If you provide * Normalized and do not provide Label, then * Label is set automatically as follows.

  • 0 - * INFORMATIONAL

  • 1–39 - LOW

  • *
  • 40–69 - MEDIUM

  • 70–89 - HIGH *

  • 90–100 - CRITICAL

*/ inline void SetLabel(const SeverityLabel& value) { m_labelHasBeenSet = true; m_label = value; } /** *

The severity value of the finding. The allowed values are the following.

*
  • INFORMATIONAL - No issue was found.

  • *

    LOW - The issue does not require action on its own.

  • *
  • MEDIUM - The issue must be addressed but not urgently.

    *
  • HIGH - The issue must be addressed as a * priority.

  • CRITICAL - The issue must be * remediated immediately to avoid it escalating.

If you provide * Normalized and do not provide Label, then * Label is set automatically as follows.

  • 0 - * INFORMATIONAL

  • 1–39 - LOW

  • *
  • 40–69 - MEDIUM

  • 70–89 - HIGH *

  • 90–100 - CRITICAL

*/ inline void SetLabel(SeverityLabel&& value) { m_labelHasBeenSet = true; m_label = std::move(value); } /** *

The severity value of the finding. The allowed values are the following.

*
  • INFORMATIONAL - No issue was found.

  • *

    LOW - The issue does not require action on its own.

  • *
  • MEDIUM - The issue must be addressed but not urgently.

    *
  • HIGH - The issue must be addressed as a * priority.

  • CRITICAL - The issue must be * remediated immediately to avoid it escalating.

If you provide * Normalized and do not provide Label, then * Label is set automatically as follows.

  • 0 - * INFORMATIONAL

  • 1–39 - LOW

  • *
  • 40–69 - MEDIUM

  • 70–89 - HIGH *

  • 90–100 - CRITICAL

*/ inline Severity& WithLabel(const SeverityLabel& value) { SetLabel(value); return *this;} /** *

The severity value of the finding. The allowed values are the following.

*
  • INFORMATIONAL - No issue was found.

  • *

    LOW - The issue does not require action on its own.

  • *
  • MEDIUM - The issue must be addressed but not urgently.

    *
  • HIGH - The issue must be addressed as a * priority.

  • CRITICAL - The issue must be * remediated immediately to avoid it escalating.

If you provide * Normalized and do not provide Label, then * Label is set automatically as follows.

  • 0 - * INFORMATIONAL

  • 1–39 - LOW

  • *
  • 40–69 - MEDIUM

  • 70–89 - HIGH *

  • 90–100 - CRITICAL

*/ inline Severity& WithLabel(SeverityLabel&& value) { SetLabel(std::move(value)); return *this;} /** *

Deprecated. The normalized severity of a finding. This attribute is being * deprecated. Instead of providing Normalized, provide * Label.

If you provide Label and do not provide * Normalized, then Normalized is set automatically as * follows.

  • INFORMATIONAL - 0

  • * LOW - 1

  • MEDIUM - 40

  • *

    HIGH - 70

  • CRITICAL - 90

    *
*/ inline int GetNormalized() const{ return m_normalized; } /** *

Deprecated. The normalized severity of a finding. This attribute is being * deprecated. Instead of providing Normalized, provide * Label.

If you provide Label and do not provide * Normalized, then Normalized is set automatically as * follows.

  • INFORMATIONAL - 0

  • * LOW - 1

  • MEDIUM - 40

  • *

    HIGH - 70

  • CRITICAL - 90

    *
*/ inline bool NormalizedHasBeenSet() const { return m_normalizedHasBeenSet; } /** *

Deprecated. The normalized severity of a finding. This attribute is being * deprecated. Instead of providing Normalized, provide * Label.

If you provide Label and do not provide * Normalized, then Normalized is set automatically as * follows.

  • INFORMATIONAL - 0

  • * LOW - 1

  • MEDIUM - 40

  • *

    HIGH - 70

  • CRITICAL - 90

    *
*/ inline void SetNormalized(int value) { m_normalizedHasBeenSet = true; m_normalized = value; } /** *

Deprecated. The normalized severity of a finding. This attribute is being * deprecated. Instead of providing Normalized, provide * Label.

If you provide Label and do not provide * Normalized, then Normalized is set automatically as * follows.

  • INFORMATIONAL - 0

  • * LOW - 1

  • MEDIUM - 40

  • *

    HIGH - 70

  • CRITICAL - 90

    *
*/ inline Severity& WithNormalized(int value) { SetNormalized(value); return *this;} /** *

The native severity from the finding product that generated the finding.

*/ inline const Aws::String& GetOriginal() const{ return m_original; } /** *

The native severity from the finding product that generated the finding.

*/ inline bool OriginalHasBeenSet() const { return m_originalHasBeenSet; } /** *

The native severity from the finding product that generated the finding.

*/ inline void SetOriginal(const Aws::String& value) { m_originalHasBeenSet = true; m_original = value; } /** *

The native severity from the finding product that generated the finding.

*/ inline void SetOriginal(Aws::String&& value) { m_originalHasBeenSet = true; m_original = std::move(value); } /** *

The native severity from the finding product that generated the finding.

*/ inline void SetOriginal(const char* value) { m_originalHasBeenSet = true; m_original.assign(value); } /** *

The native severity from the finding product that generated the finding.

*/ inline Severity& WithOriginal(const Aws::String& value) { SetOriginal(value); return *this;} /** *

The native severity from the finding product that generated the finding.

*/ inline Severity& WithOriginal(Aws::String&& value) { SetOriginal(std::move(value)); return *this;} /** *

The native severity from the finding product that generated the finding.

*/ inline Severity& WithOriginal(const char* value) { SetOriginal(value); return *this;} private: double m_product; bool m_productHasBeenSet = false; SeverityLabel m_label; bool m_labelHasBeenSet = false; int m_normalized; bool m_normalizedHasBeenSet = false; Aws::String m_original; bool m_originalHasBeenSet = false; }; } // namespace Model } // namespace SecurityHub } // namespace Aws