/* * 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 cloudtrail-2013-11-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.CloudTrail.Model { /// /// Container for the parameters to the CreateEventDataStore operation. /// Creates a new event data store. /// public partial class CreateEventDataStoreRequest : AmazonCloudTrailRequest { private List _advancedEventSelectors = new List(); private string _kmsKeyId; private bool? _multiRegionEnabled; private string _name; private bool? _organizationEnabled; private int? _retentionPeriod; private bool? _startIngestion; private List _tagsList = new List(); private bool? _terminationProtectionEnabled; /// /// Gets and sets the property AdvancedEventSelectors. /// /// The advanced event selectors to use to select the events for the data store. You can /// configure up to five advanced event selectors for each event data store. /// /// /// /// For more information about how to use advanced event selectors to log CloudTrail /// events, see Log /// events by using advanced event selectors in the CloudTrail User Guide. /// /// /// /// For more information about how to use advanced event selectors to include Config configuration /// items in your event data store, see Create /// an event data store for Config configuration items in the CloudTrail User Guide. /// /// /// /// For more information about how to use advanced event selectors to include non-Amazon /// Web Services events in your event data store, see Create /// an integration to log events from outside Amazon Web Services in the CloudTrail /// User Guide. /// /// public List AdvancedEventSelectors { get { return this._advancedEventSelectors; } set { this._advancedEventSelectors = value; } } // Check to see if AdvancedEventSelectors property is set internal bool IsSetAdvancedEventSelectors() { return this._advancedEventSelectors != null && this._advancedEventSelectors.Count > 0; } /// /// Gets and sets the property KmsKeyId. /// /// Specifies the KMS key ID to use to encrypt the events delivered by CloudTrail. The /// value can be an alias name prefixed by alias/, a fully specified ARN /// to an alias, a fully specified ARN to a key, or a globally unique identifier. /// /// /// /// Disabling or deleting the KMS key, or removing CloudTrail permissions on the key, /// prevents CloudTrail from logging events to the event data store, and prevents users /// from querying the data in the event data store that was encrypted with the key. After /// you associate an event data store with a KMS key, the KMS key cannot be removed or /// changed. Before you disable or delete a KMS key that you are using with an event data /// store, delete or back up your event data store. /// /// /// /// CloudTrail also supports KMS multi-Region keys. For more information about multi-Region /// keys, see Using /// multi-Region keys in the Key Management Service Developer Guide. /// /// /// /// Examples: /// ///
  • /// /// alias/MyAliasName /// ///
  • /// /// arn:aws:kms:us-east-2:123456789012:alias/MyAliasName /// ///
  • /// /// arn:aws:kms:us-east-2:123456789012:key/12345678-1234-1234-1234-123456789012 /// /// ///
  • /// /// 12345678-1234-1234-1234-123456789012 /// ///
///
[AWSProperty(Min=1, Max=350)] public string KmsKeyId { get { return this._kmsKeyId; } set { this._kmsKeyId = value; } } // Check to see if KmsKeyId property is set internal bool IsSetKmsKeyId() { return this._kmsKeyId != null; } /// /// Gets and sets the property MultiRegionEnabled. /// /// Specifies whether the event data store includes events from all Regions, or only from /// the Region in which the event data store is created. /// /// public bool MultiRegionEnabled { get { return this._multiRegionEnabled.GetValueOrDefault(); } set { this._multiRegionEnabled = value; } } // Check to see if MultiRegionEnabled property is set internal bool IsSetMultiRegionEnabled() { return this._multiRegionEnabled.HasValue; } /// /// Gets and sets the property Name. /// /// The name of the event data store. /// /// [AWSProperty(Required=true, Min=3, Max=128)] public string Name { get { return this._name; } set { this._name = value; } } // Check to see if Name property is set internal bool IsSetName() { return this._name != null; } /// /// Gets and sets the property OrganizationEnabled. /// /// Specifies whether an event data store collects events logged for an organization in /// Organizations. /// /// public bool OrganizationEnabled { get { return this._organizationEnabled.GetValueOrDefault(); } set { this._organizationEnabled = value; } } // Check to see if OrganizationEnabled property is set internal bool IsSetOrganizationEnabled() { return this._organizationEnabled.HasValue; } /// /// Gets and sets the property RetentionPeriod. /// /// The retention period of the event data store, in days. You can set a retention period /// of up to 2557 days, the equivalent of seven years. /// /// [AWSProperty(Min=7, Max=2557)] public int RetentionPeriod { get { return this._retentionPeriod.GetValueOrDefault(); } set { this._retentionPeriod = value; } } // Check to see if RetentionPeriod property is set internal bool IsSetRetentionPeriod() { return this._retentionPeriod.HasValue; } /// /// Gets and sets the property StartIngestion. /// /// Specifies whether the event data store should start ingesting live events. The default /// is true. /// /// public bool StartIngestion { get { return this._startIngestion.GetValueOrDefault(); } set { this._startIngestion = value; } } // Check to see if StartIngestion property is set internal bool IsSetStartIngestion() { return this._startIngestion.HasValue; } /// /// Gets and sets the property TagsList. /// [AWSProperty(Max=200)] public List TagsList { get { return this._tagsList; } set { this._tagsList = value; } } // Check to see if TagsList property is set internal bool IsSetTagsList() { return this._tagsList != null && this._tagsList.Count > 0; } /// /// Gets and sets the property TerminationProtectionEnabled. /// /// Specifies whether termination protection is enabled for the event data store. If termination /// protection is enabled, you cannot delete the event data store until termination protection /// is disabled. /// /// public bool TerminationProtectionEnabled { get { return this._terminationProtectionEnabled.GetValueOrDefault(); } set { this._terminationProtectionEnabled = value; } } // Check to see if TerminationProtectionEnabled property is set internal bool IsSetTerminationProtectionEnabled() { return this._terminationProtectionEnabled.HasValue; } } }