
    i[fJ                     :    d dl mZ d dlmZ  G d de          ZdS )    )InvalidClaimError)	JWTClaimsc                   l     e Zd Zej        g dz   Z fdZd Zd Zd Zd Z	d Z
d Zd	 Zd
 Zd Z xZS )JWTAccessTokenClaims)	client_id	auth_timeacramrscopegroupsrolesentitlementsc                    |                                    t                      j        di | |                                  |                                  |                                  |                                  |                                  |                                  | 	                                 | 
                                 d S )N )validate_typsupervalidatevalidate_client_idvalidate_auth_timevalidate_acrvalidate_amrvalidate_scopevalidate_groupsvalidate_rolesvalidate_entitlements)selfkwargs	__class__s     Q/var/www/piapp/venv/lib/python3.11/site-packages/authlib/oauth2/rfc9068/claims.pyr   zJWTAccessTokenClaims.validate   s    ""6"""!!!!!!""$$$$$    c                 f    | j         d                                         dvrt          d          d S )Ntyp)zat+jwtzapplication/at+jwt)headerlowerr   r   s    r   r   z!JWTAccessTokenClaims.validate_typ   s:     ;u##%%-MMM#E*** NMr    c                 ,    |                      d          S )Nr   _validate_claim_valuer%   s    r   r   z'JWTAccessTokenClaims.validate_client_id$   s    ))+666r    c                     |                      d          }|r+t          |t          t          f          st	          d          d S d S )Nr   )get
isinstanceintfloatr   )r   r   s     r   r   z'JWTAccessTokenClaims.validate_auth_time'   sR    HH[))	 	1Z	C<@@ 	1#K000	1 	1 	1 	1r    c                 ,    |                      d          S )Nr	   r'   r%   s    r   r   z!JWTAccessTokenClaims.validate_acr,   s    ))%000r    c                     |                      d          }|r*t          | d         t                    st          d          d S d S )Nr
   )r*   r+   listr   )r   r
   s     r   r   z!JWTAccessTokenClaims.validate_amr/   sP    hhuoo 	+z$u+t44 	+#E***	+ 	+ 	+ 	+r    c                 ,    |                      d          S )Nr   r'   r%   s    r   r   z#JWTAccessTokenClaims.validate_scope4       ))'222r    c                 ,    |                      d          S )Nr   r'   r%   s    r   r   z$JWTAccessTokenClaims.validate_groups7   s    ))(333r    c                 ,    |                      d          S )Nr   r'   r%   s    r   r   z#JWTAccessTokenClaims.validate_roles:   r2   r    c                 ,    |                      d          S )Nr   r'   r%   s    r   r   z*JWTAccessTokenClaims.validate_entitlements=   s    )).999r    )__name__
__module____qualname__r   REGISTERED_CLAIMSr   r   r   r   r   r   r   r   r   r   __classcell__)r   s   @r   r   r      s        !3 	7 	7 	7 	% % % % %+ + +7 7 71 1 1
1 1 1+ + +
3 3 34 4 43 3 3: : : : : : :r    r   N)authlib.jose.errorsr   authlib.jose.rfc7519r   r   r   r    r   <module>r=      s]    1 1 1 1 1 1 * * * * * *9: 9: 9: 9: 9:9 9: 9: 9: 9: 9:r    