
    $g                     :    d dl mZ ddlmZ  G d de          ZdS )    )	urlencode   )
BaseOAuth2c                   B    e Zd ZdZdZdZdZdZdZdZ	g dZ
dZd	 Zd
 ZdS )
WLCGOAuth2z)
    WLCG IAM Authentication Backend
    wlcgzhttps://wlcg.cloud.cnaf.infn.itz)https://wlcg.cloud.cnaf.infn.it/authorizez%https://wlcg.cloud.cnaf.infn.it/tokenPOST)openidemailprofiler   offline_accessFc                     |                      |                    d          |                    d                    \  }}}|                    d          |                    d          |||dS )z)Return user details from WLCG IAM service
given_namefamily_name)
first_name	last_namer   )usernamer   fullnamer   r   )get_user_namesget)selfresponser   r   r   s        Y/var/www/html/netbox-4.1.3/venv/lib/python3.11/site-packages/social_core/backends/wlcg.pyget_user_detailszWLCGOAuth2.get_user_details   sx    *.*=*=||L11X\\-=X=X +> +
 +
'*i !W--\\'** $"
 
 	
    c                 T    dt          d|i          z   }|                     |          S )zLoads user data from servicez)https://wlcg.cloud.cnaf.infn.it/userinfo?access_token)r   get_json)r   r   argskwargsurls        r   	user_datazWLCGOAuth2.user_data!   s4    9I\*=
 =
 
 }}S!!!r   N)__name__
__module____qualname____doc__nameAPI_URLAUTHORIZATION_URLACCESS_TOKEN_URLREFRESH_TOKEN_URLACCESS_TOKEN_METHODDEFAULT_SCOPEREDIRECT_STATEr   r"    r   r   r   r      sp          D/GC>? LLLMN
 
 
" " " " "r   r   N)urllib.parser   oauthr   r   r/   r   r   <module>r2      s]    " " " " " "       "  "  "  "  "  "  "  "  "  "r   