/*
* 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 securityhub-2018-10-26.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.SecurityHub.Model
{
///
/// Provides details about a CloudTrail trail.
///
public partial class AwsCloudTrailTrailDetails
{
private string _cloudWatchLogsLogGroupArn;
private string _cloudWatchLogsRoleArn;
private bool? _hasCustomEventSelectors;
private string _homeRegion;
private bool? _includeGlobalServiceEvents;
private bool? _isMultiRegionTrail;
private bool? _isOrganizationTrail;
private string _kmsKeyId;
private bool? _logFileValidationEnabled;
private string _name;
private string _s3BucketName;
private string _s3KeyPrefix;
private string _snsTopicArn;
private string _snsTopicName;
private string _trailArn;
///
/// Gets and sets the property CloudWatchLogsLogGroupArn.
///
/// The ARN of the log group that CloudTrail logs are delivered to.
///
///
public string CloudWatchLogsLogGroupArn
{
get { return this._cloudWatchLogsLogGroupArn; }
set { this._cloudWatchLogsLogGroupArn = value; }
}
// Check to see if CloudWatchLogsLogGroupArn property is set
internal bool IsSetCloudWatchLogsLogGroupArn()
{
return this._cloudWatchLogsLogGroupArn != null;
}
///
/// Gets and sets the property CloudWatchLogsRoleArn.
///
/// The ARN of the role that the CloudWatch Events endpoint assumes when it writes to
/// the log group.
///
///
public string CloudWatchLogsRoleArn
{
get { return this._cloudWatchLogsRoleArn; }
set { this._cloudWatchLogsRoleArn = value; }
}
// Check to see if CloudWatchLogsRoleArn property is set
internal bool IsSetCloudWatchLogsRoleArn()
{
return this._cloudWatchLogsRoleArn != null;
}
///
/// Gets and sets the property HasCustomEventSelectors.
///
/// Indicates whether the trail has custom event selectors.
///
///
public bool HasCustomEventSelectors
{
get { return this._hasCustomEventSelectors.GetValueOrDefault(); }
set { this._hasCustomEventSelectors = value; }
}
// Check to see if HasCustomEventSelectors property is set
internal bool IsSetHasCustomEventSelectors()
{
return this._hasCustomEventSelectors.HasValue;
}
///
/// Gets and sets the property HomeRegion.
///
/// The Region where the trail was created.
///
///
public string HomeRegion
{
get { return this._homeRegion; }
set { this._homeRegion = value; }
}
// Check to see if HomeRegion property is set
internal bool IsSetHomeRegion()
{
return this._homeRegion != null;
}
///
/// Gets and sets the property IncludeGlobalServiceEvents.
///
/// Indicates whether the trail publishes events from global services such as IAM to the
/// log files.
///
///
public bool IncludeGlobalServiceEvents
{
get { return this._includeGlobalServiceEvents.GetValueOrDefault(); }
set { this._includeGlobalServiceEvents = value; }
}
// Check to see if IncludeGlobalServiceEvents property is set
internal bool IsSetIncludeGlobalServiceEvents()
{
return this._includeGlobalServiceEvents.HasValue;
}
///
/// Gets and sets the property IsMultiRegionTrail.
///
/// Indicates whether the trail applies only to the current Region or to all Regions.
///
///
public bool IsMultiRegionTrail
{
get { return this._isMultiRegionTrail.GetValueOrDefault(); }
set { this._isMultiRegionTrail = value; }
}
// Check to see if IsMultiRegionTrail property is set
internal bool IsSetIsMultiRegionTrail()
{
return this._isMultiRegionTrail.HasValue;
}
///
/// Gets and sets the property IsOrganizationTrail.
///
/// Whether the trail is created for all accounts in an organization in Organizations,
/// or only for the current Amazon Web Services account.
///
///
public bool IsOrganizationTrail
{
get { return this._isOrganizationTrail.GetValueOrDefault(); }
set { this._isOrganizationTrail = value; }
}
// Check to see if IsOrganizationTrail property is set
internal bool IsSetIsOrganizationTrail()
{
return this._isOrganizationTrail.HasValue;
}
///
/// Gets and sets the property KmsKeyId.
///
/// The KMS key ID to use to encrypt the logs.
///
///
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 LogFileValidationEnabled.
///
/// Indicates whether CloudTrail log file validation is enabled.
///
///
public bool LogFileValidationEnabled
{
get { return this._logFileValidationEnabled.GetValueOrDefault(); }
set { this._logFileValidationEnabled = value; }
}
// Check to see if LogFileValidationEnabled property is set
internal bool IsSetLogFileValidationEnabled()
{
return this._logFileValidationEnabled.HasValue;
}
///
/// Gets and sets the property Name.
///
/// The name of the trail.
///
///
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 S3BucketName.
///
/// The name of the S3 bucket where the log files are published.
///
///
public string S3BucketName
{
get { return this._s3BucketName; }
set { this._s3BucketName = value; }
}
// Check to see if S3BucketName property is set
internal bool IsSetS3BucketName()
{
return this._s3BucketName != null;
}
///
/// Gets and sets the property S3KeyPrefix.
///
/// The S3 key prefix. The key prefix is added after the name of the S3 bucket where the
/// log files are published.
///
///
public string S3KeyPrefix
{
get { return this._s3KeyPrefix; }
set { this._s3KeyPrefix = value; }
}
// Check to see if S3KeyPrefix property is set
internal bool IsSetS3KeyPrefix()
{
return this._s3KeyPrefix != null;
}
///
/// Gets and sets the property SnsTopicArn.
///
/// The ARN of the SNS topic that is used for notifications of log file delivery.
///
///
public string SnsTopicArn
{
get { return this._snsTopicArn; }
set { this._snsTopicArn = value; }
}
// Check to see if SnsTopicArn property is set
internal bool IsSetSnsTopicArn()
{
return this._snsTopicArn != null;
}
///
/// Gets and sets the property SnsTopicName.
///
/// The name of the SNS topic that is used for notifications of log file delivery.
///
///
public string SnsTopicName
{
get { return this._snsTopicName; }
set { this._snsTopicName = value; }
}
// Check to see if SnsTopicName property is set
internal bool IsSetSnsTopicName()
{
return this._snsTopicName != null;
}
///
/// Gets and sets the property TrailArn.
///
/// The ARN of the trail.
///
///
public string TrailArn
{
get { return this._trailArn; }
set { this._trailArn = value; }
}
// Check to see if TrailArn property is set
internal bool IsSetTrailArn()
{
return this._trailArn != null;
}
}
}