/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include namespace Aws { template class AmazonWebServiceResult; namespace Utils { namespace Json { class JsonValue; } // namespace Json } // namespace Utils namespace SecurityHub { namespace Model { class DescribeHubResult { public: AWS_SECURITYHUB_API DescribeHubResult(); AWS_SECURITYHUB_API DescribeHubResult(const Aws::AmazonWebServiceResult& result); AWS_SECURITYHUB_API DescribeHubResult& operator=(const Aws::AmazonWebServiceResult& result); /** *

The ARN of the Hub resource that was retrieved.

*/ inline const Aws::String& GetHubArn() const{ return m_hubArn; } /** *

The ARN of the Hub resource that was retrieved.

*/ inline void SetHubArn(const Aws::String& value) { m_hubArn = value; } /** *

The ARN of the Hub resource that was retrieved.

*/ inline void SetHubArn(Aws::String&& value) { m_hubArn = std::move(value); } /** *

The ARN of the Hub resource that was retrieved.

*/ inline void SetHubArn(const char* value) { m_hubArn.assign(value); } /** *

The ARN of the Hub resource that was retrieved.

*/ inline DescribeHubResult& WithHubArn(const Aws::String& value) { SetHubArn(value); return *this;} /** *

The ARN of the Hub resource that was retrieved.

*/ inline DescribeHubResult& WithHubArn(Aws::String&& value) { SetHubArn(std::move(value)); return *this;} /** *

The ARN of the Hub resource that was retrieved.

*/ inline DescribeHubResult& WithHubArn(const char* value) { SetHubArn(value); return *this;} /** *

The date and time when Security Hub was enabled in the account.

*/ inline const Aws::String& GetSubscribedAt() const{ return m_subscribedAt; } /** *

The date and time when Security Hub was enabled in the account.

*/ inline void SetSubscribedAt(const Aws::String& value) { m_subscribedAt = value; } /** *

The date and time when Security Hub was enabled in the account.

*/ inline void SetSubscribedAt(Aws::String&& value) { m_subscribedAt = std::move(value); } /** *

The date and time when Security Hub was enabled in the account.

*/ inline void SetSubscribedAt(const char* value) { m_subscribedAt.assign(value); } /** *

The date and time when Security Hub was enabled in the account.

*/ inline DescribeHubResult& WithSubscribedAt(const Aws::String& value) { SetSubscribedAt(value); return *this;} /** *

The date and time when Security Hub was enabled in the account.

*/ inline DescribeHubResult& WithSubscribedAt(Aws::String&& value) { SetSubscribedAt(std::move(value)); return *this;} /** *

The date and time when Security Hub was enabled in the account.

*/ inline DescribeHubResult& WithSubscribedAt(const char* value) { SetSubscribedAt(value); return *this;} /** *

Whether to automatically enable new controls when they are added to standards * that are enabled.

If set to true, then new controls for * enabled standards are enabled automatically. If set to false, then * new controls are not enabled.

*/ inline bool GetAutoEnableControls() const{ return m_autoEnableControls; } /** *

Whether to automatically enable new controls when they are added to standards * that are enabled.

If set to true, then new controls for * enabled standards are enabled automatically. If set to false, then * new controls are not enabled.

*/ inline void SetAutoEnableControls(bool value) { m_autoEnableControls = value; } /** *

Whether to automatically enable new controls when they are added to standards * that are enabled.

If set to true, then new controls for * enabled standards are enabled automatically. If set to false, then * new controls are not enabled.

*/ inline DescribeHubResult& WithAutoEnableControls(bool value) { SetAutoEnableControls(value); return *this;} /** *

Specifies whether the calling account has consolidated control findings * turned on. If the value for this field is set to SECURITY_CONTROL, * Security Hub generates a single finding for a control check even when the check * applies to multiple enabled standards.

If the value for this field is set * to STANDARD_CONTROL, Security Hub generates separate findings for a * control check when the check applies to multiple enabled standards.

The * value for this field in a member account matches the value in the administrator * account. For accounts that aren't part of an organization, the default value of * this field is SECURITY_CONTROL if you enabled Security Hub on or * after February 23, 2023.

*/ inline const ControlFindingGenerator& GetControlFindingGenerator() const{ return m_controlFindingGenerator; } /** *

Specifies whether the calling account has consolidated control findings * turned on. If the value for this field is set to SECURITY_CONTROL, * Security Hub generates a single finding for a control check even when the check * applies to multiple enabled standards.

If the value for this field is set * to STANDARD_CONTROL, Security Hub generates separate findings for a * control check when the check applies to multiple enabled standards.

The * value for this field in a member account matches the value in the administrator * account. For accounts that aren't part of an organization, the default value of * this field is SECURITY_CONTROL if you enabled Security Hub on or * after February 23, 2023.

*/ inline void SetControlFindingGenerator(const ControlFindingGenerator& value) { m_controlFindingGenerator = value; } /** *

Specifies whether the calling account has consolidated control findings * turned on. If the value for this field is set to SECURITY_CONTROL, * Security Hub generates a single finding for a control check even when the check * applies to multiple enabled standards.

If the value for this field is set * to STANDARD_CONTROL, Security Hub generates separate findings for a * control check when the check applies to multiple enabled standards.

The * value for this field in a member account matches the value in the administrator * account. For accounts that aren't part of an organization, the default value of * this field is SECURITY_CONTROL if you enabled Security Hub on or * after February 23, 2023.

*/ inline void SetControlFindingGenerator(ControlFindingGenerator&& value) { m_controlFindingGenerator = std::move(value); } /** *

Specifies whether the calling account has consolidated control findings * turned on. If the value for this field is set to SECURITY_CONTROL, * Security Hub generates a single finding for a control check even when the check * applies to multiple enabled standards.

If the value for this field is set * to STANDARD_CONTROL, Security Hub generates separate findings for a * control check when the check applies to multiple enabled standards.

The * value for this field in a member account matches the value in the administrator * account. For accounts that aren't part of an organization, the default value of * this field is SECURITY_CONTROL if you enabled Security Hub on or * after February 23, 2023.

*/ inline DescribeHubResult& WithControlFindingGenerator(const ControlFindingGenerator& value) { SetControlFindingGenerator(value); return *this;} /** *

Specifies whether the calling account has consolidated control findings * turned on. If the value for this field is set to SECURITY_CONTROL, * Security Hub generates a single finding for a control check even when the check * applies to multiple enabled standards.

If the value for this field is set * to STANDARD_CONTROL, Security Hub generates separate findings for a * control check when the check applies to multiple enabled standards.

The * value for this field in a member account matches the value in the administrator * account. For accounts that aren't part of an organization, the default value of * this field is SECURITY_CONTROL if you enabled Security Hub on or * after February 23, 2023.

*/ inline DescribeHubResult& WithControlFindingGenerator(ControlFindingGenerator&& value) { SetControlFindingGenerator(std::move(value)); return *this;} inline const Aws::String& GetRequestId() const{ return m_requestId; } inline void SetRequestId(const Aws::String& value) { m_requestId = value; } inline void SetRequestId(Aws::String&& value) { m_requestId = std::move(value); } inline void SetRequestId(const char* value) { m_requestId.assign(value); } inline DescribeHubResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} inline DescribeHubResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} inline DescribeHubResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} private: Aws::String m_hubArn; Aws::String m_subscribedAt; bool m_autoEnableControls; ControlFindingGenerator m_controlFindingGenerator; Aws::String m_requestId; }; } // namespace Model } // namespace SecurityHub } // namespace Aws