Class: AWSCDK::SecurityHub::CfnConfigurationPolicy::SecurityHubPolicyProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
security_hub/cfn_configuration_policy.rb

Overview

An object that defines how AWS Security Hub CSPM is configured.

The configuration policy includes whether Security Hub CSPM is enabled or disabled, a list of enabled security standards, a list of enabled or disabled security controls, and a list of custom parameter values for specified controls. If you provide a list of security controls that are enabled in the configuration policy, Security Hub CSPM disables all other controls (including newly released controls). If you provide a list of security controls that are disabled in the configuration policy, Security Hub CSPM enables all other controls (including newly released controls).

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(enabled_standard_identifiers: nil, security_controls_configuration: nil, service_enabled: nil) ⇒ SecurityHubPolicyProperty

Returns a new instance of SecurityHubPolicyProperty.

Parameters:



889
890
891
892
893
894
895
896
# File 'security_hub/cfn_configuration_policy.rb', line 889

def initialize(enabled_standard_identifiers: nil, security_controls_configuration: nil, service_enabled: nil)
  @enabled_standard_identifiers = enabled_standard_identifiers
  Jsii::Type.check_type(@enabled_standard_identifiers, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "enabledStandardIdentifiers") unless @enabled_standard_identifiers.nil?
  @security_controls_configuration = security_controls_configuration.is_a?(Hash) ? ::AWSCDK::SecurityHub::CfnConfigurationPolicy::SecurityControlsConfigurationProperty.new(**security_controls_configuration.transform_keys(&:to_sym)) : security_controls_configuration
  Jsii::Type.check_type(@security_controls_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zZWN1cml0eWh1Yi5DZm5Db25maWd1cmF0aW9uUG9saWN5LlNlY3VyaXR5Q29udHJvbHNDb25maWd1cmF0aW9uUHJvcGVydHkifV19fQ==")), "securityControlsConfiguration") unless @security_controls_configuration.nil?
  @service_enabled = service_enabled
  Jsii::Type.check_type(@service_enabled, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "serviceEnabled") unless @service_enabled.nil?
end

Instance Attribute Details

#enabled_standard_identifiersArray<String>? (readonly)

A list that defines which security standards are enabled in the configuration policy.

This property is required only if ServiceEnabled is set to true in your configuration policy.



904
905
906
# File 'security_hub/cfn_configuration_policy.rb', line 904

def enabled_standard_identifiers
  @enabled_standard_identifiers
end

#security_controls_configurationAWSCDK::IResolvable, ... (readonly)

An object that defines which security controls are enabled in the configuration policy.

The enablement status of a control is aligned across all of the enabled standards in an account.

This property is required only if ServiceEnabled is set to true in your configuration policy.



913
914
915
# File 'security_hub/cfn_configuration_policy.rb', line 913

def security_controls_configuration
  @security_controls_configuration
end

#service_enabledBoolean, ... (readonly)

Indicates whether Security Hub CSPM is enabled in the policy.



918
919
920
# File 'security_hub/cfn_configuration_policy.rb', line 918

def service_enabled
  @service_enabled
end

Class Method Details

.jsii_propertiesObject



920
921
922
923
924
925
926
# File 'security_hub/cfn_configuration_policy.rb', line 920

def self.jsii_properties
  {
    :enabled_standard_identifiers => "enabledStandardIdentifiers",
    :security_controls_configuration => "securityControlsConfiguration",
    :service_enabled => "serviceEnabled",
  }
end

Instance Method Details

#to_jsiiObject



928
929
930
931
932
933
934
935
936
# File 'security_hub/cfn_configuration_policy.rb', line 928

def to_jsii
  result = {}
  result.merge!({
    "enabledStandardIdentifiers" => @enabled_standard_identifiers,
    "securityControlsConfiguration" => @security_controls_configuration,
    "serviceEnabled" => @service_enabled,
  })
  result.compact
end