Class: AWSCDK::SecurityHub::CfnSecurityControlProps

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

Overview

Properties for defining a CfnSecurityControl.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(parameters:, last_update_reason: nil, security_control_arn: nil, security_control_id: nil) ⇒ CfnSecurityControlProps

Returns a new instance of CfnSecurityControlProps.

Parameters:

  • parameters (AWSCDK::IResolvable, Hash{String => AWSCDK::IResolvable, AWSCDK::SecurityHub::CfnSecurityControl::ParameterConfigurationProperty})

    An object that identifies the name of a control parameter, its current value, and whether it has been customized.

  • last_update_reason (String, nil) (defaults to: nil)

    The most recent reason for updating the customizable properties of a security control.

  • security_control_arn (String, nil) (defaults to: nil)

    The Amazon Resource Name (ARN) for a security control across standards, such as arn:aws:securityhub:eu-central-1:123456789012:security-control/S3.1 . This parameter doesn't mention a specific standard.

  • security_control_id (String, nil) (defaults to: nil)

    The unique identifier of a security control across standards.



13
14
15
16
17
18
19
20
21
22
# File 'security_hub/cfn_security_control_props.rb', line 13

def initialize(parameters:, last_update_reason: nil, security_control_arn: nil, security_control_id: nil)
  @parameters = parameters
  Jsii::Type.check_type(@parameters, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfc2VjdXJpdHlodWIuQ2ZuU2VjdXJpdHlDb250cm9sLlBhcmFtZXRlckNvbmZpZ3VyYXRpb25Qcm9wZXJ0eSJ9XX19LCJraW5kIjoibWFwIn19XX19")), "parameters")
  @last_update_reason = last_update_reason
  Jsii::Type.check_type(@last_update_reason, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "lastUpdateReason") unless @last_update_reason.nil?
  @security_control_arn = security_control_arn
  Jsii::Type.check_type(@security_control_arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "securityControlArn") unless @security_control_arn.nil?
  @security_control_id = security_control_id
  Jsii::Type.check_type(@security_control_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "securityControlId") unless @security_control_id.nil?
end

Instance Attribute Details

#last_update_reasonString? (readonly)

The most recent reason for updating the customizable properties of a security control.

This differs from the UpdateReason field of the BatchUpdateStandardsControlAssociations API, which tracks the reason for updating the enablement status of a control. This field accepts alphanumeric characters in addition to white spaces, dashes, and underscores.



35
36
37
# File 'security_hub/cfn_security_control_props.rb', line 35

def last_update_reason
  @last_update_reason
end

#parametersAWSCDK::IResolvable, Hash{String => AWSCDK::IResolvable, AWSCDK::SecurityHub::CfnSecurityControl::ParameterConfigurationProperty} (readonly)

An object that identifies the name of a control parameter, its current value, and whether it has been customized.



28
29
30
# File 'security_hub/cfn_security_control_props.rb', line 28

def parameters
  @parameters
end

#security_control_arnString? (readonly)

The Amazon Resource Name (ARN) for a security control across standards, such as arn:aws:securityhub:eu-central-1:123456789012:security-control/S3.1 . This parameter doesn't mention a specific standard.



40
41
42
# File 'security_hub/cfn_security_control_props.rb', line 40

def security_control_arn
  @security_control_arn
end

#security_control_idString? (readonly)

The unique identifier of a security control across standards.

Values for this field typically consist of an AWS service name and a number, such as APIGateway.3.



47
48
49
# File 'security_hub/cfn_security_control_props.rb', line 47

def security_control_id
  @security_control_id
end

Class Method Details

.jsii_propertiesObject



49
50
51
52
53
54
55
56
# File 'security_hub/cfn_security_control_props.rb', line 49

def self.jsii_properties
  {
    :parameters => "parameters",
    :last_update_reason => "lastUpdateReason",
    :security_control_arn => "securityControlArn",
    :security_control_id => "securityControlId",
  }
end

Instance Method Details

#to_jsiiObject



58
59
60
61
62
63
64
65
66
67
# File 'security_hub/cfn_security_control_props.rb', line 58

def to_jsii
  result = {}
  result.merge!({
    "parameters" => @parameters,
    "lastUpdateReason" => @last_update_reason,
    "securityControlArn" => @security_control_arn,
    "securityControlId" => @security_control_id,
  })
  result.compact
end