aws_sdk_iot/client/create_security_profile.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 [`CreateSecurityProfile`](crate::operation::create_security_profile::builders::CreateSecurityProfileFluentBuilder) operation.
4 ///
5 /// - The fluent builder is configurable:
6 /// - [`security_profile_name(impl Into<String>)`](crate::operation::create_security_profile::builders::CreateSecurityProfileFluentBuilder::security_profile_name) / [`set_security_profile_name(Option<String>)`](crate::operation::create_security_profile::builders::CreateSecurityProfileFluentBuilder::set_security_profile_name):<br>required: **true**<br><p>The name you are giving to the security profile.</p><br>
7 /// - [`security_profile_description(impl Into<String>)`](crate::operation::create_security_profile::builders::CreateSecurityProfileFluentBuilder::security_profile_description) / [`set_security_profile_description(Option<String>)`](crate::operation::create_security_profile::builders::CreateSecurityProfileFluentBuilder::set_security_profile_description):<br>required: **false**<br><p>A description of the security profile.</p><br>
8 /// - [`behaviors(Behavior)`](crate::operation::create_security_profile::builders::CreateSecurityProfileFluentBuilder::behaviors) / [`set_behaviors(Option<Vec::<Behavior>>)`](crate::operation::create_security_profile::builders::CreateSecurityProfileFluentBuilder::set_behaviors):<br>required: **false**<br><p>Specifies the behaviors that, when violated by a device (thing), cause an alert.</p><br>
9 /// - [`alert_targets(AlertTargetType, AlertTarget)`](crate::operation::create_security_profile::builders::CreateSecurityProfileFluentBuilder::alert_targets) / [`set_alert_targets(Option<HashMap::<AlertTargetType, AlertTarget>>)`](crate::operation::create_security_profile::builders::CreateSecurityProfileFluentBuilder::set_alert_targets):<br>required: **false**<br><p>Specifies the destinations to which alerts are sent. (Alerts are always sent to the console.) Alerts are generated when a device (thing) violates a behavior.</p><br>
10 /// - [`additional_metrics_to_retain(impl Into<String>)`](crate::operation::create_security_profile::builders::CreateSecurityProfileFluentBuilder::additional_metrics_to_retain) / [`set_additional_metrics_to_retain(Option<Vec::<String>>)`](crate::operation::create_security_profile::builders::CreateSecurityProfileFluentBuilder::set_additional_metrics_to_retain):<br>required: **false**<br><p><i>Please use <code>CreateSecurityProfileRequest$additionalMetricsToRetainV2</code> instead.</i></p> <p>A list of metrics whose data is retained (stored). By default, data is retained for any metric used in the profile's <code>behaviors</code>, but it is also retained for any metric specified here. Can be used with custom metrics; cannot be used with dimensions.</p><br>
11 /// - [`additional_metrics_to_retain_v2(MetricToRetain)`](crate::operation::create_security_profile::builders::CreateSecurityProfileFluentBuilder::additional_metrics_to_retain_v2) / [`set_additional_metrics_to_retain_v2(Option<Vec::<MetricToRetain>>)`](crate::operation::create_security_profile::builders::CreateSecurityProfileFluentBuilder::set_additional_metrics_to_retain_v2):<br>required: **false**<br><p>A list of metrics whose data is retained (stored). By default, data is retained for any metric used in the profile's <code>behaviors</code>, but it is also retained for any metric specified here. Can be used with custom metrics; cannot be used with dimensions.</p><br>
12 /// - [`tags(Tag)`](crate::operation::create_security_profile::builders::CreateSecurityProfileFluentBuilder::tags) / [`set_tags(Option<Vec::<Tag>>)`](crate::operation::create_security_profile::builders::CreateSecurityProfileFluentBuilder::set_tags):<br>required: **false**<br><p>Metadata that can be used to manage the security profile.</p><br>
13 /// - [`metrics_export_config(MetricsExportConfig)`](crate::operation::create_security_profile::builders::CreateSecurityProfileFluentBuilder::metrics_export_config) / [`set_metrics_export_config(Option<MetricsExportConfig>)`](crate::operation::create_security_profile::builders::CreateSecurityProfileFluentBuilder::set_metrics_export_config):<br>required: **false**<br><p>Specifies the MQTT topic and role ARN required for metric export.</p><br>
14 /// - On success, responds with [`CreateSecurityProfileOutput`](crate::operation::create_security_profile::CreateSecurityProfileOutput) with field(s):
15 /// - [`security_profile_name(Option<String>)`](crate::operation::create_security_profile::CreateSecurityProfileOutput::security_profile_name): <p>The name you gave to the security profile.</p>
16 /// - [`security_profile_arn(Option<String>)`](crate::operation::create_security_profile::CreateSecurityProfileOutput::security_profile_arn): <p>The ARN of the security profile.</p>
17 /// - On failure, responds with [`SdkError<CreateSecurityProfileError>`](crate::operation::create_security_profile::CreateSecurityProfileError)
18 pub fn create_security_profile(&self) -> crate::operation::create_security_profile::builders::CreateSecurityProfileFluentBuilder {
19 crate::operation::create_security_profile::builders::CreateSecurityProfileFluentBuilder::new(self.handle.clone())
20 }
21}