21
21
22
22
import jwt
23
23
from flask import current_app
24
- from marshmallow import EXCLUDE , Schema , ValidationError , fields , post_load , pre_load
24
+ from marshmallow import INCLUDE , Schema , ValidationError , fields , post_load , pre_load
25
25
from werkzeug .utils import secure_filename
26
26
27
27
JWT_TOKEN_SECRET = os .getenv ("RENKU_JWT_TOKEN_SECRET" , "bW9menZ3cnh6cWpkcHVuZ3F5aWJycmJn" )
@@ -48,37 +48,13 @@ class UserIdentityToken(Schema):
48
48
"""User identity token schema."""
49
49
50
50
class Meta :
51
- unknown = EXCLUDE
52
-
53
- jti = fields .String ()
54
- exp = fields .Integer ()
55
- nbf = fields .Integer ()
56
- iat = fields .Integer ()
57
- iss = fields .String ()
58
- aud = fields .List (fields .String ())
59
- sub = fields .String ()
60
- typ = fields .String ()
61
- azp = fields .String ()
62
- nonce = fields .String ()
63
- auth_time = fields .Integer ()
64
- session_state = fields .String ()
65
- acr = fields .String ()
66
- email_verified = fields .Boolean ()
67
- preferred_username = fields .String ()
68
- given_name = fields .String ()
69
- family_name = fields .String ()
51
+ unknown = INCLUDE
70
52
53
+ sub = fields .String (required = True )
71
54
email = fields .String (required = True )
72
55
name = fields .String (required = True )
73
56
user_id = fields .String () # INFO: Generated post load.
74
57
75
- @pre_load
76
- def make_audience_list (self , data , ** kwargs ):
77
- """The aud claim in a token can be a list or a string if it is a single value."""
78
- aud = data .get ("aud" )
79
- if aud is not None and isinstance (data .get ("aud" ), str ):
80
- data ["aud" ] = [data ["aud" ]]
81
-
82
58
@post_load
83
59
def set_user_id (self , data , ** kwargs ):
84
60
"""Sets users id."""
0 commit comments