aws_sdk_ec2/client/
create_security_group.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2impl super::Client {
3    /// Constructs a fluent builder for the [`CreateSecurityGroup`](crate::operation::create_security_group::builders::CreateSecurityGroupFluentBuilder) operation.
4    ///
5    /// - The fluent builder is configurable:
6    ///   - [`description(impl Into<String>)`](crate::operation::create_security_group::builders::CreateSecurityGroupFluentBuilder::description) / [`set_description(Option<String>)`](crate::operation::create_security_group::builders::CreateSecurityGroupFluentBuilder::set_description):<br>required: **true**<br><p>A description for the security group.</p> <p>Constraints: Up to 255 characters in length</p> <p>Valid characters: a-z, A-Z, 0-9, spaces, and ._-:/()#,@\[\]+=&amp;;{}!$*</p><br>
7    ///   - [`group_name(impl Into<String>)`](crate::operation::create_security_group::builders::CreateSecurityGroupFluentBuilder::group_name) / [`set_group_name(Option<String>)`](crate::operation::create_security_group::builders::CreateSecurityGroupFluentBuilder::set_group_name):<br>required: **true**<br><p>The name of the security group. Names are case-insensitive and must be unique within the VPC.</p> <p>Constraints: Up to 255 characters in length. Can't start with <code>sg-</code>.</p> <p>Valid characters: a-z, A-Z, 0-9, spaces, and ._-:/()#,@\[\]+=&amp;;{}!$*</p><br>
8    ///   - [`vpc_id(impl Into<String>)`](crate::operation::create_security_group::builders::CreateSecurityGroupFluentBuilder::vpc_id) / [`set_vpc_id(Option<String>)`](crate::operation::create_security_group::builders::CreateSecurityGroupFluentBuilder::set_vpc_id):<br>required: **false**<br><p>The ID of the VPC. Required for a nondefault VPC.</p><br>
9    ///   - [`tag_specifications(TagSpecification)`](crate::operation::create_security_group::builders::CreateSecurityGroupFluentBuilder::tag_specifications) / [`set_tag_specifications(Option<Vec::<TagSpecification>>)`](crate::operation::create_security_group::builders::CreateSecurityGroupFluentBuilder::set_tag_specifications):<br>required: **false**<br><p>The tags to assign to the security group.</p><br>
10    ///   - [`dry_run(bool)`](crate::operation::create_security_group::builders::CreateSecurityGroupFluentBuilder::dry_run) / [`set_dry_run(Option<bool>)`](crate::operation::create_security_group::builders::CreateSecurityGroupFluentBuilder::set_dry_run):<br>required: **false**<br><p>Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is <code>DryRunOperation</code>. Otherwise, it is <code>UnauthorizedOperation</code>.</p><br>
11    /// - On success, responds with [`CreateSecurityGroupOutput`](crate::operation::create_security_group::CreateSecurityGroupOutput) with field(s):
12    ///   - [`group_id(Option<String>)`](crate::operation::create_security_group::CreateSecurityGroupOutput::group_id): <p>The ID of the security group.</p>
13    ///   - [`tags(Option<Vec::<Tag>>)`](crate::operation::create_security_group::CreateSecurityGroupOutput::tags): <p>The tags assigned to the security group.</p>
14    ///   - [`security_group_arn(Option<String>)`](crate::operation::create_security_group::CreateSecurityGroupOutput::security_group_arn): <p>The security group ARN.</p>
15    /// - On failure, responds with [`SdkError<CreateSecurityGroupError>`](crate::operation::create_security_group::CreateSecurityGroupError)
16    pub fn create_security_group(&self) -> crate::operation::create_security_group::builders::CreateSecurityGroupFluentBuilder {
17        crate::operation::create_security_group::builders::CreateSecurityGroupFluentBuilder::new(self.handle.clone())
18    }
19}