:doc:`RDS <../../rds>` / Client / describe_db_security_groups

***************************
describe_db_security_groups
***************************



.. py:method:: RDS.Client.describe_db_security_groups(**kwargs)

  

  Returns a list of ``DBSecurityGroup`` descriptions. If a ``DBSecurityGroupName`` is specified, the list will contain only the descriptions of the specified DB security group.

   

  .. note::

    

    EC2-Classic was retired on August 15, 2022. If you haven't migrated from EC2-Classic to a VPC, we recommend that you migrate as soon as possible. For more information, see `Migrate from EC2-Classic to a VPC <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/vpc-migrate.html>`__ in the *Amazon EC2 User Guide*, the blog `EC2-Classic Networking is Retiring – Here’s How to Prepare <http://aws.amazon.com/blogs/aws/ec2-classic-is-retiring-heres-how-to-prepare/>`__, and `Moving a DB instance not in a VPC into a VPC <https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_VPC.Non-VPC2VPC.html>`__ in the *Amazon RDS User Guide*.

    

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/rds-2014-10-31/DescribeDBSecurityGroups>`_  


  **Request Syntax**
  ::

    response = client.describe_db_security_groups(
        DBSecurityGroupName='string',
        Filters=[
            {
                'Name': 'string',
                'Values': [
                    'string',
                ]
            },
        ],
        MaxRecords=123,
        Marker='string'
    )
    
  :type DBSecurityGroupName: string
  :param DBSecurityGroupName: 

    The name of the DB security group to return details for.

    

  
  :type Filters: list
  :param Filters: 

    This parameter isn't currently supported.

    

  
    - *(dict) --* 

      A filter name and value pair that is used to return a more specific list of results from a describe operation. Filters can be used to match a set of resources by specific criteria, such as IDs. The filters supported by a describe operation are documented with the describe operation.

       

      .. note::

        

        Currently, wildcards are not supported in filters.

        

       

      The following actions can be filtered:

       

      
      * ``DescribeDBClusterBacktracks``
       
      * ``DescribeDBClusterEndpoints``
       
      * ``DescribeDBClusters``
       
      * ``DescribeDBInstances``
       
      * ``DescribeDBRecommendations``
       
      * ``DescribeDBShardGroups``
       
      * ``DescribePendingMaintenanceActions``
      

      

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

        The name of the filter. Filter names are case-sensitive.

        

      
      - **Values** *(list) --* **[REQUIRED]** 

        One or more filter values. Filter values are case-sensitive.

        

      
        - *(string) --* 

        
    
    

  :type MaxRecords: integer
  :param MaxRecords: 

    The maximum number of records to include in the response. If more records exist than the specified ``MaxRecords`` value, a pagination token called a marker is included in the response so that you can retrieve the remaining results.

     

    Default: 100

     

    Constraints: Minimum 20, maximum 100.

    

  
  :type Marker: string
  :param Marker: 

    An optional pagination token provided by a previous ``DescribeDBSecurityGroups`` request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by ``MaxRecords``.

    

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

    
    ::

      {
          'Marker': 'string',
          'DBSecurityGroups': [
              {
                  'OwnerId': 'string',
                  'DBSecurityGroupName': 'string',
                  'DBSecurityGroupDescription': 'string',
                  'VpcId': 'string',
                  'EC2SecurityGroups': [
                      {
                          'Status': 'string',
                          'EC2SecurityGroupName': 'string',
                          'EC2SecurityGroupId': 'string',
                          'EC2SecurityGroupOwnerId': 'string'
                      },
                  ],
                  'IPRanges': [
                      {
                          'Status': 'string',
                          'CIDRIP': 'string'
                      },
                  ],
                  'DBSecurityGroupArn': 'string'
              },
          ]
      }
      
    **Response Structure**

    

    - *(dict) --* 

      Contains the result of a successful invocation of the ``DescribeDBSecurityGroups`` action.

      
      

      - **Marker** *(string) --* 

        An optional pagination token provided by a previous request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by ``MaxRecords``.

        
      

      - **DBSecurityGroups** *(list) --* 

        A list of ``DBSecurityGroup`` instances.

        
        

        - *(dict) --* 

          Contains the details for an Amazon RDS DB security group.

           

          This data type is used as a response element in the ``DescribeDBSecurityGroups`` action.

          
          

          - **OwnerId** *(string) --* 

            Provides the Amazon Web Services ID of the owner of a specific DB security group.

            
          

          - **DBSecurityGroupName** *(string) --* 

            Specifies the name of the DB security group.

            
          

          - **DBSecurityGroupDescription** *(string) --* 

            Provides the description of the DB security group.

            
          

          - **VpcId** *(string) --* 

            Provides the VpcId of the DB security group.

            
          

          - **EC2SecurityGroups** *(list) --* 

            Contains a list of ``EC2SecurityGroup`` elements.

            
            

            - *(dict) --* 

              This data type is used as a response element in the following actions:

               

              
              * ``AuthorizeDBSecurityGroupIngress``
               
              * ``DescribeDBSecurityGroups``
               
              * ``RevokeDBSecurityGroupIngress``
              

              
              

              - **Status** *(string) --* 

                Provides the status of the EC2 security group. Status can be "authorizing", "authorized", "revoking", and "revoked".

                
              

              - **EC2SecurityGroupName** *(string) --* 

                Specifies the name of the EC2 security group.

                
              

              - **EC2SecurityGroupId** *(string) --* 

                Specifies the id of the EC2 security group.

                
              

              - **EC2SecurityGroupOwnerId** *(string) --* 

                Specifies the Amazon Web Services ID of the owner of the EC2 security group specified in the ``EC2SecurityGroupName`` field.

                
          
        
          

          - **IPRanges** *(list) --* 

            Contains a list of ``IPRange`` elements.

            
            

            - *(dict) --* 

              This data type is used as a response element in the ``DescribeDBSecurityGroups`` action.

              
              

              - **Status** *(string) --* 

                The status of the IP range. Status can be "authorizing", "authorized", "revoking", and "revoked".

                
              

              - **CIDRIP** *(string) --* 

                The IP range.

                
          
        
          

          - **DBSecurityGroupArn** *(string) --* 

            The Amazon Resource Name (ARN) for the DB security group.

            
      
    
  
  **Exceptions**
  
  *   :py:class:`RDS.Client.exceptions.DBSecurityGroupNotFoundFault`

  

  **Examples**

  This example lists settings for the specified security group.
  ::

    response = client.describe_db_security_groups(
        DBSecurityGroupName='mydbsecuritygroup',
    )
    
    print(response)

  
  Expected Output:
  ::

    {
        'ResponseMetadata': {
            '...': '...',
        },
    }

  