Server : Apache System : Linux iad1-shared-b8-43 6.6.49-grsec-jammy+ #10 SMP Thu Sep 12 23:23:08 UTC 2024 x86_64 User : dh_edsupp ( 6597262) PHP Version : 8.2.26 Disable Function : NONE Directory : /lib/python3/dist-packages/boto/__pycache__/ |
Upload File : |
o ckF[�W � @ s d Z ddlZddlmZ ddlmZ ddlZddlmZ ddlmZ ddlm Z ddl mZ dd lm Z dd lmZ dd lmZ ddlmZ dZd ZdZdZdZdZdZdZdZdZdZdZdZdZ dZ!dZ"dZ#dZ$dZ%dZ&d Z'd!Z(d"Z)d#Z*e+� Z,G d$d%� d%e-�Z.G d&d'� d'e+�Z/d(d)� Z0dS )*zC This class encapsulates the provider-specific header differences. � N)�six)�datetime)�config)� expanduser)�Config)�InvalidInstanceMetadataError)�ACL)�CannedACLStrings)�Policy� header_prefix�metadata_prefixzx-amz-zx-goog-z acl-headerzauth-headerzcopy-source-headerzcopy-source-version-id-headerzcopy-source-range-headerzdelete-marker-headerzdate-headerzmetadata-directive-headerzresumable-upload-headerzsecurity-token-header� storage-classz mfa-headerzserver-side-encryption-headerzversion-id-headerzrestore-header�StorageCopyError�StorageCreateError�StorageDataError�StoragePermissionsError�StorageResponseErrorc @ s e Zd ZdS )�ProfileNotFoundErrorN)�__name__� __module__�__qualname__� r r �//usr/lib/python3/dist-packages/boto/provider.pyr J s r c @ s� e Zd Zddd�Zeed�Zeed�Z ddd�Z ddd�Zddd�Zi e e�eed �eed �ed �eed �eed �eed �eed �eed �eed �ed�eed �eed �eed �eed �eed �eed �i e e�eed �eed �ed�eed �eed �ed�eed �eed �eed �eed �eed �ed�eed �eed �ed�ed�d�Z e!e"j#j$e%e"j#j&e'e"j#j(e)e"j#j*e+e"j#j,ie!e"j#j-e%e"j#j.e'e"j#j/e)e"j#j0e+e"j#j1id�Z2 d:dd�Z3dd� Z4dd� Z5e6e4e5�Z7d d!� Z8d"d#� Z9e6e8e9�Z:d$d%� Z;d&d'� Z<e6e;e<�Z=d(d)� Z> d:d*d+�Z?d,d-� Z@d.d/� ZAd0d1� ZBd2d3� ZCd4d5� ZDd6d7� ZEd8d9� ZFdS );�Provider)�aws_access_key_id�aws_secret_access_key�aws_security_token�aws_profile)�gs_access_key_id�gs_secret_access_keyNN)�aws�google�s3�gsFTzmeta-�acl�AWSzcopy-sourcezcopy-source-version-idzcopy-source-range�datez delete-markerzmetadata-directiveNzsecurity-tokenzserver-side-encryptionz version-idr �mfa�restore�GOOG1� resumablec C s4 d | _ d | _d | _|| _|| _|| _|| _|| _| j| j | _ | j | j | _d | _t j�td�d| d�}tdd�| _t j�|�rG| j�|� | �||||� | �� | �� d| j| j }t�d|�rlt�d|�| _ d| j| j }t�d|�r�t�d|�| _d | j| j } t�d| �r�t�d| �| _d S d S ) N�~�.�credentialsF)�do_loadz%s_host�Credentialsz%s_portz%s_host_header)�host�port�host_header� access_key� secret_key�security_token�profile_name�name�AclClassMap� acl_class� CannedAclsMap�canned_acls�_credential_expiry_time�os�path�joinr r �shared_credentials�isfile�load_from_path�get_credentials�configure_headers�configure_errors� HostKeyMapr � has_option�get�getint) �selfr7 r3 r4 r5 r6 �shared_path� host_opt_name� port_opt_name�host_header_opt_namer r r �__init__� s8 �zProvider.__init__c C � | � � r| �� | jS �N)�_credentials_need_refresh�#_populate_keys_from_metadata_server�_access_key�rJ r r r �get_access_key� � zProvider.get_access_keyc C � || _ d S rQ )rT �rJ �valuer r r �set_access_key� � zProvider.set_access_keyc C rP rQ )rR rS �_secret_keyrU r r r �get_secret_key� rW zProvider.get_secret_keyc C rX rQ )r] rY r r r �set_secret_key� r\ zProvider.set_secret_keyc C rP rQ )rR rS �_security_tokenrU r r r �get_security_token� rW zProvider.get_security_tokenc C rX rQ )r` rY r r r �set_security_token� r\ zProvider.set_security_tokenc C sZ | j d u rdS | j t�� }|j|j|jd d d d }|dk r+tj�d� dS dS )NF� i i@B i, z!Credentials need to be refreshed.T) r<