簡體   English   中英

使用CSRF保護與WTForms-Alchemy

[英]Using CSRF protection with WTForms-Alchemy

我有一個包含3個表單的Web應用程序。 2繼承自於flask_wtf.form.Form,它本身來自WTForms SecureForm。 這意味着這些表單具有自動CSRF保護。

第三種形式從模型對象繼承其屬性,因此繼承自wtforms_alchemy.ModelForm,它本身繼承自wtforms.Form。

如何在最后一個表單中添加CSRF保護?

對我有用的是從flask_wtf包中混合Form。

from flask_wtf import Form

class YourForm(ModelForm, Form):

結果還有一個有效的隱藏CSRF令牌。

對我來說有用的是在flask_wtf包中配置flask_wtf.csrf。

PY

from flask_wtf.csrf import CSRFProtect
....
csrf = CSRFProtect(app)

class UserForm(ModelForm):
    class Meta:
       model = User
....

userform = UserForm()

HTML

<form method="post">
  {{ userform.csrf_token }}
  {{ userform.userform }}
  <input type="submit" name="submit">   
</form>

結果還有一個有效的隱藏CSRF令牌。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM