/*
* 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 securitylake-2018-05-10.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.SecurityLake.Model
{
///
/// Container for the parameters to the CreateDataLake operation.
/// Initializes an Amazon Security Lake instance with the provided (or default) configuration.
/// You can enable Security Lake in Amazon Web Services Regions with customized settings
/// before enabling log collection in Regions. To specify particular Regions, configure
/// these Regions using the configurations
parameter. If you have already
/// enabled Security Lake in a Region when you call this command, the command will update
/// the Region if you provide new configuration parameters. If you have not already enabled
/// Security Lake in the Region when you call this API, it will set up the data lake in
/// the Region with the specified configurations.
///
///
///
/// When you enable Security Lake, it starts ingesting security data after the CreateAwsLogSource
/// call. This includes ingesting security data from sources, storing data, and making
/// data accessible to subscribers. Security Lake also enables all the existing settings
/// and resources that it stores or maintains for your Amazon Web Services account in
/// the current Region, including security log and event data. For more information, see
/// the Amazon
/// Security Lake User Guide.
///
///
public partial class CreateDataLakeRequest : AmazonSecurityLakeRequest
{
private List _configurations = new List();
private string _metaStoreManagerRoleArn;
private List _tags = new List();
///
/// Gets and sets the property Configurations.
///
/// Specify the Region or Regions that will contribute data to the rollup region.
///
///
[AWSProperty(Required=true)]
public List Configurations
{
get { return this._configurations; }
set { this._configurations = value; }
}
// Check to see if Configurations property is set
internal bool IsSetConfigurations()
{
return this._configurations != null && this._configurations.Count > 0;
}
///
/// Gets and sets the property MetaStoreManagerRoleArn.
///
/// The Amazon Resource Name (ARN) used to create and update the Glue table. This table
/// contains partitions generated by the ingestion and normalization of Amazon Web Services
/// log sources and custom sources.
///
///
[AWSProperty(Required=true)]
public string MetaStoreManagerRoleArn
{
get { return this._metaStoreManagerRoleArn; }
set { this._metaStoreManagerRoleArn = value; }
}
// Check to see if MetaStoreManagerRoleArn property is set
internal bool IsSetMetaStoreManagerRoleArn()
{
return this._metaStoreManagerRoleArn != null;
}
///
/// Gets and sets the property Tags.
///
/// An array of objects, one for each tag to associate with the data lake configuration.
/// For each tag, you must specify both a tag key and a tag value. A tag value cannot
/// be null, but it can be an empty string.
///
///
[AWSProperty(Min=0, Max=50)]
public List Tags
{
get { return this._tags; }
set { this._tags = value; }
}
// Check to see if Tags property is set
internal bool IsSetTags()
{
return this._tags != null && this._tags.Count > 0;
}
}
}