CSRF 保護
CSRF 保護中介軟體會透過檢查請求標頭來防止 CSRF 攻擊。
此中介軟體會透過比較 Origin
標頭的值與請求的 URL,來防止 CSRF 攻擊,例如使用表單元素提交。
不發送 Origin
標頭的舊瀏覽器,或使用反向代理來移除 Origin
標頭的環境可能無法正常運作。在這種環境下,請使用其他 CSRF 令牌方法。
導入
ts
import { Hono } from 'hono'
import { csrf } from 'hono/csrf'
用法
ts
const app = new Hono()
app.use(csrf())
// Specifying origins with using `origin` option
// string
app.use(csrf({ origin: 'myapp.example.com' }))
// string[]
app.use(
csrf({
origin: ['myapp.example.com', 'development.myapp.example.com'],
})
)
// Function
// It is strongly recommended that the protocol be verified to ensure a match to `$`.
// You should *never* do a forward match.
app.use(
'*',
csrf({
origin: (origin) =>
/https:\/\/(\w+\.)?myapp\.example\.com$/.test(origin),
})
)
選項
可選 origin:string
| string[]
| Function
指定來源。