
    gb                        d dl mZ d dlmZ d dlZddlmZ erd dlZ ed      	 	 	 	 	 	 	 	 	 	 	 	 d
d       Z	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dd	Z	y)    )annotations)TYPE_CHECKINGN   )	lru_cachei   )maxsizec                8    dd l } |j                  ||| ||      S )Nr   )profile_nameregion_nameaws_access_key_idaws_secret_access_keyaws_session_token)boto3Session)aws_access_keyaws_secret_keyr   regionprofiler   s         P/var/www/openai/venv/lib/python3.12/site-packages/anthropic/lib/bedrock/_auth.py_get_sessionr      s)     5==(,+     c        	           ddl m}	 ddlm}
 t	        |||||      }|j                         }|d=  |
| j                         |||      }|j                         }|st        d       |	|d|j                        }|j                  |       |j                         }t        |j                        j                         D ci c]  \  }}|	|| c}}S c c}}w )	Nr   )	SigV4Auth)
AWSRequest)r   r   r   r   r   
connection)methodurlheadersdataz*could not resolve credentials from sessionbedrock)botocore.authr   botocore.awsrequestr   r   copyupperget_credentialsRuntimeErrorr
   add_authpreparedictr   items)r   r   r   r   r   r   r   r   r   r   r   sessionrequestcredentialssignerpreppedkeyvalues                     r   get_auth_headersr1   !   s     (.%%+G llnGCtTG))+KGHH{Iw/B/BCF
OOGooG)-goo)>)D)D)F\)F:3%J[CJ)F\\\s   
CC)r   
str | Noner   r2   r   r2   r   r2   r   r2   returnzboto3.Session)r   strr   r4   r   zhttpx.Headersr   r2   r   r2   r   r2   r   r2   r   r2   r   r2   r3   zdict[str, str])

__future__r   typingr   httpx_utilsr   r   r   r1    r   r   <module>r:      s    "     3  "	
    &']'] 
'] 	']
 '] '] "'] '] '] '] ']r   