/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Configuration of the firewall behavior provided by DNS Firewall for a single
* VPC from Amazon Virtual Private Cloud (Amazon VPC). See Also:
* AWS
* API Reference
The ID of the firewall configuration.
*/ inline const Aws::String& GetId() const{ return m_id; } /** *The ID of the firewall configuration.
*/ inline bool IdHasBeenSet() const { return m_idHasBeenSet; } /** *The ID of the firewall configuration.
*/ inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; } /** *The ID of the firewall configuration.
*/ inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); } /** *The ID of the firewall configuration.
*/ inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); } /** *The ID of the firewall configuration.
*/ inline FirewallConfig& WithId(const Aws::String& value) { SetId(value); return *this;} /** *The ID of the firewall configuration.
*/ inline FirewallConfig& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;} /** *The ID of the firewall configuration.
*/ inline FirewallConfig& WithId(const char* value) { SetId(value); return *this;} /** *The ID of the VPC that this firewall configuration applies to.
*/ inline const Aws::String& GetResourceId() const{ return m_resourceId; } /** *The ID of the VPC that this firewall configuration applies to.
*/ inline bool ResourceIdHasBeenSet() const { return m_resourceIdHasBeenSet; } /** *The ID of the VPC that this firewall configuration applies to.
*/ inline void SetResourceId(const Aws::String& value) { m_resourceIdHasBeenSet = true; m_resourceId = value; } /** *The ID of the VPC that this firewall configuration applies to.
*/ inline void SetResourceId(Aws::String&& value) { m_resourceIdHasBeenSet = true; m_resourceId = std::move(value); } /** *The ID of the VPC that this firewall configuration applies to.
*/ inline void SetResourceId(const char* value) { m_resourceIdHasBeenSet = true; m_resourceId.assign(value); } /** *The ID of the VPC that this firewall configuration applies to.
*/ inline FirewallConfig& WithResourceId(const Aws::String& value) { SetResourceId(value); return *this;} /** *The ID of the VPC that this firewall configuration applies to.
*/ inline FirewallConfig& WithResourceId(Aws::String&& value) { SetResourceId(std::move(value)); return *this;} /** *The ID of the VPC that this firewall configuration applies to.
*/ inline FirewallConfig& WithResourceId(const char* value) { SetResourceId(value); return *this;} /** *The Amazon Web Services account ID of the owner of the VPC that this firewall * configuration applies to.
*/ inline const Aws::String& GetOwnerId() const{ return m_ownerId; } /** *The Amazon Web Services account ID of the owner of the VPC that this firewall * configuration applies to.
*/ inline bool OwnerIdHasBeenSet() const { return m_ownerIdHasBeenSet; } /** *The Amazon Web Services account ID of the owner of the VPC that this firewall * configuration applies to.
*/ inline void SetOwnerId(const Aws::String& value) { m_ownerIdHasBeenSet = true; m_ownerId = value; } /** *The Amazon Web Services account ID of the owner of the VPC that this firewall * configuration applies to.
*/ inline void SetOwnerId(Aws::String&& value) { m_ownerIdHasBeenSet = true; m_ownerId = std::move(value); } /** *The Amazon Web Services account ID of the owner of the VPC that this firewall * configuration applies to.
*/ inline void SetOwnerId(const char* value) { m_ownerIdHasBeenSet = true; m_ownerId.assign(value); } /** *The Amazon Web Services account ID of the owner of the VPC that this firewall * configuration applies to.
*/ inline FirewallConfig& WithOwnerId(const Aws::String& value) { SetOwnerId(value); return *this;} /** *The Amazon Web Services account ID of the owner of the VPC that this firewall * configuration applies to.
*/ inline FirewallConfig& WithOwnerId(Aws::String&& value) { SetOwnerId(std::move(value)); return *this;} /** *The Amazon Web Services account ID of the owner of the VPC that this firewall * configuration applies to.
*/ inline FirewallConfig& WithOwnerId(const char* value) { SetOwnerId(value); return *this;} /** *Determines how DNS Firewall operates during failures, for example when all * traffic that is sent to DNS Firewall fails to receive a reply.
By default, fail open is disabled, which means the failure mode is closed. * This approach favors security over availability. DNS Firewall returns a failure * error when it is unable to properly evaluate a query.
If you * enable this option, the failure mode is open. This approach favors availability * over security. DNS Firewall allows queries to proceed if it is unable to * properly evaluate them.
This behavior is only enforced for * VPCs that have at least one DNS Firewall rule group association.
*/ inline const FirewallFailOpenStatus& GetFirewallFailOpen() const{ return m_firewallFailOpen; } /** *Determines how DNS Firewall operates during failures, for example when all * traffic that is sent to DNS Firewall fails to receive a reply.
By default, fail open is disabled, which means the failure mode is closed. * This approach favors security over availability. DNS Firewall returns a failure * error when it is unable to properly evaluate a query.
If you * enable this option, the failure mode is open. This approach favors availability * over security. DNS Firewall allows queries to proceed if it is unable to * properly evaluate them.
This behavior is only enforced for * VPCs that have at least one DNS Firewall rule group association.
*/ inline bool FirewallFailOpenHasBeenSet() const { return m_firewallFailOpenHasBeenSet; } /** *Determines how DNS Firewall operates during failures, for example when all * traffic that is sent to DNS Firewall fails to receive a reply.
By default, fail open is disabled, which means the failure mode is closed. * This approach favors security over availability. DNS Firewall returns a failure * error when it is unable to properly evaluate a query.
If you * enable this option, the failure mode is open. This approach favors availability * over security. DNS Firewall allows queries to proceed if it is unable to * properly evaluate them.
This behavior is only enforced for * VPCs that have at least one DNS Firewall rule group association.
*/ inline void SetFirewallFailOpen(const FirewallFailOpenStatus& value) { m_firewallFailOpenHasBeenSet = true; m_firewallFailOpen = value; } /** *Determines how DNS Firewall operates during failures, for example when all * traffic that is sent to DNS Firewall fails to receive a reply.
By default, fail open is disabled, which means the failure mode is closed. * This approach favors security over availability. DNS Firewall returns a failure * error when it is unable to properly evaluate a query.
If you * enable this option, the failure mode is open. This approach favors availability * over security. DNS Firewall allows queries to proceed if it is unable to * properly evaluate them.
This behavior is only enforced for * VPCs that have at least one DNS Firewall rule group association.
*/ inline void SetFirewallFailOpen(FirewallFailOpenStatus&& value) { m_firewallFailOpenHasBeenSet = true; m_firewallFailOpen = std::move(value); } /** *Determines how DNS Firewall operates during failures, for example when all * traffic that is sent to DNS Firewall fails to receive a reply.
By default, fail open is disabled, which means the failure mode is closed. * This approach favors security over availability. DNS Firewall returns a failure * error when it is unable to properly evaluate a query.
If you * enable this option, the failure mode is open. This approach favors availability * over security. DNS Firewall allows queries to proceed if it is unable to * properly evaluate them.
This behavior is only enforced for * VPCs that have at least one DNS Firewall rule group association.
*/ inline FirewallConfig& WithFirewallFailOpen(const FirewallFailOpenStatus& value) { SetFirewallFailOpen(value); return *this;} /** *Determines how DNS Firewall operates during failures, for example when all * traffic that is sent to DNS Firewall fails to receive a reply.
By default, fail open is disabled, which means the failure mode is closed. * This approach favors security over availability. DNS Firewall returns a failure * error when it is unable to properly evaluate a query.
If you * enable this option, the failure mode is open. This approach favors availability * over security. DNS Firewall allows queries to proceed if it is unable to * properly evaluate them.
This behavior is only enforced for * VPCs that have at least one DNS Firewall rule group association.
*/ inline FirewallConfig& WithFirewallFailOpen(FirewallFailOpenStatus&& value) { SetFirewallFailOpen(std::move(value)); return *this;} private: Aws::String m_id; bool m_idHasBeenSet = false; Aws::String m_resourceId; bool m_resourceIdHasBeenSet = false; Aws::String m_ownerId; bool m_ownerIdHasBeenSet = false; FirewallFailOpenStatus m_firewallFailOpen; bool m_firewallFailOpenHasBeenSet = false; }; } // namespace Model } // namespace Route53Resolver } // namespace Aws