:doc:`S3Control <../../s3control>` / Client / get_public_access_block

***********************
get_public_access_block
***********************



.. py:method:: S3Control.Client.get_public_access_block(**kwargs)

  

  .. note::

    

    This operation is not supported by directory buckets.

    

   

  Retrieves the ``PublicAccessBlock`` configuration for an Amazon Web Services account. This operation returns the effective account-level configuration, which may inherit from organization-level policies. For more information, see `Using Amazon S3 block public access <https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html>`__.

   

  Related actions include:

   

  
  * `DeletePublicAccessBlock <https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DeletePublicAccessBlock.html>`__
   
  * `PutPublicAccessBlock <https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_PutPublicAccessBlock.html>`__
  

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/s3control-2018-08-20/GetPublicAccessBlock>`_  


  **Request Syntax**
  ::

    response = client.get_public_access_block(
        AccountId='string'
    )
    
  :type AccountId: string
  :param AccountId: **[REQUIRED]** 

    The account ID for the Amazon Web Services account whose ``PublicAccessBlock`` configuration you want to retrieve.

    

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

    
    ::

      {
          'PublicAccessBlockConfiguration': {
              'BlockPublicAcls': True|False,
              'IgnorePublicAcls': True|False,
              'BlockPublicPolicy': True|False,
              'RestrictPublicBuckets': True|False
          }
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **PublicAccessBlockConfiguration** *(dict) --* 

        The ``PublicAccessBlock`` configuration currently in effect for this Amazon Web Services account.

        
        

        - **BlockPublicAcls** *(boolean) --* 

          Specifies whether Amazon S3 should block public access control lists (ACLs) for buckets in this account. Setting this element to ``TRUE`` causes the following behavior:

           

          
          * ``PutBucketAcl`` and ``PutObjectAcl`` calls fail if the specified ACL is public.
           
          * PUT Object calls fail if the request includes a public ACL.
           
          * PUT Bucket calls fail if the request includes a public ACL.
          

           

          Enabling this setting doesn't affect existing policies or ACLs.

           

          This property is not supported for Amazon S3 on Outposts.

          
        

        - **IgnorePublicAcls** *(boolean) --* 

          Specifies whether Amazon S3 should ignore public ACLs for buckets in this account. Setting this element to ``TRUE`` causes Amazon S3 to ignore all public ACLs on buckets in this account and any objects that they contain.

           

          Enabling this setting doesn't affect the persistence of any existing ACLs and doesn't prevent new public ACLs from being set.

           

          This property is not supported for Amazon S3 on Outposts.

          
        

        - **BlockPublicPolicy** *(boolean) --* 

          Specifies whether Amazon S3 should block public bucket policies for buckets in this account. Setting this element to ``TRUE`` causes Amazon S3 to reject calls to PUT Bucket policy if the specified bucket policy allows public access.

           

          Enabling this setting doesn't affect existing bucket policies.

           

          This property is not supported for Amazon S3 on Outposts.

          
        

        - **RestrictPublicBuckets** *(boolean) --* 

          Specifies whether Amazon S3 should restrict public bucket policies for buckets in this account. Setting this element to ``TRUE`` restricts access to buckets with public policies to only Amazon Web Services service principals and authorized users within this account.

           

          Enabling this setting doesn't affect previously stored bucket policies, except that public and cross-account access within any public bucket policy, including non-public delegation to specific accounts, is blocked.

           

          This property is not supported for Amazon S3 on Outposts.

          
    
  
  **Exceptions**
  
  *   :py:class:`S3Control.Client.exceptions.NoSuchPublicAccessBlockConfiguration`

  