使用 RequestHandler.set_secure_cookie() 的龙卷风不允许添加 samesite 属性
tornado using RequestHandler.set_secure_cookie() doesn't allow adding samesite attribute
在我的 python 后端应用程序中,我试图设置一个具有有效 tornado 属性的安全 cookie。
但是,我遇到了一个 veracode 问题,说我需要设置属性 samesite=strict。
做如下:
# this line is called from another method that sets the cookie.
request_handler.set_secure_cookie(**self.build_cookie())
def build_cookie(self):
cookie_info = {
'name': 'session_cookie',
'value': 'session_cookie_value',
'httponly': True,
'expires_days': None,
'samesite': 'Strict',
'secure': True,
}
return cookie_info
出现以下错误
File "/usr/local/lib/python3.6/http/cookies.py", line 332, in __setitem__
raise CookieError("Invalid attribute %r" % (K,))
http.cookies.CookieError: Invalid attribute 'samesite'
有人知道如何设置这个属性吗?
对cookie属性的支持取决于Python的版本;在 Python 3.8 中添加了 samesite
属性。您还可以按照 this question 中所述在旧版本 python 中对其进行猴子修补。
在我的 python 后端应用程序中,我试图设置一个具有有效 tornado 属性的安全 cookie。
但是,我遇到了一个 veracode 问题,说我需要设置属性 samesite=strict。
做如下:
# this line is called from another method that sets the cookie.
request_handler.set_secure_cookie(**self.build_cookie())
def build_cookie(self):
cookie_info = {
'name': 'session_cookie',
'value': 'session_cookie_value',
'httponly': True,
'expires_days': None,
'samesite': 'Strict',
'secure': True,
}
return cookie_info
出现以下错误
File "/usr/local/lib/python3.6/http/cookies.py", line 332, in __setitem__
raise CookieError("Invalid attribute %r" % (K,))
http.cookies.CookieError: Invalid attribute 'samesite'
有人知道如何设置这个属性吗?
对cookie属性的支持取决于Python的版本;在 Python 3.8 中添加了 samesite
属性。您还可以按照 this question 中所述在旧版本 python 中对其进行猴子修补。