Class ConfigRule

  • All Implemented Interfaces:
    Serializable, Cloneable

    public class ConfigRule
    extends Object
    implements Serializable, Cloneable

    An AWS Lambda function that evaluates configuration items to assess whether your AWS resources comply with your desired configurations. This function can run when AWS Config detects a configuration change to an AWS resource, or when it delivers a configuration snapshot of the resources in the account.

    For more information about developing and using AWS Config rules, see Evaluating AWS Resource Configurations with AWS Config in the AWS Config Developer Guide.

    See Also:
    Serialized Form
    • Constructor Detail

      • ConfigRule

        public ConfigRule()
    • Method Detail

      • setConfigRuleName

        public void setConfigRuleName​(String configRuleName)

        The name that you assign to the AWS Config rule. The name is required if you are adding a new rule.

        Parameters:
        configRuleName - The name that you assign to the AWS Config rule. The name is required if you are adding a new rule.
      • getConfigRuleName

        public String getConfigRuleName()

        The name that you assign to the AWS Config rule. The name is required if you are adding a new rule.

        Returns:
        The name that you assign to the AWS Config rule. The name is required if you are adding a new rule.
      • withConfigRuleName

        public ConfigRule withConfigRuleName​(String configRuleName)

        The name that you assign to the AWS Config rule. The name is required if you are adding a new rule.

        Parameters:
        configRuleName - The name that you assign to the AWS Config rule. The name is required if you are adding a new rule.
        Returns:
        Returns a reference to this object so that method calls can be chained together.
      • setConfigRuleArn

        public void setConfigRuleArn​(String configRuleArn)

        The Amazon Resource Name (ARN) of the AWS Config rule.

        Parameters:
        configRuleArn - The Amazon Resource Name (ARN) of the AWS Config rule.
      • getConfigRuleArn

        public String getConfigRuleArn()

        The Amazon Resource Name (ARN) of the AWS Config rule.

        Returns:
        The Amazon Resource Name (ARN) of the AWS Config rule.
      • withConfigRuleArn

        public ConfigRule withConfigRuleArn​(String configRuleArn)

        The Amazon Resource Name (ARN) of the AWS Config rule.

        Parameters:
        configRuleArn - The Amazon Resource Name (ARN) of the AWS Config rule.
        Returns:
        Returns a reference to this object so that method calls can be chained together.
      • setConfigRuleId

        public void setConfigRuleId​(String configRuleId)

        The ID of the AWS Config rule.

        Parameters:
        configRuleId - The ID of the AWS Config rule.
      • getConfigRuleId

        public String getConfigRuleId()

        The ID of the AWS Config rule.

        Returns:
        The ID of the AWS Config rule.
      • withConfigRuleId

        public ConfigRule withConfigRuleId​(String configRuleId)

        The ID of the AWS Config rule.

        Parameters:
        configRuleId - The ID of the AWS Config rule.
        Returns:
        Returns a reference to this object so that method calls can be chained together.
      • setDescription

        public void setDescription​(String description)

        The description that you provide for the AWS Config rule.

        Parameters:
        description - The description that you provide for the AWS Config rule.
      • getDescription

        public String getDescription()

        The description that you provide for the AWS Config rule.

        Returns:
        The description that you provide for the AWS Config rule.
      • withDescription

        public ConfigRule withDescription​(String description)

        The description that you provide for the AWS Config rule.

        Parameters:
        description - The description that you provide for the AWS Config rule.
        Returns:
        Returns a reference to this object so that method calls can be chained together.
      • setScope

        public void setScope​(Scope scope)

        Defines which resources can trigger an evaluation for the rule. The scope can include one or more resource types, a combination of one resource type and one resource ID, or a combination of a tag key and value. Specify a scope to constrain the resources that can trigger an evaluation for the rule. If you do not specify a scope, evaluations are triggered when any resource in the recording group changes.

        Parameters:
        scope - Defines which resources can trigger an evaluation for the rule. The scope can include one or more resource types, a combination of one resource type and one resource ID, or a combination of a tag key and value. Specify a scope to constrain the resources that can trigger an evaluation for the rule. If you do not specify a scope, evaluations are triggered when any resource in the recording group changes.
      • getScope

        public Scope getScope()

        Defines which resources can trigger an evaluation for the rule. The scope can include one or more resource types, a combination of one resource type and one resource ID, or a combination of a tag key and value. Specify a scope to constrain the resources that can trigger an evaluation for the rule. If you do not specify a scope, evaluations are triggered when any resource in the recording group changes.

        Returns:
        Defines which resources can trigger an evaluation for the rule. The scope can include one or more resource types, a combination of one resource type and one resource ID, or a combination of a tag key and value. Specify a scope to constrain the resources that can trigger an evaluation for the rule. If you do not specify a scope, evaluations are triggered when any resource in the recording group changes.
      • withScope

        public ConfigRule withScope​(Scope scope)

        Defines which resources can trigger an evaluation for the rule. The scope can include one or more resource types, a combination of one resource type and one resource ID, or a combination of a tag key and value. Specify a scope to constrain the resources that can trigger an evaluation for the rule. If you do not specify a scope, evaluations are triggered when any resource in the recording group changes.

        Parameters:
        scope - Defines which resources can trigger an evaluation for the rule. The scope can include one or more resource types, a combination of one resource type and one resource ID, or a combination of a tag key and value. Specify a scope to constrain the resources that can trigger an evaluation for the rule. If you do not specify a scope, evaluations are triggered when any resource in the recording group changes.
        Returns:
        Returns a reference to this object so that method calls can be chained together.
      • setSource

        public void setSource​(Source source)

        Provides the rule owner (AWS or customer), the rule identifier, and the events that cause the function to evaluate your AWS resources.

        Parameters:
        source - Provides the rule owner (AWS or customer), the rule identifier, and the events that cause the function to evaluate your AWS resources.
      • getSource

        public Source getSource()

        Provides the rule owner (AWS or customer), the rule identifier, and the events that cause the function to evaluate your AWS resources.

        Returns:
        Provides the rule owner (AWS or customer), the rule identifier, and the events that cause the function to evaluate your AWS resources.
      • withSource

        public ConfigRule withSource​(Source source)

        Provides the rule owner (AWS or customer), the rule identifier, and the events that cause the function to evaluate your AWS resources.

        Parameters:
        source - Provides the rule owner (AWS or customer), the rule identifier, and the events that cause the function to evaluate your AWS resources.
        Returns:
        Returns a reference to this object so that method calls can be chained together.
      • setInputParameters

        public void setInputParameters​(String inputParameters)

        A string in JSON format that is passed to the AWS Config rule Lambda function.

        Parameters:
        inputParameters - A string in JSON format that is passed to the AWS Config rule Lambda function.
      • getInputParameters

        public String getInputParameters()

        A string in JSON format that is passed to the AWS Config rule Lambda function.

        Returns:
        A string in JSON format that is passed to the AWS Config rule Lambda function.
      • withInputParameters

        public ConfigRule withInputParameters​(String inputParameters)

        A string in JSON format that is passed to the AWS Config rule Lambda function.

        Parameters:
        inputParameters - A string in JSON format that is passed to the AWS Config rule Lambda function.
        Returns:
        Returns a reference to this object so that method calls can be chained together.
      • setMaximumExecutionFrequency

        public void setMaximumExecutionFrequency​(String maximumExecutionFrequency)

        The maximum frequency at which the AWS Config rule runs evaluations.

        If your rule is periodic, meaning it runs an evaluation when AWS Config delivers a configuration snapshot, then it cannot run evaluations more frequently than AWS Config delivers the snapshots. For periodic rules, set the value of the MaximumExecutionFrequency key to be equal to or greater than the value of the deliveryFrequency key, which is part of ConfigSnapshotDeliveryProperties. To update the frequency with which AWS Config delivers your snapshots, use the PutDeliveryChannel action.

        Parameters:
        maximumExecutionFrequency - The maximum frequency at which the AWS Config rule runs evaluations.

        If your rule is periodic, meaning it runs an evaluation when AWS Config delivers a configuration snapshot, then it cannot run evaluations more frequently than AWS Config delivers the snapshots. For periodic rules, set the value of the MaximumExecutionFrequency key to be equal to or greater than the value of the deliveryFrequency key, which is part of ConfigSnapshotDeliveryProperties. To update the frequency with which AWS Config delivers your snapshots, use the PutDeliveryChannel action.

        See Also:
        MaximumExecutionFrequency
      • getMaximumExecutionFrequency

        public String getMaximumExecutionFrequency()

        The maximum frequency at which the AWS Config rule runs evaluations.

        If your rule is periodic, meaning it runs an evaluation when AWS Config delivers a configuration snapshot, then it cannot run evaluations more frequently than AWS Config delivers the snapshots. For periodic rules, set the value of the MaximumExecutionFrequency key to be equal to or greater than the value of the deliveryFrequency key, which is part of ConfigSnapshotDeliveryProperties. To update the frequency with which AWS Config delivers your snapshots, use the PutDeliveryChannel action.

        Returns:
        The maximum frequency at which the AWS Config rule runs evaluations.

        If your rule is periodic, meaning it runs an evaluation when AWS Config delivers a configuration snapshot, then it cannot run evaluations more frequently than AWS Config delivers the snapshots. For periodic rules, set the value of the MaximumExecutionFrequency key to be equal to or greater than the value of the deliveryFrequency key, which is part of ConfigSnapshotDeliveryProperties. To update the frequency with which AWS Config delivers your snapshots, use the PutDeliveryChannel action.

        See Also:
        MaximumExecutionFrequency
      • withMaximumExecutionFrequency

        public ConfigRule withMaximumExecutionFrequency​(String maximumExecutionFrequency)

        The maximum frequency at which the AWS Config rule runs evaluations.

        If your rule is periodic, meaning it runs an evaluation when AWS Config delivers a configuration snapshot, then it cannot run evaluations more frequently than AWS Config delivers the snapshots. For periodic rules, set the value of the MaximumExecutionFrequency key to be equal to or greater than the value of the deliveryFrequency key, which is part of ConfigSnapshotDeliveryProperties. To update the frequency with which AWS Config delivers your snapshots, use the PutDeliveryChannel action.

        Parameters:
        maximumExecutionFrequency - The maximum frequency at which the AWS Config rule runs evaluations.

        If your rule is periodic, meaning it runs an evaluation when AWS Config delivers a configuration snapshot, then it cannot run evaluations more frequently than AWS Config delivers the snapshots. For periodic rules, set the value of the MaximumExecutionFrequency key to be equal to or greater than the value of the deliveryFrequency key, which is part of ConfigSnapshotDeliveryProperties. To update the frequency with which AWS Config delivers your snapshots, use the PutDeliveryChannel action.

        Returns:
        Returns a reference to this object so that method calls can be chained together.
        See Also:
        MaximumExecutionFrequency
      • setMaximumExecutionFrequency

        public void setMaximumExecutionFrequency​(MaximumExecutionFrequency maximumExecutionFrequency)

        The maximum frequency at which the AWS Config rule runs evaluations.

        If your rule is periodic, meaning it runs an evaluation when AWS Config delivers a configuration snapshot, then it cannot run evaluations more frequently than AWS Config delivers the snapshots. For periodic rules, set the value of the MaximumExecutionFrequency key to be equal to or greater than the value of the deliveryFrequency key, which is part of ConfigSnapshotDeliveryProperties. To update the frequency with which AWS Config delivers your snapshots, use the PutDeliveryChannel action.

        Parameters:
        maximumExecutionFrequency - The maximum frequency at which the AWS Config rule runs evaluations.

        If your rule is periodic, meaning it runs an evaluation when AWS Config delivers a configuration snapshot, then it cannot run evaluations more frequently than AWS Config delivers the snapshots. For periodic rules, set the value of the MaximumExecutionFrequency key to be equal to or greater than the value of the deliveryFrequency key, which is part of ConfigSnapshotDeliveryProperties. To update the frequency with which AWS Config delivers your snapshots, use the PutDeliveryChannel action.

        See Also:
        MaximumExecutionFrequency
      • withMaximumExecutionFrequency

        public ConfigRule withMaximumExecutionFrequency​(MaximumExecutionFrequency maximumExecutionFrequency)

        The maximum frequency at which the AWS Config rule runs evaluations.

        If your rule is periodic, meaning it runs an evaluation when AWS Config delivers a configuration snapshot, then it cannot run evaluations more frequently than AWS Config delivers the snapshots. For periodic rules, set the value of the MaximumExecutionFrequency key to be equal to or greater than the value of the deliveryFrequency key, which is part of ConfigSnapshotDeliveryProperties. To update the frequency with which AWS Config delivers your snapshots, use the PutDeliveryChannel action.

        Parameters:
        maximumExecutionFrequency - The maximum frequency at which the AWS Config rule runs evaluations.

        If your rule is periodic, meaning it runs an evaluation when AWS Config delivers a configuration snapshot, then it cannot run evaluations more frequently than AWS Config delivers the snapshots. For periodic rules, set the value of the MaximumExecutionFrequency key to be equal to or greater than the value of the deliveryFrequency key, which is part of ConfigSnapshotDeliveryProperties. To update the frequency with which AWS Config delivers your snapshots, use the PutDeliveryChannel action.

        Returns:
        Returns a reference to this object so that method calls can be chained together.
        See Also:
        MaximumExecutionFrequency
      • setConfigRuleState

        public void setConfigRuleState​(String configRuleState)

        Indicates whether the AWS Config rule is active or currently being deleted by AWS Config.

        AWS Config sets the state of a rule to DELETING temporarily after you use the DeleteConfigRule request to delete the rule. After AWS Config finishes deleting a rule, the rule and all of its evaluations are erased and no longer available.

        You cannot add a rule to AWS Config that has the state set to DELETING. If you want to delete a rule, you must use the DeleteConfigRule request.

        Parameters:
        configRuleState - Indicates whether the AWS Config rule is active or currently being deleted by AWS Config.

        AWS Config sets the state of a rule to DELETING temporarily after you use the DeleteConfigRule request to delete the rule. After AWS Config finishes deleting a rule, the rule and all of its evaluations are erased and no longer available.

        You cannot add a rule to AWS Config that has the state set to DELETING. If you want to delete a rule, you must use the DeleteConfigRule request.

        See Also:
        ConfigRuleState
      • getConfigRuleState

        public String getConfigRuleState()

        Indicates whether the AWS Config rule is active or currently being deleted by AWS Config.

        AWS Config sets the state of a rule to DELETING temporarily after you use the DeleteConfigRule request to delete the rule. After AWS Config finishes deleting a rule, the rule and all of its evaluations are erased and no longer available.

        You cannot add a rule to AWS Config that has the state set to DELETING. If you want to delete a rule, you must use the DeleteConfigRule request.

        Returns:
        Indicates whether the AWS Config rule is active or currently being deleted by AWS Config.

        AWS Config sets the state of a rule to DELETING temporarily after you use the DeleteConfigRule request to delete the rule. After AWS Config finishes deleting a rule, the rule and all of its evaluations are erased and no longer available.

        You cannot add a rule to AWS Config that has the state set to DELETING. If you want to delete a rule, you must use the DeleteConfigRule request.

        See Also:
        ConfigRuleState
      • withConfigRuleState

        public ConfigRule withConfigRuleState​(String configRuleState)

        Indicates whether the AWS Config rule is active or currently being deleted by AWS Config.

        AWS Config sets the state of a rule to DELETING temporarily after you use the DeleteConfigRule request to delete the rule. After AWS Config finishes deleting a rule, the rule and all of its evaluations are erased and no longer available.

        You cannot add a rule to AWS Config that has the state set to DELETING. If you want to delete a rule, you must use the DeleteConfigRule request.

        Parameters:
        configRuleState - Indicates whether the AWS Config rule is active or currently being deleted by AWS Config.

        AWS Config sets the state of a rule to DELETING temporarily after you use the DeleteConfigRule request to delete the rule. After AWS Config finishes deleting a rule, the rule and all of its evaluations are erased and no longer available.

        You cannot add a rule to AWS Config that has the state set to DELETING. If you want to delete a rule, you must use the DeleteConfigRule request.

        Returns:
        Returns a reference to this object so that method calls can be chained together.
        See Also:
        ConfigRuleState
      • setConfigRuleState

        public void setConfigRuleState​(ConfigRuleState configRuleState)

        Indicates whether the AWS Config rule is active or currently being deleted by AWS Config.

        AWS Config sets the state of a rule to DELETING temporarily after you use the DeleteConfigRule request to delete the rule. After AWS Config finishes deleting a rule, the rule and all of its evaluations are erased and no longer available.

        You cannot add a rule to AWS Config that has the state set to DELETING. If you want to delete a rule, you must use the DeleteConfigRule request.

        Parameters:
        configRuleState - Indicates whether the AWS Config rule is active or currently being deleted by AWS Config.

        AWS Config sets the state of a rule to DELETING temporarily after you use the DeleteConfigRule request to delete the rule. After AWS Config finishes deleting a rule, the rule and all of its evaluations are erased and no longer available.

        You cannot add a rule to AWS Config that has the state set to DELETING. If you want to delete a rule, you must use the DeleteConfigRule request.

        See Also:
        ConfigRuleState
      • withConfigRuleState

        public ConfigRule withConfigRuleState​(ConfigRuleState configRuleState)

        Indicates whether the AWS Config rule is active or currently being deleted by AWS Config.

        AWS Config sets the state of a rule to DELETING temporarily after you use the DeleteConfigRule request to delete the rule. After AWS Config finishes deleting a rule, the rule and all of its evaluations are erased and no longer available.

        You cannot add a rule to AWS Config that has the state set to DELETING. If you want to delete a rule, you must use the DeleteConfigRule request.

        Parameters:
        configRuleState - Indicates whether the AWS Config rule is active or currently being deleted by AWS Config.

        AWS Config sets the state of a rule to DELETING temporarily after you use the DeleteConfigRule request to delete the rule. After AWS Config finishes deleting a rule, the rule and all of its evaluations are erased and no longer available.

        You cannot add a rule to AWS Config that has the state set to DELETING. If you want to delete a rule, you must use the DeleteConfigRule request.

        Returns:
        Returns a reference to this object so that method calls can be chained together.
        See Also:
        ConfigRuleState
      • toString

        public String toString()
        Returns a string representation of this object; useful for testing and debugging.
        Overrides:
        toString in class Object
        Returns:
        A string representation of this object.
        See Also:
        Object.toString()
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object