Class: AWSCDK::IoT::CfnScheduledAuditProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
io_t/cfn_scheduled_audit_props.rb

Overview

Properties for defining a CfnScheduledAudit.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(frequency:, target_check_names:, day_of_month: nil, day_of_week: nil, scheduled_audit_name: nil, tags: nil) ⇒ CfnScheduledAuditProps

Returns a new instance of CfnScheduledAuditProps.

Parameters:

  • frequency (String)

    How often the scheduled audit occurs.

  • target_check_names (Array<String>)

    Which checks are performed during the scheduled audit.

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

    The day of the month on which the scheduled audit is run (if the frequency is "MONTHLY").

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

    The day of the week on which the scheduled audit is run (if the frequency is "WEEKLY" or "BIWEEKLY").

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

    The name of the scheduled audit.

  • tags (Array<AWSCDK::CfnTag>, nil) (defaults to: nil)

    Metadata that can be used to manage the scheduled audit.



15
16
17
18
19
20
21
22
23
24
25
26
27
28
# File 'io_t/cfn_scheduled_audit_props.rb', line 15

def initialize(frequency:, target_check_names:, day_of_month: nil, day_of_week: nil, scheduled_audit_name: nil, tags: nil)
  @frequency = frequency
  Jsii::Type.check_type(@frequency, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "frequency")
  @target_check_names = target_check_names
  Jsii::Type.check_type(@target_check_names, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "targetCheckNames")
  @day_of_month = day_of_month
  Jsii::Type.check_type(@day_of_month, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "dayOfMonth") unless @day_of_month.nil?
  @day_of_week = day_of_week
  Jsii::Type.check_type(@day_of_week, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "dayOfWeek") unless @day_of_week.nil?
  @scheduled_audit_name = scheduled_audit_name
  Jsii::Type.check_type(@scheduled_audit_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "scheduledAuditName") unless @scheduled_audit_name.nil?
  @tags = tags.is_a?(Array) ? tags.map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::CfnTag.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : tags
  Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLkNmblRhZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "tags") unless @tags.nil?
end

Instance Attribute Details

#day_of_monthString? (readonly)

The day of the month on which the scheduled audit is run (if the frequency is "MONTHLY").

If days 29-31 are specified, and the month does not have that many days, the audit takes place on the "LAST" day of the month.



65
66
67
# File 'io_t/cfn_scheduled_audit_props.rb', line 65

def day_of_month
  @day_of_month
end

#day_of_weekString? (readonly)

The day of the week on which the scheduled audit is run (if the frequency is "WEEKLY" or "BIWEEKLY").



70
71
72
# File 'io_t/cfn_scheduled_audit_props.rb', line 70

def day_of_week
  @day_of_week
end

#frequencyString (readonly)

How often the scheduled audit occurs.



34
35
36
# File 'io_t/cfn_scheduled_audit_props.rb', line 34

def frequency
  @frequency
end

#scheduled_audit_nameString? (readonly)

The name of the scheduled audit.



75
76
77
# File 'io_t/cfn_scheduled_audit_props.rb', line 75

def scheduled_audit_name
  @scheduled_audit_name
end

#tagsArray<AWSCDK::CfnTag>? (readonly)

Metadata that can be used to manage the scheduled audit.



80
81
82
# File 'io_t/cfn_scheduled_audit_props.rb', line 80

def tags
  @tags
end

#target_check_namesArray<String> (readonly)

Which checks are performed during the scheduled audit.

Checks must be enabled for your account. (Use DescribeAccountAuditConfiguration to see the list of all checks, including those that are enabled or use UpdateAccountAuditConfiguration to select which checks are enabled.)

The following checks are currently available:

  • AUTHENTICATED_COGNITO_ROLE_OVERLY_PERMISSIVE_CHECK
  • CA_CERTIFICATE_EXPIRING_CHECK
  • CA_CERTIFICATE_KEY_QUALITY_CHECK
  • CONFLICTING_CLIENT_IDS_CHECK
  • DEVICE_CERTIFICATE_EXPIRING_CHECK
  • DEVICE_CERTIFICATE_KEY_QUALITY_CHECK
  • DEVICE_CERTIFICATE_SHARED_CHECK
  • IOT_POLICY_OVERLY_PERMISSIVE_CHECK
  • IOT_ROLE_ALIAS_ALLOWS_ACCESS_TO_UNUSED_SERVICES_CHECK
  • IOT_ROLE_ALIAS_OVERLY_PERMISSIVE_CHECK
  • LOGGING_DISABLED_CHECK
  • REVOKED_CA_CERTIFICATE_STILL_ACTIVE_CHECK
  • REVOKED_DEVICE_CERTIFICATE_STILL_ACTIVE_CHECK
  • UNAUTHENTICATED_COGNITO_ROLE_OVERLY_PERMISSIVE_CHECK


58
59
60
# File 'io_t/cfn_scheduled_audit_props.rb', line 58

def target_check_names
  @target_check_names
end

Class Method Details

.jsii_propertiesObject



82
83
84
85
86
87
88
89
90
91
# File 'io_t/cfn_scheduled_audit_props.rb', line 82

def self.jsii_properties
  {
    :frequency => "frequency",
    :target_check_names => "targetCheckNames",
    :day_of_month => "dayOfMonth",
    :day_of_week => "dayOfWeek",
    :scheduled_audit_name => "scheduledAuditName",
    :tags => "tags",
  }
end

Instance Method Details

#to_jsiiObject



93
94
95
96
97
98
99
100
101
102
103
104
# File 'io_t/cfn_scheduled_audit_props.rb', line 93

def to_jsii
  result = {}
  result.merge!({
    "frequency" => @frequency,
    "targetCheckNames" => @target_check_names,
    "dayOfMonth" => @day_of_month,
    "dayOfWeek" => @day_of_week,
    "scheduledAuditName" => @scheduled_audit_name,
    "tags" => @tags,
  })
  result.compact
end