Class: AWSCDK::IoT::CfnSecurityProfileProps
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::IoT::CfnSecurityProfileProps
- Defined in:
- io_t/cfn_security_profile_props.rb
Overview
Properties for defining a CfnSecurityProfile.
Instance Attribute Summary collapse
-
#additional_metrics_to_retain_v2 ⇒ AWSCDK::IResolvable, ...
readonly
A list of metrics whose data is retained (stored).
-
#alert_targets ⇒ AWSCDK::IResolvable, ...
readonly
Specifies the destinations to which alerts are sent.
-
#behaviors ⇒ AWSCDK::IResolvable, ...
readonly
Specifies the behaviors that, when violated by a device (thing), cause an alert.
-
#metrics_export_config ⇒ AWSCDK::IResolvable, ...
readonly
Specifies the MQTT topic and role ARN required for metric export.
-
#security_profile_description ⇒ String?
readonly
A description of the security profile.
-
#security_profile_name ⇒ String?
readonly
The name you gave to the security profile.
-
#tags ⇒ Array<AWSCDK::CfnTag>?
readonly
Metadata that can be used to manage the security profile.
-
#target_arns ⇒ Array<String>?
readonly
The ARN of the target (thing group) to which the security profile is attached.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(additional_metrics_to_retain_v2: nil, alert_targets: nil, behaviors: nil, metrics_export_config: nil, security_profile_description: nil, security_profile_name: nil, tags: nil, target_arns: nil) ⇒ CfnSecurityProfileProps
constructor
A new instance of CfnSecurityProfileProps.
- #to_jsii ⇒ Object
Constructor Details
#initialize(additional_metrics_to_retain_v2: nil, alert_targets: nil, behaviors: nil, metrics_export_config: nil, security_profile_description: nil, security_profile_name: nil, tags: nil, target_arns: nil) ⇒ CfnSecurityProfileProps
Returns a new instance of CfnSecurityProfileProps.
17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'io_t/cfn_security_profile_props.rb', line 17 def initialize(additional_metrics_to_retain_v2: nil, alert_targets: nil, behaviors: nil, metrics_export_config: nil, security_profile_description: nil, security_profile_name: nil, tags: nil, target_arns: nil) @additional_metrics_to_retain_v2 = additional_metrics_to_retain_v2 Jsii::Type.check_type(@additional_metrics_to_retain_v2, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfaW90LkNmblNlY3VyaXR5UHJvZmlsZS5NZXRyaWNUb1JldGFpblByb3BlcnR5In1dfX0sImtpbmQiOiJhcnJheSJ9fV19fQ==")), "additionalMetricsToRetainV2") unless @additional_metrics_to_retain_v2.nil? @alert_targets = alert_targets Jsii::Type.check_type(@alert_targets, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfaW90LkNmblNlY3VyaXR5UHJvZmlsZS5BbGVydFRhcmdldFByb3BlcnR5In1dfX0sImtpbmQiOiJtYXAifX1dfX0=")), "alertTargets") unless @alert_targets.nil? @behaviors = behaviors Jsii::Type.check_type(@behaviors, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfaW90LkNmblNlY3VyaXR5UHJvZmlsZS5CZWhhdmlvclByb3BlcnR5In1dfX0sImtpbmQiOiJhcnJheSJ9fV19fQ==")), "behaviors") unless @behaviors.nil? @metrics_export_config = metrics_export_config.is_a?(Hash) ? ::AWSCDK::IoT::CfnSecurityProfile::MetricsExportConfigProperty.new(**metrics_export_config.transform_keys(&:to_sym)) : metrics_export_config Jsii::Type.check_type(@metrics_export_config, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19pb3QuQ2ZuU2VjdXJpdHlQcm9maWxlLk1ldHJpY3NFeHBvcnRDb25maWdQcm9wZXJ0eSJ9XX19")), "metricsExportConfig") unless @metrics_export_config.nil? @security_profile_description = security_profile_description Jsii::Type.check_type(@security_profile_description, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "securityProfileDescription") unless @security_profile_description.nil? @security_profile_name = security_profile_name Jsii::Type.check_type(@security_profile_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "securityProfileName") unless @security_profile_name.nil? @tags = .is_a?(Array) ? .map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::CfnTag.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLkNmblRhZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "tags") unless @tags.nil? @target_arns = target_arns Jsii::Type.check_type(@target_arns, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "targetArns") unless @target_arns.nil? end |
Instance Attribute Details
#additional_metrics_to_retain_v2 ⇒ AWSCDK::IResolvable, ... (readonly)
A list of metrics whose data is retained (stored).
By default, data is retained for any metric used in the profile's behaviors , but it's also retained for any metric specified here. Can be used with custom metrics; can't be used with dimensions.
42 43 44 |
# File 'io_t/cfn_security_profile_props.rb', line 42 def additional_metrics_to_retain_v2 @additional_metrics_to_retain_v2 end |
#alert_targets ⇒ AWSCDK::IResolvable, ... (readonly)
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.
49 50 51 |
# File 'io_t/cfn_security_profile_props.rb', line 49 def alert_targets @alert_targets end |
#behaviors ⇒ AWSCDK::IResolvable, ... (readonly)
Specifies the behaviors that, when violated by a device (thing), cause an alert.
54 55 56 |
# File 'io_t/cfn_security_profile_props.rb', line 54 def behaviors @behaviors end |
#metrics_export_config ⇒ AWSCDK::IResolvable, ... (readonly)
Specifies the MQTT topic and role ARN required for metric export.
59 60 61 |
# File 'io_t/cfn_security_profile_props.rb', line 59 def metrics_export_config @metrics_export_config end |
#security_profile_description ⇒ String? (readonly)
A description of the security profile.
64 65 66 |
# File 'io_t/cfn_security_profile_props.rb', line 64 def security_profile_description @security_profile_description end |
#security_profile_name ⇒ String? (readonly)
The name you gave to the security profile.
69 70 71 |
# File 'io_t/cfn_security_profile_props.rb', line 69 def security_profile_name @security_profile_name end |
#tags ⇒ Array<AWSCDK::CfnTag>? (readonly)
Metadata that can be used to manage the security profile.
74 75 76 |
# File 'io_t/cfn_security_profile_props.rb', line 74 def @tags end |
#target_arns ⇒ Array<String>? (readonly)
The ARN of the target (thing group) to which the security profile is attached.
79 80 81 |
# File 'io_t/cfn_security_profile_props.rb', line 79 def target_arns @target_arns end |
Class Method Details
.jsii_properties ⇒ Object
81 82 83 84 85 86 87 88 89 90 91 92 |
# File 'io_t/cfn_security_profile_props.rb', line 81 def self.jsii_properties { :additional_metrics_to_retain_v2 => "additionalMetricsToRetainV2", :alert_targets => "alertTargets", :behaviors => "behaviors", :metrics_export_config => "metricsExportConfig", :security_profile_description => "securityProfileDescription", :security_profile_name => "securityProfileName", :tags => "tags", :target_arns => "targetArns", } end |
Instance Method Details
#to_jsii ⇒ Object
94 95 96 97 98 99 100 101 102 103 104 105 106 107 |
# File 'io_t/cfn_security_profile_props.rb', line 94 def to_jsii result = {} result.merge!({ "additionalMetricsToRetainV2" => @additional_metrics_to_retain_v2, "alertTargets" => @alert_targets, "behaviors" => @behaviors, "metricsExportConfig" => @metrics_export_config, "securityProfileDescription" => @security_profile_description, "securityProfileName" => @security_profile_name, "tags" => @tags, "targetArns" => @target_arns, }) result.compact end |