Chapter 45

security-csrfprotection

kisihara.c
kisihara.c
2021.07.13に更新
このチャプターの目次

CSRF対策

クロスサイトリクエストフォージェリ(CSRF、XSRF)とは、Webアプリケーションが信頼するユーザから不正なコマンドが送信される、Webサイト攻撃の一種だ。対抗する為、csurfパッケージを使用できる。

Expressで使う

必要なパッケージのインストールから始めよう。

$ npm i --save csurf

WARNING
csurfミドルウェアのページで説明されているように、csurfモジュールはセッションミドルウェアかcookieパーサーを最初に初期化する必要がある。詳細はその説明を参照の事。

インストールが完了したら、csurfミドルウェアをグローバルミドルウェアとして適用する。

import * as csurf from 'csurf';
// 初期化ファイルのどこか
app.use(csurf());

Fastifyで使う

必要なパッケージのインストールから始めよう。

$ npm i --save fastify-csrf

インストールが完了したら、以下のようにfastify-csrfプラグインを登録する。

import fastifyCsrf from 'fastify-csrf';
// 初期化ファイルのどこか
app.register(fastifyCsrf);