PROTECT_FROM_FORGERYを使用する場合
-
21-12-2019 - |
質問
信憑性トークン検証を有効/無効にする方法を知っていますが、それを有効にするのを理解するときはわかりません。
例えばRailsアプリでは、わかりました。私がそれを間違ったかどうか私に知らせてください
Web:
- パブリックページ(ログイン)を有効にするには、真正性トークン検証 を有効にする必要があります。
- 認証ページ(サインイン、サインアップ、紛失したパスワード...)を有効にするは、正しいトークン検証 を有効にする必要があります。
- プライベートページ(ログイン)認証トークン検証を有効にする必要はありません
API:
- Public API(ログイン中、JSONアクセス)を有効にすると、真正性トークン検証 を有効にする必要があります。
- 認証API(サインイン、サインアップ、パスワード紛失...、JSONアクセス)は、真正性トークン検証 を有効にする必要があります。
- プライベートAPI(ログイン、JSONアクセス)は、真正性トークン検証を有効にする必要はありません
解決
プライベートページがCSRF保護を有効にする必要がないことは正しくありません。ユーザーが認証されているプライベートページは、 csrf 。この攻撃では、ログインしている人が(たとえば、電子メール内のリンクをクリックすることによって)(たとえば、電子メールのリンクをクリックすることによって)トリックされています。これは、ログインしているログインユーザーから有効なログインユーザーからのものです。セッション。protect_from_forgery
は、非GET
要求がサイト自体からしか開始できないことを確認することで、それらが撮っているアクションを認識しているユーザーによって、ユーザーによってのみ開始できるようにすることができます。
所属していません StackOverflow