/* * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ /* * Do not modify this file. This file is generated from the fms-2018-01-01.normal.json service model. */ using System; using System.Collections.Generic; using System.Xml.Serialization; using System.Text; using System.IO; using System.Net; using Amazon.Runtime; using Amazon.Runtime.Internal; namespace Amazon.FMS.Model { /// /// Details of the Firewall Manager policy. /// public partial class PolicySummary { private bool? _deleteUnusedFMManagedResources; private string _policyArn; private string _policyId; private string _policyName; private CustomerPolicyStatus _policyStatus; private bool? _remediationEnabled; private string _resourceType; private SecurityServiceType _securityServiceType; /// /// Gets and sets the property DeleteUnusedFMManagedResources. /// /// Indicates whether Firewall Manager should automatically remove protections from resources /// that leave the policy scope and clean up resources that Firewall Manager is managing /// for accounts when those accounts leave policy scope. For example, Firewall Manager /// will disassociate a Firewall Manager managed web ACL from a protected customer resource /// when the customer resource leaves policy scope. /// /// /// /// By default, Firewall Manager doesn't remove protections or delete Firewall Manager /// managed resources. /// /// /// /// This option is not available for Shield Advanced or WAF Classic policies. /// /// public bool DeleteUnusedFMManagedResources { get { return this._deleteUnusedFMManagedResources.GetValueOrDefault(); } set { this._deleteUnusedFMManagedResources = value; } } // Check to see if DeleteUnusedFMManagedResources property is set internal bool IsSetDeleteUnusedFMManagedResources() { return this._deleteUnusedFMManagedResources.HasValue; } /// /// Gets and sets the property PolicyArn. /// /// The Amazon Resource Name (ARN) of the specified policy. /// /// [AWSProperty(Min=1, Max=1024)] public string PolicyArn { get { return this._policyArn; } set { this._policyArn = value; } } // Check to see if PolicyArn property is set internal bool IsSetPolicyArn() { return this._policyArn != null; } /// /// Gets and sets the property PolicyId. /// /// The ID of the specified policy. /// /// [AWSProperty(Min=36, Max=36)] public string PolicyId { get { return this._policyId; } set { this._policyId = value; } } // Check to see if PolicyId property is set internal bool IsSetPolicyId() { return this._policyId != null; } /// /// Gets and sets the property PolicyName. /// /// The name of the specified policy. /// /// [AWSProperty(Min=1, Max=128)] public string PolicyName { get { return this._policyName; } set { this._policyName = value; } } // Check to see if PolicyName property is set internal bool IsSetPolicyName() { return this._policyName != null; } /// /// Gets and sets the property PolicyStatus. /// /// Indicates whether the policy is in or out of an admin's policy or Region scope. /// /// /// public CustomerPolicyStatus PolicyStatus { get { return this._policyStatus; } set { this._policyStatus = value; } } // Check to see if PolicyStatus property is set internal bool IsSetPolicyStatus() { return this._policyStatus != null; } /// /// Gets and sets the property RemediationEnabled. /// /// Indicates if the policy should be automatically applied to new resources. /// /// public bool RemediationEnabled { get { return this._remediationEnabled.GetValueOrDefault(); } set { this._remediationEnabled = value; } } // Check to see if RemediationEnabled property is set internal bool IsSetRemediationEnabled() { return this._remediationEnabled.HasValue; } /// /// Gets and sets the property ResourceType. /// /// The type of resource protected by or in scope of the policy. This is in the format /// shown in the Amazon /// Web Services Resource Types Reference. For WAF and Shield Advanced, examples include /// AWS::ElasticLoadBalancingV2::LoadBalancer and AWS::CloudFront::Distribution. /// For a security group common policy, valid values are AWS::EC2::NetworkInterface /// and AWS::EC2::Instance. For a security group content audit policy, valid /// values are AWS::EC2::SecurityGroup, AWS::EC2::NetworkInterface, /// and AWS::EC2::Instance. For a security group usage audit policy, the /// value is AWS::EC2::SecurityGroup. For an Network Firewall policy or DNS /// Firewall policy, the value is AWS::EC2::VPC. /// /// [AWSProperty(Min=1, Max=128)] public string ResourceType { get { return this._resourceType; } set { this._resourceType = value; } } // Check to see if ResourceType property is set internal bool IsSetResourceType() { return this._resourceType != null; } /// /// Gets and sets the property SecurityServiceType. /// /// The service that the policy is using to protect the resources. This specifies the /// type of policy that is created, either an WAF policy, a Shield Advanced policy, or /// a security group policy. /// /// public SecurityServiceType SecurityServiceType { get { return this._securityServiceType; } set { this._securityServiceType = value; } } // Check to see if SecurityServiceType property is set internal bool IsSetSecurityServiceType() { return this._securityServiceType != null; } } }