aws_sdk_workmail/client/put_access_control_rule.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 [`PutAccessControlRule`](crate::operation::put_access_control_rule::builders::PutAccessControlRuleFluentBuilder) operation.
4 ///
5 /// - The fluent builder is configurable:
6 /// - [`name(impl Into<String>)`](crate::operation::put_access_control_rule::builders::PutAccessControlRuleFluentBuilder::name) / [`set_name(Option<String>)`](crate::operation::put_access_control_rule::builders::PutAccessControlRuleFluentBuilder::set_name):<br>required: **true**<br><p>The rule name.</p><br>
7 /// - [`effect(AccessControlRuleEffect)`](crate::operation::put_access_control_rule::builders::PutAccessControlRuleFluentBuilder::effect) / [`set_effect(Option<AccessControlRuleEffect>)`](crate::operation::put_access_control_rule::builders::PutAccessControlRuleFluentBuilder::set_effect):<br>required: **true**<br><p>The rule effect.</p><br>
8 /// - [`description(impl Into<String>)`](crate::operation::put_access_control_rule::builders::PutAccessControlRuleFluentBuilder::description) / [`set_description(Option<String>)`](crate::operation::put_access_control_rule::builders::PutAccessControlRuleFluentBuilder::set_description):<br>required: **true**<br><p>The rule description.</p><br>
9 /// - [`ip_ranges(impl Into<String>)`](crate::operation::put_access_control_rule::builders::PutAccessControlRuleFluentBuilder::ip_ranges) / [`set_ip_ranges(Option<Vec::<String>>)`](crate::operation::put_access_control_rule::builders::PutAccessControlRuleFluentBuilder::set_ip_ranges):<br>required: **false**<br><p>IPv4 CIDR ranges to include in the rule.</p><br>
10 /// - [`not_ip_ranges(impl Into<String>)`](crate::operation::put_access_control_rule::builders::PutAccessControlRuleFluentBuilder::not_ip_ranges) / [`set_not_ip_ranges(Option<Vec::<String>>)`](crate::operation::put_access_control_rule::builders::PutAccessControlRuleFluentBuilder::set_not_ip_ranges):<br>required: **false**<br><p>IPv4 CIDR ranges to exclude from the rule.</p><br>
11 /// - [`actions(impl Into<String>)`](crate::operation::put_access_control_rule::builders::PutAccessControlRuleFluentBuilder::actions) / [`set_actions(Option<Vec::<String>>)`](crate::operation::put_access_control_rule::builders::PutAccessControlRuleFluentBuilder::set_actions):<br>required: **false**<br><p>Access protocol actions to include in the rule. Valid values include <code>ActiveSync</code>, <code>AutoDiscover</code>, <code>EWS</code>, <code>IMAP</code>, <code>SMTP</code>, <code>WindowsOutlook</code>, and <code>WebMail</code>.</p><br>
12 /// - [`not_actions(impl Into<String>)`](crate::operation::put_access_control_rule::builders::PutAccessControlRuleFluentBuilder::not_actions) / [`set_not_actions(Option<Vec::<String>>)`](crate::operation::put_access_control_rule::builders::PutAccessControlRuleFluentBuilder::set_not_actions):<br>required: **false**<br><p>Access protocol actions to exclude from the rule. Valid values include <code>ActiveSync</code>, <code>AutoDiscover</code>, <code>EWS</code>, <code>IMAP</code>, <code>SMTP</code>, <code>WindowsOutlook</code>, and <code>WebMail</code>.</p><br>
13 /// - [`user_ids(impl Into<String>)`](crate::operation::put_access_control_rule::builders::PutAccessControlRuleFluentBuilder::user_ids) / [`set_user_ids(Option<Vec::<String>>)`](crate::operation::put_access_control_rule::builders::PutAccessControlRuleFluentBuilder::set_user_ids):<br>required: **false**<br><p>User IDs to include in the rule.</p><br>
14 /// - [`not_user_ids(impl Into<String>)`](crate::operation::put_access_control_rule::builders::PutAccessControlRuleFluentBuilder::not_user_ids) / [`set_not_user_ids(Option<Vec::<String>>)`](crate::operation::put_access_control_rule::builders::PutAccessControlRuleFluentBuilder::set_not_user_ids):<br>required: **false**<br><p>User IDs to exclude from the rule.</p><br>
15 /// - [`organization_id(impl Into<String>)`](crate::operation::put_access_control_rule::builders::PutAccessControlRuleFluentBuilder::organization_id) / [`set_organization_id(Option<String>)`](crate::operation::put_access_control_rule::builders::PutAccessControlRuleFluentBuilder::set_organization_id):<br>required: **true**<br><p>The identifier of the organization.</p><br>
16 /// - [`impersonation_role_ids(impl Into<String>)`](crate::operation::put_access_control_rule::builders::PutAccessControlRuleFluentBuilder::impersonation_role_ids) / [`set_impersonation_role_ids(Option<Vec::<String>>)`](crate::operation::put_access_control_rule::builders::PutAccessControlRuleFluentBuilder::set_impersonation_role_ids):<br>required: **false**<br><p>Impersonation role IDs to include in the rule.</p><br>
17 /// - [`not_impersonation_role_ids(impl Into<String>)`](crate::operation::put_access_control_rule::builders::PutAccessControlRuleFluentBuilder::not_impersonation_role_ids) / [`set_not_impersonation_role_ids(Option<Vec::<String>>)`](crate::operation::put_access_control_rule::builders::PutAccessControlRuleFluentBuilder::set_not_impersonation_role_ids):<br>required: **false**<br><p>Impersonation role IDs to exclude from the rule.</p><br>
18 /// - On success, responds with [`PutAccessControlRuleOutput`](crate::operation::put_access_control_rule::PutAccessControlRuleOutput)
19 /// - On failure, responds with [`SdkError<PutAccessControlRuleError>`](crate::operation::put_access_control_rule::PutAccessControlRuleError)
20 pub fn put_access_control_rule(&self) -> crate::operation::put_access_control_rule::builders::PutAccessControlRuleFluentBuilder {
21 crate::operation::put_access_control_rule::builders::PutAccessControlRuleFluentBuilder::new(self.handle.clone())
22 }
23}