/*
* 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 redshift-2012-12-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.Redshift.Model
{
///
/// Container for the parameters to the AuthorizeClusterSecurityGroupIngress operation.
/// Adds an inbound (ingress) rule to an Amazon Redshift security group. Depending on
/// whether the application accessing your cluster is running on the Internet or an Amazon
/// EC2 instance, you can authorize inbound access to either a Classless Interdomain Routing
/// (CIDR)/Internet Protocol (IP) range or to an Amazon EC2 security group. You can add
/// as many as 20 ingress rules to an Amazon Redshift security group.
///
///
///
/// If you authorize access to an Amazon EC2 security group, specify EC2SecurityGroupName
/// and EC2SecurityGroupOwnerId. The Amazon EC2 security group and Amazon Redshift
/// cluster must be in the same Amazon Web Services Region.
///
///
///
/// If you authorize access to a CIDR/IP address range, specify CIDRIP. For an
/// overview of CIDR blocks, see the Wikipedia article on Classless
/// Inter-Domain Routing.
///
///
///
/// You must also associate the security group with a cluster so that clients running
/// on these IP addresses or the EC2 instance are authorized to connect to the cluster.
/// For information about managing security groups, go to Working
/// with Security Groups in the Amazon Redshift Cluster Management Guide.
///
///
public partial class AuthorizeClusterSecurityGroupIngressRequest : AmazonRedshiftRequest
{
private string _cidrip;
private string _clusterSecurityGroupName;
private string _ec2SecurityGroupName;
private string _ec2SecurityGroupOwnerId;
///
/// Gets and sets the property CIDRIP.
///
/// The IP range to be added the Amazon Redshift security group.
///
///
[AWSProperty(Max=2147483647)]
public string CIDRIP
{
get { return this._cidrip; }
set { this._cidrip = value; }
}
// Check to see if CIDRIP property is set
internal bool IsSetCIDRIP()
{
return this._cidrip != null;
}
///
/// Gets and sets the property ClusterSecurityGroupName.
///
/// The name of the security group to which the ingress rule is added.
///
///
[AWSProperty(Required=true, Max=2147483647)]
public string ClusterSecurityGroupName
{
get { return this._clusterSecurityGroupName; }
set { this._clusterSecurityGroupName = value; }
}
// Check to see if ClusterSecurityGroupName property is set
internal bool IsSetClusterSecurityGroupName()
{
return this._clusterSecurityGroupName != null;
}
///
/// Gets and sets the property EC2SecurityGroupName.
///
/// The EC2 security group to be added the Amazon Redshift security group.
///
///
[AWSProperty(Max=2147483647)]
public string EC2SecurityGroupName
{
get { return this._ec2SecurityGroupName; }
set { this._ec2SecurityGroupName = value; }
}
// Check to see if EC2SecurityGroupName property is set
internal bool IsSetEC2SecurityGroupName()
{
return this._ec2SecurityGroupName != null;
}
///
/// Gets and sets the property EC2SecurityGroupOwnerId.
///
/// The Amazon Web Services account number of the owner of the security group specified
/// by the EC2SecurityGroupName parameter. The Amazon Web Services Access Key ID
/// is not an acceptable value.
///
///
///
/// Example: 111122223333
///
///
[AWSProperty(Max=2147483647)]
public string EC2SecurityGroupOwnerId
{
get { return this._ec2SecurityGroupOwnerId; }
set { this._ec2SecurityGroupOwnerId = value; }
}
// Check to see if EC2SecurityGroupOwnerId property is set
internal bool IsSetEC2SecurityGroupOwnerId()
{
return this._ec2SecurityGroupOwnerId != null;
}
}
}