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

Contains information on how the bucker owner's S3 Block Public Access * settings are being applied to the S3 bucket. See S3 * Block Public Access for more information.

See Also:

AWS * API Reference

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

Indicates if S3 Block Public Access is set to * IgnorePublicAcls.

*/ inline bool GetIgnorePublicAcls() const{ return m_ignorePublicAcls; } /** *

Indicates if S3 Block Public Access is set to * IgnorePublicAcls.

*/ inline bool IgnorePublicAclsHasBeenSet() const { return m_ignorePublicAclsHasBeenSet; } /** *

Indicates if S3 Block Public Access is set to * IgnorePublicAcls.

*/ inline void SetIgnorePublicAcls(bool value) { m_ignorePublicAclsHasBeenSet = true; m_ignorePublicAcls = value; } /** *

Indicates if S3 Block Public Access is set to * IgnorePublicAcls.

*/ inline BlockPublicAccess& WithIgnorePublicAcls(bool value) { SetIgnorePublicAcls(value); return *this;} /** *

Indicates if S3 Block Public Access is set to * RestrictPublicBuckets.

*/ inline bool GetRestrictPublicBuckets() const{ return m_restrictPublicBuckets; } /** *

Indicates if S3 Block Public Access is set to * RestrictPublicBuckets.

*/ inline bool RestrictPublicBucketsHasBeenSet() const { return m_restrictPublicBucketsHasBeenSet; } /** *

Indicates if S3 Block Public Access is set to * RestrictPublicBuckets.

*/ inline void SetRestrictPublicBuckets(bool value) { m_restrictPublicBucketsHasBeenSet = true; m_restrictPublicBuckets = value; } /** *

Indicates if S3 Block Public Access is set to * RestrictPublicBuckets.

*/ inline BlockPublicAccess& WithRestrictPublicBuckets(bool value) { SetRestrictPublicBuckets(value); return *this;} /** *

Indicates if S3 Block Public Access is set to * BlockPublicAcls.

*/ inline bool GetBlockPublicAcls() const{ return m_blockPublicAcls; } /** *

Indicates if S3 Block Public Access is set to * BlockPublicAcls.

*/ inline bool BlockPublicAclsHasBeenSet() const { return m_blockPublicAclsHasBeenSet; } /** *

Indicates if S3 Block Public Access is set to * BlockPublicAcls.

*/ inline void SetBlockPublicAcls(bool value) { m_blockPublicAclsHasBeenSet = true; m_blockPublicAcls = value; } /** *

Indicates if S3 Block Public Access is set to * BlockPublicAcls.

*/ inline BlockPublicAccess& WithBlockPublicAcls(bool value) { SetBlockPublicAcls(value); return *this;} /** *

Indicates if S3 Block Public Access is set to * BlockPublicPolicy.

*/ inline bool GetBlockPublicPolicy() const{ return m_blockPublicPolicy; } /** *

Indicates if S3 Block Public Access is set to * BlockPublicPolicy.

*/ inline bool BlockPublicPolicyHasBeenSet() const { return m_blockPublicPolicyHasBeenSet; } /** *

Indicates if S3 Block Public Access is set to * BlockPublicPolicy.

*/ inline void SetBlockPublicPolicy(bool value) { m_blockPublicPolicyHasBeenSet = true; m_blockPublicPolicy = value; } /** *

Indicates if S3 Block Public Access is set to * BlockPublicPolicy.

*/ inline BlockPublicAccess& WithBlockPublicPolicy(bool value) { SetBlockPublicPolicy(value); return *this;} private: bool m_ignorePublicAcls; bool m_ignorePublicAclsHasBeenSet = false; bool m_restrictPublicBuckets; bool m_restrictPublicBucketsHasBeenSet = false; bool m_blockPublicAcls; bool m_blockPublicAclsHasBeenSet = false; bool m_blockPublicPolicy; bool m_blockPublicPolicyHasBeenSet = false; }; } // namespace Model } // namespace GuardDuty } // namespace Aws