CfnMitigationAction

class aws_cdk.aws_iot.CfnMitigationAction(scope, id, *, action_params, role_arn, action_name=None, tags=None)

Bases: CfnResource

A CloudFormation AWS::IoT::MitigationAction.

Defines an action that can be applied to audit findings by using StartAuditMitigationActionsTask. For API reference, see CreateMitigationAction and for general information, see Mitigation actions .

CloudformationResource:

AWS::IoT::MitigationAction

Link:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-mitigationaction.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_iot as iot

cfn_mitigation_action = iot.CfnMitigationAction(self, "MyCfnMitigationAction",
    action_params=iot.CfnMitigationAction.ActionParamsProperty(
        add_things_to_thing_group_params=iot.CfnMitigationAction.AddThingsToThingGroupParamsProperty(
            thing_group_names=["thingGroupNames"],

            # the properties below are optional
            override_dynamic_groups=False
        ),
        enable_io_tLogging_params=iot.CfnMitigationAction.EnableIoTLoggingParamsProperty(
            log_level="logLevel",
            role_arn_for_logging="roleArnForLogging"
        ),
        publish_finding_to_sns_params=iot.CfnMitigationAction.PublishFindingToSnsParamsProperty(
            topic_arn="topicArn"
        ),
        replace_default_policy_version_params=iot.CfnMitigationAction.ReplaceDefaultPolicyVersionParamsProperty(
            template_name="templateName"
        ),
        update_ca_certificate_params=iot.CfnMitigationAction.UpdateCACertificateParamsProperty(
            action="action"
        ),
        update_device_certificate_params=iot.CfnMitigationAction.UpdateDeviceCertificateParamsProperty(
            action="action"
        )
    ),
    role_arn="roleArn",

    # the properties below are optional
    action_name="actionName",
    tags=[CfnTag(
        key="key",
        value="value"
    )]
)

Create a new AWS::IoT::MitigationAction.

Parameters:
  • scope (Construct) –

    • scope in which this resource is defined.

  • id (str) –

    • scoped id of the resource.

  • action_params (Union[IResolvable, ActionParamsProperty, Dict[str, Any]]) – The set of parameters for this mitigation action. The parameters vary, depending on the kind of action you apply.

  • role_arn (str) – The IAM role ARN used to apply this mitigation action.

  • action_name (Optional[str]) – The friendly name of the mitigation action.

  • tags (Optional[Sequence[Union[CfnTag, Dict[str, Any]]]]) – Metadata that can be used to manage the mitigation action.

Methods

add_deletion_override(path)

Syntactic sugar for addOverride(path, undefined).

Parameters:

path (str) – The path of the value to delete.

Return type:

None

add_depends_on(target)

Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.

This can be used for resources across stacks (or nested stack) boundaries and the dependency will automatically be transferred to the relevant scope.

Parameters:

target (CfnResource) –

Return type:

None

add_metadata(key, value)

Add a value to the CloudFormation Resource Metadata.

Parameters:
  • key (str) –

  • value (Any) –

See:

Return type:

None

https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html

Note that this is a different set of metadata from CDK node metadata; this metadata ends up in the stack template under the resource, whereas CDK node metadata ends up in the Cloud Assembly.

add_override(path, value)

Adds an override to the synthesized CloudFormation resource.

To add a property override, either use addPropertyOverride or prefix path with “Properties.” (i.e. Properties.TopicName).

If the override is nested, separate each nested level using a dot (.) in the path parameter. If there is an array as part of the nesting, specify the index in the path.

To include a literal . in the property name, prefix with a \. In most programming languages you will need to write this as "\\." because the \ itself will need to be escaped.

For example:

cfn_resource.add_override("Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes", ["myattribute"])
cfn_resource.add_override("Properties.GlobalSecondaryIndexes.1.ProjectionType", "INCLUDE")

would add the overrides Example:

"Properties": {
   "GlobalSecondaryIndexes": [
     {
       "Projection": {
         "NonKeyAttributes": [ "myattribute" ]
         ...
       }
       ...
     },
     {
       "ProjectionType": "INCLUDE"
       ...
     },
   ]
   ...
}

The value argument to addOverride will not be processed or translated in any way. Pass raw JSON values in here with the correct capitalization for CloudFormation. If you pass CDK classes or structs, they will be rendered with lowercased key names, and CloudFormation will reject the template.

Parameters:
  • path (str) –

    • The path of the property, you can use dot notation to override values in complex types. Any intermdediate keys will be created as needed.

  • value (Any) –

    • The value. Could be primitive or complex.

Return type:

None

add_property_deletion_override(property_path)

Adds an override that deletes the value of a property from the resource definition.

Parameters:

property_path (str) – The path to the property.

Return type:

None

add_property_override(property_path, value)

Adds an override to a resource property.

Syntactic sugar for addOverride("Properties.<...>", value).

Parameters:
  • property_path (str) – The path of the property.

  • value (Any) – The value.

Return type:

None

apply_removal_policy(policy=None, *, apply_to_update_replace_policy=None, default=None)

Sets the deletion policy of the resource based on the removal policy specified.

The Removal Policy controls what happens to this resource when it stops being managed by CloudFormation, either because you’ve removed it from the CDK application or because you’ve made a change that requires the resource to be replaced.

The resource can be deleted (RemovalPolicy.DESTROY), or left in your AWS account for data recovery and cleanup later (RemovalPolicy.RETAIN).

Parameters:
  • policy (Optional[RemovalPolicy]) –

  • apply_to_update_replace_policy (Optional[bool]) – Apply the same deletion policy to the resource’s “UpdateReplacePolicy”. Default: true

  • default (Optional[RemovalPolicy]) – The default policy to apply in case the removal policy is not defined. Default: - Default value is resource specific. To determine the default value for a resoure, please consult that specific resource’s documentation.

Return type:

None

get_att(attribute_name)

Returns a token for an runtime attribute of this resource.

Ideally, use generated attribute accessors (e.g. resource.arn), but this can be used for future compatibility in case there is no generated attribute.

Parameters:

attribute_name (str) – The name of the attribute.

Return type:

Reference

get_metadata(key)

Retrieve a value value from the CloudFormation Resource Metadata.

Parameters:

key (str) –

See:

Return type:

Any

https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html

Note that this is a different set of metadata from CDK node metadata; this metadata ends up in the stack template under the resource, whereas CDK node metadata ends up in the Cloud Assembly.

inspect(inspector)

Examines the CloudFormation resource and discloses attributes.

Parameters:

inspector (TreeInspector) –

  • tree inspector to collect and process attributes.

Return type:

None

override_logical_id(new_logical_id)

Overrides the auto-generated logical ID with a specific ID.

Parameters:

new_logical_id (str) – The new logical ID to use for this stack element.

Return type:

None

to_string()

Returns a string representation of this construct.

Return type:

str

Returns:

a string representation of this resource

Attributes

CFN_RESOURCE_TYPE_NAME = 'AWS::IoT::MitigationAction'
action_name

The friendly name of the mitigation action.

Link:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-mitigationaction.html#cfn-iot-mitigationaction-actionname

action_params

The set of parameters for this mitigation action.

The parameters vary, depending on the kind of action you apply.

Link:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-mitigationaction.html#cfn-iot-mitigationaction-actionparams

attr_mitigation_action_arn

The Amazon Resource Name (ARN) of the mitigation action.

CloudformationAttribute:

MitigationActionArn

attr_mitigation_action_id

The ID of the mitigation action.

CloudformationAttribute:

MitigationActionId

cfn_options

Options for this resource, such as condition, update policy etc.

cfn_resource_type

AWS resource type.

creation_stack

return:

the stack trace of the point where this Resource was created from, sourced from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most node +internal+ entries filtered.

logical_id

The logical ID for this CloudFormation stack element.

The logical ID of the element is calculated from the path of the resource node in the construct tree.

To override this value, use overrideLogicalId(newLogicalId).

Returns:

the logical ID as a stringified token. This value will only get resolved during synthesis.

node

The construct tree node associated with this construct.

ref

Return a string that will be resolved to a CloudFormation { Ref } for this element.

If, by any chance, the intrinsic reference of a resource is not a string, you could coerce it to an IResolvable through Lazy.any({ produce: resource.ref }).

role_arn

The IAM role ARN used to apply this mitigation action.

Link:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-mitigationaction.html#cfn-iot-mitigationaction-rolearn

stack

The stack in which this element is defined.

CfnElements must be defined within a stack scope (directly or indirectly).

tags

Metadata that can be used to manage the mitigation action.

Link:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-mitigationaction.html#cfn-iot-mitigationaction-tags

Static Methods

classmethod is_cfn_element(x)

Returns true if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of instanceof to allow stack elements from different versions of this library to be included in the same stack.

Parameters:

x (Any) –

Return type:

bool

Returns:

The construct as a stack element or undefined if it is not a stack element.

classmethod is_cfn_resource(construct)

Check whether the given construct is a CfnResource.

Parameters:

construct (IConstruct) –

Return type:

bool

classmethod is_construct(x)

Return whether the given object is a Construct.

Parameters:

x (Any) –

Return type:

bool

ActionParamsProperty

class CfnMitigationAction.ActionParamsProperty(*, add_things_to_thing_group_params=None, enable_io_t_logging_params=None, publish_finding_to_sns_params=None, replace_default_policy_version_params=None, update_ca_certificate_params=None, update_device_certificate_params=None)

Bases: object

Defines the type of action and the parameters for that action.

Parameters:
Link:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-actionparams.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_iot as iot

action_params_property = iot.CfnMitigationAction.ActionParamsProperty(
    add_things_to_thing_group_params=iot.CfnMitigationAction.AddThingsToThingGroupParamsProperty(
        thing_group_names=["thingGroupNames"],

        # the properties below are optional
        override_dynamic_groups=False
    ),
    enable_io_tLogging_params=iot.CfnMitigationAction.EnableIoTLoggingParamsProperty(
        log_level="logLevel",
        role_arn_for_logging="roleArnForLogging"
    ),
    publish_finding_to_sns_params=iot.CfnMitigationAction.PublishFindingToSnsParamsProperty(
        topic_arn="topicArn"
    ),
    replace_default_policy_version_params=iot.CfnMitigationAction.ReplaceDefaultPolicyVersionParamsProperty(
        template_name="templateName"
    ),
    update_ca_certificate_params=iot.CfnMitigationAction.UpdateCACertificateParamsProperty(
        action="action"
    ),
    update_device_certificate_params=iot.CfnMitigationAction.UpdateDeviceCertificateParamsProperty(
        action="action"
    )
)

Attributes

add_things_to_thing_group_params

Specifies the group to which you want to add the devices.

Link:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-actionparams.html#cfn-iot-mitigationaction-actionparams-addthingstothinggroupparams

enable_io_t_logging_params

Specifies the logging level and the role with permissions for logging.

You cannot specify a logging level of DISABLED .

Link:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-actionparams.html#cfn-iot-mitigationaction-actionparams-enableiotloggingparams

publish_finding_to_sns_params

Specifies the topic to which the finding should be published.

Link:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-actionparams.html#cfn-iot-mitigationaction-actionparams-publishfindingtosnsparams

replace_default_policy_version_params

Replaces the policy version with a default or blank policy.

You specify the template name. Only a value of BLANK_POLICY is currently supported.

Link:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-actionparams.html#cfn-iot-mitigationaction-actionparams-replacedefaultpolicyversionparams

update_ca_certificate_params

Specifies the new state for the CA certificate.

Only a value of DEACTIVATE is currently supported.

Link:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-actionparams.html#cfn-iot-mitigationaction-actionparams-updatecacertificateparams

update_device_certificate_params

Specifies the new state for a device certificate.

Only a value of DEACTIVATE is currently supported.

Link:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-actionparams.html#cfn-iot-mitigationaction-actionparams-updatedevicecertificateparams

AddThingsToThingGroupParamsProperty

class CfnMitigationAction.AddThingsToThingGroupParamsProperty(*, thing_group_names, override_dynamic_groups=None)

Bases: object

Parameters used when defining a mitigation action that move a set of things to a thing group.

Parameters:
  • thing_group_names (Sequence[str]) – The list of groups to which you want to add the things that triggered the mitigation action. You can add a thing to a maximum of 10 groups, but you can’t add a thing to more than one group in the same hierarchy.

  • override_dynamic_groups (Union[bool, IResolvable, None]) – Specifies if this mitigation action can move the things that triggered the mitigation action even if they are part of one or more dynamic thing groups.

Link:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-addthingstothinggroupparams.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_iot as iot

add_things_to_thing_group_params_property = iot.CfnMitigationAction.AddThingsToThingGroupParamsProperty(
    thing_group_names=["thingGroupNames"],

    # the properties below are optional
    override_dynamic_groups=False
)

Attributes

override_dynamic_groups

Specifies if this mitigation action can move the things that triggered the mitigation action even if they are part of one or more dynamic thing groups.

Link:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-addthingstothinggroupparams.html#cfn-iot-mitigationaction-addthingstothinggroupparams-overridedynamicgroups

thing_group_names

The list of groups to which you want to add the things that triggered the mitigation action.

You can add a thing to a maximum of 10 groups, but you can’t add a thing to more than one group in the same hierarchy.

Link:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-addthingstothinggroupparams.html#cfn-iot-mitigationaction-addthingstothinggroupparams-thinggroupnames

EnableIoTLoggingParamsProperty

class CfnMitigationAction.EnableIoTLoggingParamsProperty(*, log_level, role_arn_for_logging)

Bases: object

Parameters used when defining a mitigation action that enable AWS IoT Core logging.

Parameters:
  • log_level (str) – Specifies the type of information to be logged.

  • role_arn_for_logging (str) – The Amazon Resource Name (ARN) of the IAM role used for logging.

Link:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-enableiotloggingparams.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_iot as iot

enable_io_tLogging_params_property = iot.CfnMitigationAction.EnableIoTLoggingParamsProperty(
    log_level="logLevel",
    role_arn_for_logging="roleArnForLogging"
)

Attributes

log_level

Specifies the type of information to be logged.

Link:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-enableiotloggingparams.html#cfn-iot-mitigationaction-enableiotloggingparams-loglevel

role_arn_for_logging

The Amazon Resource Name (ARN) of the IAM role used for logging.

Link:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-enableiotloggingparams.html#cfn-iot-mitigationaction-enableiotloggingparams-rolearnforlogging

PublishFindingToSnsParamsProperty

class CfnMitigationAction.PublishFindingToSnsParamsProperty(*, topic_arn)

Bases: object

Parameters to define a mitigation action that publishes findings to Amazon SNS.

You can implement your own custom actions in response to the Amazon SNS messages.

Parameters:

topic_arn (str) – The ARN of the topic to which you want to publish the findings.

Link:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-publishfindingtosnsparams.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_iot as iot

publish_finding_to_sns_params_property = iot.CfnMitigationAction.PublishFindingToSnsParamsProperty(
    topic_arn="topicArn"
)

Attributes

topic_arn

The ARN of the topic to which you want to publish the findings.

Link:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-publishfindingtosnsparams.html#cfn-iot-mitigationaction-publishfindingtosnsparams-topicarn

ReplaceDefaultPolicyVersionParamsProperty

class CfnMitigationAction.ReplaceDefaultPolicyVersionParamsProperty(*, template_name)

Bases: object

Parameters to define a mitigation action that adds a blank policy to restrict permissions.

Parameters:

template_name (str) – The name of the template to be applied. The only supported value is BLANK_POLICY .

Link:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-replacedefaultpolicyversionparams.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_iot as iot

replace_default_policy_version_params_property = iot.CfnMitigationAction.ReplaceDefaultPolicyVersionParamsProperty(
    template_name="templateName"
)

Attributes

template_name

The name of the template to be applied.

The only supported value is BLANK_POLICY .

Link:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-replacedefaultpolicyversionparams.html#cfn-iot-mitigationaction-replacedefaultpolicyversionparams-templatename

UpdateCACertificateParamsProperty

class CfnMitigationAction.UpdateCACertificateParamsProperty(*, action)

Bases: object

Parameters to define a mitigation action that changes the state of the CA certificate to inactive.

Parameters:

action (str) – The action that you want to apply to the CA certificate. The only supported value is DEACTIVATE .

Link:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-updatecacertificateparams.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_iot as iot

update_cACertificate_params_property = iot.CfnMitigationAction.UpdateCACertificateParamsProperty(
    action="action"
)

Attributes

action

The action that you want to apply to the CA certificate.

The only supported value is DEACTIVATE .

Link:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-updatecacertificateparams.html#cfn-iot-mitigationaction-updatecacertificateparams-action

UpdateDeviceCertificateParamsProperty

class CfnMitigationAction.UpdateDeviceCertificateParamsProperty(*, action)

Bases: object

Parameters to define a mitigation action that changes the state of the device certificate to inactive.

Parameters:

action (str) – The action that you want to apply to the device certificate. The only supported value is DEACTIVATE .

Link:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-updatedevicecertificateparams.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_iot as iot

update_device_certificate_params_property = iot.CfnMitigationAction.UpdateDeviceCertificateParamsProperty(
    action="action"
)

Attributes

action

The action that you want to apply to the device certificate.

The only supported value is DEACTIVATE .

Link:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-mitigationaction-updatedevicecertificateparams.html#cfn-iot-mitigationaction-updatedevicecertificateparams-action