Class: AWSCDK::SecurityHub::CfnAutomationRule::MapFilterProperty
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::SecurityHub::CfnAutomationRule::MapFilterProperty
- Defined in:
- security_hub/cfn_automation_rule.rb
Overview
A map filter for filtering AWS Security Hub CSPM findings.
Each map filter provides the field to check for, the value to check for, and the comparison operator.
Instance Attribute Summary collapse
-
#comparison ⇒ String
readonly
The condition to apply to the key value when filtering Security Hub CSPM findings with a map filter.
-
#key ⇒ String
readonly
The key of the map filter.
-
#value ⇒ String
readonly
The value for the key in the map filter.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(comparison:, key:, value:) ⇒ MapFilterProperty
constructor
A new instance of MapFilterProperty.
- #to_jsii ⇒ Object
Constructor Details
#initialize(comparison:, key:, value:) ⇒ MapFilterProperty
Returns a new instance of MapFilterProperty.
1364 1365 1366 1367 1368 1369 1370 1371 |
# File 'security_hub/cfn_automation_rule.rb', line 1364 def initialize(comparison:, key:, value:) @comparison = comparison Jsii::Type.check_type(@comparison, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "comparison") @key = key Jsii::Type.check_type(@key, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "key") @value = value Jsii::Type.check_type(@value, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "value") end |
Instance Attribute Details
#comparison ⇒ String (readonly)
The condition to apply to the key value when filtering Security Hub CSPM findings with a map filter.
To search for values that have the filter value, use one of the following comparison operators:
- To search for values that include the filter value, use
CONTAINS. For example, for theResourceTagsfield, the filterDepartment CONTAINS Securitymatches findings that include the valueSecurityfor theDepartmenttag. In the same example, a finding with a value ofSecurity teamfor theDepartmenttag is a match. - To search for values that exactly match the filter value, use
EQUALS. For example, for theResourceTagsfield, the filterDepartment EQUALS Securitymatches findings that have the valueSecurityfor theDepartmenttag.
CONTAINS and EQUALS filters on the same field are joined by OR . A finding matches if it matches any one of those filters. For example, the filters Department CONTAINS Security OR Department CONTAINS Finance match a finding that includes either Security , Finance , or both values.
To search for values that don't have the filter value, use one of the following comparison operators:
- To search for values that exclude the filter value, use
NOT_CONTAINS. For example, for theResourceTagsfield, the filterDepartment NOT_CONTAINS Financematches findings that exclude the valueFinancefor theDepartmenttag. - To search for values other than the filter value, use
NOT_EQUALS. For example, for theResourceTagsfield, the filterDepartment NOT_EQUALS Financematches findings that don’t have the valueFinancefor theDepartmenttag.
NOT_CONTAINS and NOT_EQUALS filters on the same field are joined by AND . A finding matches only if it matches all of those filters. For example, the filters Department NOT_CONTAINS Security AND Department NOT_CONTAINS Finance match a finding that excludes both the Security and Finance values.
CONTAINS filters can only be used with other CONTAINS filters. NOT_CONTAINS filters can only be used with other NOT_CONTAINS filters.
You can’t have both a CONTAINS filter and a NOT_CONTAINS filter on the same field. Similarly, you can’t have both an EQUALS filter and a NOT_EQUALS filter on the same field. Combining filters in this way returns an error.
CONTAINS and NOT_CONTAINS operators can be used only with automation rules. For more information, see Automation rules in the AWS Security Hub CSPM User Guide .
1397 1398 1399 |
# File 'security_hub/cfn_automation_rule.rb', line 1397 def comparison @comparison end |
#key ⇒ String (readonly)
The key of the map filter.
For example, for ResourceTags , Key identifies the name of the tag. For UserDefinedFields , Key is the name of the field.
1404 1405 1406 |
# File 'security_hub/cfn_automation_rule.rb', line 1404 def key @key end |
#value ⇒ String (readonly)
The value for the key in the map filter.
Filter values are case sensitive. For example, one of the values for a tag called Department might be Security . If you provide security as the filter value, then there's no match.
1411 1412 1413 |
# File 'security_hub/cfn_automation_rule.rb', line 1411 def value @value end |
Class Method Details
.jsii_properties ⇒ Object
1413 1414 1415 1416 1417 1418 1419 |
# File 'security_hub/cfn_automation_rule.rb', line 1413 def self.jsii_properties { :comparison => "comparison", :key => "key", :value => "value", } end |
Instance Method Details
#to_jsii ⇒ Object
1421 1422 1423 1424 1425 1426 1427 1428 1429 |
# File 'security_hub/cfn_automation_rule.rb', line 1421 def to_jsii result = {} result.merge!({ "comparison" => @comparison, "key" => @key, "value" => @value, }) result.compact end |