
    +d?                     ~    d dl Z d dlZddlmZmZ  e j        d          Z G d de          Z G d de          ZdS )	    N   )BaseAuthBaseClientAuthintakec                   &    e Zd ZdZddZd Zd ZdS )
SecretAutha  A very simple auth mechanism using a shared secret

    Parameters
    ----------
    secret: str
        The string that must be matched in the requests. If None, a random UUID
        is generated and logged.
    key: str
        Header entry in which to seek the secret
    Nintake-secretc                     |5t          j                    j        }t                              d|z             || _        || _        d S )NzRandom server secret: %s)uuiduuid1hexloggerinfosecretkey)selfr   r   s      2lib/python3.11/site-packages/intake/auth/secret.py__init__zSecretAuth.__init__   sB     	=Z\\%FKK2V;<<<    c                 p    	 |                      || j        d          | j        k    S # t          $ r Y dS w xY wN Fget_case_insensitiver   r   	Exception)r   headers     r   allow_connectzSecretAuth.allow_connect#   J    	,,VTXrBBdkQQ 	 	 	55	   $' 
55c                 p    	 |                      || j        d          | j        k    S # t          $ r Y dS w xY wr   r   )r   r   sourcecatalogs       r   allow_accesszSecretAuth.allow_access)   r   r   )Nr	   )__name__
__module____qualname____doc__r   r   r#    r   r   r   r      sP        	 	         r   r   c                   *     e Zd ZdZd fd	Zd Z xZS )SecretClientAuthzMatching client auth plugin to SecretAuth

    Parameters
    ----------
    secret: str
        The string that must be included requests.
    key: str
        HTTP Header key for the shared secret
    r	   c                 r    || _         || _        t          t          |                                            d S N)r   r   superr*   r   )r   r   r   	__class__s      r   r   zSecretClientAuth.__init__;   s4    %%..00000r   c                     | j         | j        iS r,   )r   r   )r   s    r   get_headerszSecretClientAuth.get_headers@   s    $+&&r   )r	   )r$   r%   r&   r'   r   r0   __classcell__)r.   s   @r   r*   r*   0   sV         1 1 1 1 1 1
' ' ' ' ' ' 'r   r*   )	loggingr   baser   r   	getLoggerr   r   r*   r(   r   r   <module>r5      s      * * * * * * * *		8	$	$       @' ' ' ' '~ ' ' ' ' 'r   