/* * 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 config-2014-11-12.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.ConfigService.Model { /// /// metadata for your organization Config Custom Policy rule including the runtime system /// in use, which accounts have debug logging enabled, and other custom rule metadata /// such as resource type, resource ID of Amazon Web Services resource, and organization /// trigger types that trigger Config to evaluate Amazon Web Services resources against /// a rule. /// public partial class OrganizationCustomPolicyRuleMetadataNoPolicy { private List _debugLogDeliveryAccounts = new List(); private string _description; private string _inputParameters; private MaximumExecutionFrequency _maximumExecutionFrequency; private List _organizationConfigRuleTriggerTypes = new List(); private string _policyRuntime; private string _resourceIdScope; private List _resourceTypesScope = new List(); private string _tagKeyScope; private string _tagValueScope; /// /// Gets and sets the property DebugLogDeliveryAccounts. /// /// A list of accounts that you can enable debug logging for your organization Config /// Custom Policy rule. List is null when debug logging is enabled for all accounts. /// /// [AWSProperty(Min=0, Max=1000)] public List DebugLogDeliveryAccounts { get { return this._debugLogDeliveryAccounts; } set { this._debugLogDeliveryAccounts = value; } } // Check to see if DebugLogDeliveryAccounts property is set internal bool IsSetDebugLogDeliveryAccounts() { return this._debugLogDeliveryAccounts != null && this._debugLogDeliveryAccounts.Count > 0; } /// /// Gets and sets the property Description. /// /// The description that you provide for your organization Config Custom Policy rule. /// /// [AWSProperty(Min=0, Max=256)] public string Description { get { return this._description; } set { this._description = value; } } // Check to see if Description property is set internal bool IsSetDescription() { return this._description != null; } /// /// Gets and sets the property InputParameters. /// /// A string, in JSON format, that is passed to your organization Config Custom Policy /// rule. /// /// [AWSProperty(Min=1, Max=2048)] public string InputParameters { get { return this._inputParameters; } set { this._inputParameters = value; } } // Check to see if InputParameters property is set internal bool IsSetInputParameters() { return this._inputParameters != null; } /// /// Gets and sets the property MaximumExecutionFrequency. /// /// The maximum frequency with which Config runs evaluations for a rule. Your Config Custom /// Policy rule is triggered when Config delivers the configuration snapshot. For more /// information, see ConfigSnapshotDeliveryProperties. /// /// public MaximumExecutionFrequency MaximumExecutionFrequency { get { return this._maximumExecutionFrequency; } set { this._maximumExecutionFrequency = value; } } // Check to see if MaximumExecutionFrequency property is set internal bool IsSetMaximumExecutionFrequency() { return this._maximumExecutionFrequency != null; } /// /// Gets and sets the property OrganizationConfigRuleTriggerTypes. /// /// The type of notification that triggers Config to run an evaluation for a rule. For /// Config Custom Policy rules, Config supports change triggered notification types: /// ///
  • /// /// ConfigurationItemChangeNotification - Triggers an evaluation when Config /// delivers a configuration item as a result of a resource change. /// ///
  • /// /// OversizedConfigurationItemChangeNotification - Triggers an evaluation /// when Config delivers an oversized configuration item. Config may generate this notification /// type when a resource changes and the notification exceeds the maximum size allowed /// by Amazon SNS. /// ///
///
public List OrganizationConfigRuleTriggerTypes { get { return this._organizationConfigRuleTriggerTypes; } set { this._organizationConfigRuleTriggerTypes = value; } } // Check to see if OrganizationConfigRuleTriggerTypes property is set internal bool IsSetOrganizationConfigRuleTriggerTypes() { return this._organizationConfigRuleTriggerTypes != null && this._organizationConfigRuleTriggerTypes.Count > 0; } /// /// Gets and sets the property PolicyRuntime. /// /// The runtime system for your organization Config Custom Policy rules. Guard is a policy-as-code /// language that allows you to write policies that are enforced by Config Custom Policy /// rules. For more information about Guard, see the Guard /// GitHub Repository. /// /// [AWSProperty(Min=1, Max=64)] public string PolicyRuntime { get { return this._policyRuntime; } set { this._policyRuntime = value; } } // Check to see if PolicyRuntime property is set internal bool IsSetPolicyRuntime() { return this._policyRuntime != null; } /// /// Gets and sets the property ResourceIdScope. /// /// The ID of the Amazon Web Services resource that was evaluated. /// /// [AWSProperty(Min=1, Max=768)] public string ResourceIdScope { get { return this._resourceIdScope; } set { this._resourceIdScope = value; } } // Check to see if ResourceIdScope property is set internal bool IsSetResourceIdScope() { return this._resourceIdScope != null; } /// /// Gets and sets the property ResourceTypesScope. /// /// The type of the Amazon Web Services resource that was evaluated. /// /// [AWSProperty(Min=0, Max=100)] public List ResourceTypesScope { get { return this._resourceTypesScope; } set { this._resourceTypesScope = value; } } // Check to see if ResourceTypesScope property is set internal bool IsSetResourceTypesScope() { return this._resourceTypesScope != null && this._resourceTypesScope.Count > 0; } /// /// Gets and sets the property TagKeyScope. /// /// One part of a key-value pair that make up a tag. A key is a general label that acts /// like a category for more specific tag values. /// /// [AWSProperty(Min=1, Max=128)] public string TagKeyScope { get { return this._tagKeyScope; } set { this._tagKeyScope = value; } } // Check to see if TagKeyScope property is set internal bool IsSetTagKeyScope() { return this._tagKeyScope != null; } /// /// Gets and sets the property TagValueScope. /// /// The optional part of a key-value pair that make up a tag. A value acts as a descriptor /// within a tag category (key). /// /// [AWSProperty(Min=1, Max=256)] public string TagValueScope { get { return this._tagValueScope; } set { this._tagValueScope = value; } } // Check to see if TagValueScope property is set internal bool IsSetTagValueScope() { return this._tagValueScope != null; } } }