
    jd                         d dl Z d dlZd dlmZmZmZmZ d dlmZ ddl	m
Z
 ddlmZ ddlmZ ddlmZ d	ee   d
eeeef      ddfdZ G d de      Zdeded
edefdZy)    N)AnyOptionalDictMapping)HttpRequest   )EnvironmentVariables)
within_dac)ManagedIdentityClient)ManagedIdentityBase	client_ididentity_configreturnc                     t        j                         ry | rt        d      |rAh d}t        |j	                         |z        dkD  rt        ddj                  |             y y )Nz=client_id should not be set for cloud shell managed identity.>   r   	object_idresource_idr   z5identity_config must not contain the following keys: z, )r
   get
ValueErrorlenkeysjoin)r   r   
valid_keyss      h/root/aria/tools/markitdown-venv/lib/python3.12/site-packages/azure/identity/_credentials/cloud_shell.pyvalidate_client_id_and_configr      sl    ~~XYY>
##%
23a7TUYU^U^_iUjTklmm 8     c                   4    e Zd Zdedee   fdZddedefdZy)CloudShellCredentialkwargsr   c                    |j                  d      }|j                  d      }t        ||       t        j                  j                  t        j
                        }|r(t        dt        j                  t        |      ddid|S y )Nr   r   Metadatatrue)request_factorybase_headers )
r   r   osenvironr	   MSI_ENDPOINTr   	functoolspartial_get_request)selfr   r   r   urls        r   
get_clientzCloudShellCredential.get_client   s}    JJ{+	 **%67%iAjjnn1>>?(  ) 1 1, DT^`fSgkq  r   descc                     d| S )NzECloud Shell managed identity configuration not found in environment. r$   )r+   r.   s     r   get_unavailable_messagez,CloudShellCredential.get_unavailable_message)   s    VW[V\]]r   N) )	__name__
__module____qualname__r   r   r   r-   strr0   r$   r   r   r   r      s1    
3 
84I+J 
^C ^ ^r   r   r,   scopec           	      6    t        d| t        d|ifi |      S )NPOSTresource)data)r   dict)r,   r6   r   s      r   r*   r*   -   s     vsz5.A)U_)UVVr   )r(   r%   typingr   r   r   r   azure.core.restr   
_constantsr	   	_internalr
   !_internal.managed_identity_clientr   _internal.managed_identity_baser   r5   r   r   r*   r$   r   r   <module>rB      s   
  	 / / ' - " E AnXc] nXV]^acf^fVgMh nmq n^. ^"Wc W# W W Wr   