:doc:`SecurityHub <../../securityhub>` / Client / update_security_control

***********************
update_security_control
***********************



.. py:method:: SecurityHub.Client.update_security_control(**kwargs)

  

  Updates the properties of a security control.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/securityhub-2018-10-26/UpdateSecurityControl>`_  


  **Request Syntax**
  ::

    response = client.update_security_control(
        SecurityControlId='string',
        Parameters={
            'string': {
                'ValueType': 'DEFAULT'|'CUSTOM',
                'Value': {
                    'Integer': 123,
                    'IntegerList': [
                        123,
                    ],
                    'Double': 123.0,
                    'String': 'string',
                    'StringList': [
                        'string',
                    ],
                    'Boolean': True|False,
                    'Enum': 'string',
                    'EnumList': [
                        'string',
                    ]
                }
            }
        },
        LastUpdateReason='string'
    )
    
  :type SecurityControlId: string
  :param SecurityControlId: **[REQUIRED]** 

    The Amazon Resource Name (ARN) or ID of the control to update.

    

  
  :type Parameters: dict
  :param Parameters: **[REQUIRED]** 

    An object that specifies which security control parameters to update.

    

  
    - *(string) --* 

    
      - *(dict) --* 

        An object that provides the current value of a security control parameter and identifies whether it has been customized.

        

      
        - **ValueType** *(string) --* **[REQUIRED]** 

          Identifies whether a control parameter uses a custom user-defined value or subscribes to the default Security Hub behavior.

           

          When ``ValueType`` is set equal to ``DEFAULT``, the default behavior can be a specific Security Hub default value, or the default behavior can be to ignore a specific parameter. When ``ValueType`` is set equal to ``DEFAULT``, Security Hub ignores user-provided input for the ``Value`` field.

           

          When ``ValueType`` is set equal to ``CUSTOM``, the ``Value`` field can't be empty.

          

        
        - **Value** *(dict) --* 

          The current value of a control parameter.

          .. note::    This is a Tagged Union structure. Only one of the     following top level keys can be set: ``Integer``, ``IntegerList``, ``Double``, ``String``, ``StringList``, ``Boolean``, ``Enum``, ``EnumList``. 

        
          - **Integer** *(integer) --* 

            A control parameter that is an integer.

            

          
          - **IntegerList** *(list) --* 

            A control parameter that is a list of integers.

            

          
            - *(integer) --* 

            
        
          - **Double** *(float) --* 

            A control parameter that is a double.

            

          
          - **String** *(string) --* 

            A control parameter that is a string.

            

          
          - **StringList** *(list) --* 

            A control parameter that is a list of strings.

            

          
            - *(string) --* 

            
        
          - **Boolean** *(boolean) --* 

            A control parameter that is a boolean.

            

          
          - **Enum** *(string) --* 

            A control parameter that is an enum.

            

          
          - **EnumList** *(list) --* 

            A control parameter that is a list of enums.

            

          
            - *(string) --* 

            
        
        
      


  :type LastUpdateReason: string
  :param LastUpdateReason: 

    The most recent reason for updating the properties of the security control. This field accepts alphanumeric characters in addition to white spaces, dashes, and underscores.

    

  
  
  :rtype: dict
  :returns: 
    
    **Response Syntax**

    
    ::

      {}
      
    **Response Structure**

    

    - *(dict) --* 
  
  **Exceptions**
  
  *   :py:class:`SecurityHub.Client.exceptions.InternalException`

  
  *   :py:class:`SecurityHub.Client.exceptions.InvalidInputException`

  
  *   :py:class:`SecurityHub.Client.exceptions.InvalidAccessException`

  
  *   :py:class:`SecurityHub.Client.exceptions.LimitExceededException`

  
  *   :py:class:`SecurityHub.Client.exceptions.ResourceNotFoundException`

  
  *   :py:class:`SecurityHub.Client.exceptions.ResourceInUseException`

  
  *   :py:class:`SecurityHub.Client.exceptions.AccessDeniedException`

  
  *   :py:class:`SecurityHub.Client.exceptions.ResourceNotFoundException`

  
  *   :py:class:`SecurityHub.Client.exceptions.ResourceInUseException`

  