HEX
Server: LiteSpeed
System: Linux us-phx-web1284.main-hosting.eu 4.18.0-553.109.1.lve.el8.x86_64 #1 SMP Thu Mar 5 20:23:46 UTC 2026 x86_64
User: u300739242 (300739242)
PHP: 8.2.30
Disabled: system, shell_exec, passthru, mysql_list_dbs, ini_alter, dl, symlink, link, chgrp, leak, popen, apache_child_terminate, virtual, mb_send_mail
Upload Files
File: //opt/alt/python311/lib/python3.11/site-packages/botocore/__pycache__/tokens.cpython-311.pyc
�

/�;f�*��H�ddlZddlZddlZddlZddlmZmZddlmZmZddl	Z
ddlmZddl
mZddlmZddlmZddlmZmZmZdd	lmZmZmZeje��Zd
�Zd�Zd�Z d
�Z!Gd�de��Z"Gd�d��Z#Gd�d��Z$Gd�d��Z%dS)�N)�datetime�	timedelta)�
NamedTuple�Optional)�tzutc)�UNSIGNED)�
total_seconds)�Config)�ClientError�InvalidConfigError�TokenRetrievalError)�CachedProperty�
JSONFileCache�SSOTokenLoaderc�B�tjt����S�N)r�nowr���B/opt/alt/python311/lib/python3.11/site-packages/botocore/tokens.py�_utc_nowr$s���<���� � � rc�B�t|��g}t|���S)N)�	providers)�SSOTokenProvider�TokenProviderChain)�sessionrs  r�create_token_resolverr(s'����!�!��I��	�2�2�2�2rc�Z�t|t��r|�d��S|S)Nz%Y-%m-%dT%H:%M:%SZ)�
isinstancer�strftime��objs r�_serialize_utc_timestampr#/s,���#�x� � �2��|�|�0�1�1�1��Jrc�8�tj|t���S)N)�default)�json�dumpsr#r!s r�_sso_json_dumpsr(5s���:�c�#;�<�<�<�<rc�4�eZdZUeed<dZeeed<dS)�FrozenAuthToken�tokenN�
expiration)�__name__�
__module__�__qualname__�str�__annotations__r,rrrrrr*r*9s0��������J�J�J�%)�J���"�)�)�)�)�)rr*c�B�eZdZdZdZdZefd�Zd�Zd�Z	d�Z
d�Zd	�Zd
S)�DeferredRefreshableToken�iX�<c�|�||_||_||_tj��|_d|_d|_dSr)�
_time_fetcher�_refresh_using�method�	threading�Lock�
_refresh_lock�
_frozen_token�
_next_refresh)�selfr9�
refresh_using�time_fetchers    r�__init__z!DeferredRefreshableToken.__init__GsA��)���+������'�^�-�-���!���!����rc�8�|���|jSr)�_refreshr=�r?s r�get_frozen_tokenz)DeferredRefreshableToken.get_frozen_tokenQs���
�
�����!�!rc��|���}|sdS|dk}|j�|��rN	|���|j���dS#|j���wxYwdS)N�	mandatory)�_should_refreshr<�acquire�_protected_refresh�release)r?�refresh_type�block_for_refreshs   rrDz!DeferredRefreshableToken._refreshUs����+�+�-�-���	��4�)�K�7����%�%�&7�8�8�	-�
-��'�'�)�)�)��"�*�*�,�,�,�,�,���"�*�*�,�,�,�,����		-�	-s�A)�)Bc��|���}|sdS	|���}|t|j���z|_|���|_n4#t$r't�	d|d���|dkr�YnwxYw|�
��rt|jd����dS)N��secondsz5Refreshing token failed during the %s refresh period.T��exc_inforHz$Token has expired and refresh failed)�provider�	error_msg)
rIr7r�_attempt_timeoutr>r8r=�	Exception�logger�warning�_is_expiredr
r9)r?rMrs   rrKz+DeferredRefreshableToken._protected_refreshcs���+�+�-�-���	��4�	��$�$�&�&�C�!$�y��9N�'O�'O�'O�!O�D��!%�!4�!4�!6�!6�D�����	�	�	��N�N�G���
�
�
�
�
�{�*�*��+�*�
	���������	�%���@����
�	�	s�A
A%�%.B�Bc��|j�dS|jj}t||���z
��}|dkS)NFr)r=r,r	r7)r?r,�	remainings   rrZz$DeferredRefreshableToken._is_expiredsC����%��5��'�2�
�!�*�t�/A�/A�/C�/C�"C�D�D�	��A�~�rc���|j�dS|jj}|�dS|���}||jkrdSt	||z
��}||jkrdS||jkrdSdS)NrH�advisory)r=r,r7r>r	�_mandatory_refresh_timeout�_advisory_refresh_timeout)r?r,rr\s    rrIz(DeferredRefreshableToken._should_refresh�s�����%��;��'�2�
����4�� � �"�"����#�#�#��4�!�*�s�"2�3�3�	��t�6�6�6��;�
��7�
7�
7��:��trN)
r-r.r/r`r_rVrrBrFrDrKrZrIrrrr3r3>s�������!(��!(����;C�"�"�"�"�"�"�"�-�-�-����8�������rr3c��eZdZdd�Zd�ZdS)rNc��|�g}||_dSr)�
_providers)r?rs  rrBzTokenProviderChain.__init__�s�����I�#����rc�N�|jD]}|���}|�|cS�dSr)rc�
load_token)r?rTr+s   rrezTokenProviderChain.load_token�s=����	�	�H��'�'�)�)�E�� �����!��trr)r-r.r/rBrerrrrr�s7������$�$�$�$�
����rrc���eZdZdZdZej�ej�dddd����Z	ddgZ
dZeZ
d	ed	fd
�Zd�Zed���Zed
���Zd�Zd�Zd�Zd�Zd	S)r�ssor4�~z.aws�cache�
sso_start_url�
sso_region�
refresh_tokenNc���||_|�!|�|jt���}||_||_t
|j���|_|p|j�d��pd|_	dS)N)�
dumps_func)ri�profiler%)
�_session�DEFAULT_CACHE_CLS�_SSO_TOKEN_CACHE_DIRr(�_now�_cacher�
_token_loader�get_config_variable�
_profile_name)r?rrirA�profile_names     rrBzSSOTokenProvider.__init__�s��� ��
��=��*�*��)�*�+���E�!��	����+�$�+�>�>�>����
��}�0�0��;�;�
��	
���rc���|jj}|�di��}|�di��}|�|ji��}d|vrdS|d}|�|d��}|sd|j�d|�d�}t	|����g}|jD]}	|	|vr|�|	���|rd|j�d|�d	�}t	|����||d
|dd�S)
N�profiles�sso_sessions�sso_sessionz
The profile "z7" is configured to use the SSO token provider but the "z+" sso_session configuration does not exist.)rUzZ" is configured to use the SSO token provider but is missing the following configuration: �.rkrj)�session_namerkrj)rp�full_config�getrwr�_SSO_CONFIG_VARS�append)
r?�
loaded_configrzr{�profile_config�sso_session_name�
sso_configrU�missing_configs�vars
          r�_load_sso_configz!SSOTokenProvider._load_sso_config�sd���
�1�
� �$�$�Z��4�4��$�(�(���<�<��!���d�&8�"�=�=����.�.��F�)�-�8��!�%�%�&6��=�=�
��	:�1�� 2�1�1�+;�1�1�1�
�
%�y�9�9�9�9����(�	,�	,�C��*�$�$��&�&�s�+�+�+���	:�&�� 2�&�&�"�&�&�&�
�
%�y�9�9�9�9�-�$�\�2�'��8�
�
�	
rc�*�|���Sr)r�rEs r�_sso_configzSSOTokenProvider._sso_config�s���$�$�&�&�&rc�|�t|jdt���}|j�d|���S)Nrk)�region_name�signature_versionzsso-oidc)�config)r
r�rrp�
create_client)r?r�s  r�_clientzSSOTokenProvider._client�sA����(��6�&�
�
�
���}�*�*�:�f�*�E�E�Erc��|j�|j|d|d|d���}t|d���}|jd|jd|d	|���|z|d|d|d
d�}d|vr|d|d<t�d��|S)
N�clientId�clientSecret�refreshToken)�	grantTyper�r�r��	expiresInrPrjrk�accessToken�registrationExpiresAt)�startUrl�regionr��	expiresAtr�r�r�zSSO Token refresh succeeded)r��create_token�_GRANT_TYPErr�rsrX�info)r?r+�response�
expires_in�	new_tokens     r�_attempt_create_tokenz&SSOTokenProvider._attempt_create_token�s����<�,�,��&��:�&��~�.��~�.�	-�
�
���x��'<�=�=�=�
��(��9��&�|�4�#�M�2������z�1��j�)�!�.�1�%*�+B�%C�	
�	
�	��X�%�%�(0��(@�I�n�%����1�2�2�2��rc����d}�fd�|D��}|r!d|��}t�|��dStj��d��}t||���z
��dkrt�d|����dS	|����S#t$r t�	dd�	��YdSwxYw)
N)r�r�r�r�c���g|]}|�v�|��	Srr)�.0�kr+s  �r�
<listcomp>z:SSOTokenProvider._refresh_access_token.<locals>.<listcomp>s���:�:�:�a�1�E�>�>��>�>�>rz+Unable to refresh SSO token: missing keys: r�rz"SSO token registration expired at z SSO token refresh attempt failedTrR)
rXr��dateutil�parser�parser	rsr�rrY)r?r+�keys�missing_keys�msg�expirys `    r�_refresh_access_tokenz&SSOTokenProvider._refresh_access_tokens����
��;�:�:�:�4�:�:�:���	�N��N�N�C��K�K������4���&�&�u�-D�'E�F�F����$�)�)�+�+�-�.�.�!�3�3��K�K�E�V�E�E�F�F�F��4�	��-�-�e�4�4�4���	�	�	��N�N�=��N�M�M�M��4�4�	���s�"B7�7&C!� C!c�*�|jd}|jd}t�d|����|�||���}tj�|d��}t�d|����t||�	��z
��}||j
kr>|�|��}|�'|}|d}|j�|||���t|d|���S)	Nrjr~zLoading cached SSO token for )r~r�zCached SSO token expires at r�)r,)r�rXr�rur�r�r��debugr	rs�_REFRESH_WINDOWr��
save_tokenr*)r?�	start_urlr~�
token_dictr,r\�new_token_dicts       r�
_refresherzSSOTokenProvider._refresher.s���$�_�5�	��'��7�����B�L�B�B�C�C�C��'�'�	��'�M�M�
��_�*�*�:�k�+B�C�C�
����@�J�@�@�A�A�A�!�*�t�y�y�{�{�":�;�;�	��t�+�+�+�!�7�7�
�C�C�N��)�+�
�'��4�
��"�-�-��z��.������}�%�*�
�
�
�	
rc�V�|j�dSt|j|j|j���S)N)rA)r�r3�METHODr�rsrEs rrezSSOTokenProvider.load_tokenDs4����#��4�'��K���t�y�
�
�
�	
r)r-r.r/r�r��os�path�
expanduser�joinrrr�r�rrqrrBr�rr�r�r�r�r�rerrrrr�s������
�F��O��7�-�-�
����S�&�%��1�1����	����"�K�%��"��t�
�
�
�
�$%
�%
�%
�N�'�'��^�'��F�F��^�F����.���0
�
�
�,
�
�
�
�
rr)&r&�loggingr�r:rr�typingrr�dateutil.parserr��dateutil.tzr�botocorer�botocore.compatr	�botocore.configr
�botocore.exceptionsrrr
�botocore.utilsrrr�	getLoggerr-rXrrr#r(r*r3rrrrr�<module>r�s����������	�	�	�	�����(�(�(�(�(�(�(�(�'�'�'�'�'�'�'�'�����������������)�)�)�)�)�)�"�"�"�"�"�"�����������
I�H�H�H�H�H�H�H�H�H�	��	�8�	$�	$��!�!�!�3�3�3����=�=�=�*�*�*�*�*�j�*�*�*�
^�^�^�^�^�^�^�^�B��������]
�]
�]
�]
�]
�]
�]
�]
�]
�]
r