中国证监会
CSRF标志创建与验证背后的逻辑.
读取 谅解 -- -- 中国证监会 欲了解更多有关企业社会责任基金的信息。 使用此模块创建自定义的 CSRF 中间软件 .
寻找您最喜欢的框架的 CSRF 框架 模块?
此模块为 https://github.com/pillerjs/csrf 页面存档备份,存于互联网档案馆 在f0d66c91ea4be6d30a03bd311ed9518951d9c3e4时.
安装
$ npm i @fastify/csrf
类型脚本
本单元包括: 类型脚本 允许自动完成兼容编辑器和类型的声明文件 typeScript 项目的信息.
API 密码
const Tokens = require('@fastify/csrf')
新托肯( [选项])
创建新的代号/核查实例 。 这个 options 参数是
可选,如果缺少,则只使用所有默认值.
选项
Tokens 在选项对象中接受这些属性 .
算法
散列算法生成符. 默认为 sha256。 。 。 .
盐质
内用盐的长度,以字符表示. 内部的盐
是一个基础 62 字符串。 默认为 8 字符键.
密钥 Length
要生成的秘密的长度, 以字节表示 。 注意,这个秘密是
环绕64个基数编码,这个长度指底数
字节,而不是基-64字符串的长度. 默认为 18 字节.
用户信息
要求在 tokens.create() 财务报告和审定财务报表
tokens.verify()。 。 。 .
密钥
设定时 hmacKey 用于生成加密 HMAC 散列,而不是默认散列函数.
有效性
要生成的符号的最大有效性, 以毫秒计 。 注意,时代是
绕了36号基地的密码 默认为 0 毫秒 (残疾).
coords.create (secret [, userInfo] ) (密语)
创建一个新的CSRF 令牌, 附加在给定的上 secret编辑 secret 是一个
字符串,通常从 tokens.secret() 或者说 tokens.secretSync()
方法。 。 。 此符号是您应该添加到 HTML 中的内容 <form> 块和
期望用户的浏览器提供回馈.
const secret = tokens.secretSync()
const token = tokens.create(secret)
这个 userInfo 参数可用于防止饼干抛出
在不可信的情况下部署应用程序时的攻击(和类似)
子域. 它将编码其中某些用户特定信息
符号 。 只有在 userInfo: true 传递到
建筑师.
符号. secret(召回)
同步创建新 secret,这是一个字符串。 秘诀是
保存在服务器上,通常保存在服务器侧会话中
用户。 秘密应至少是每个用户.
tokens.secret(function (err, secret) {
if (err) throw err
// Do something with the secret
})
符号. secret ()
同步创建新 secret 返回一个 Promise请参看
tokens.secret(callback) 详细文件.
说明:在Node.js中使用承诺 在0.12年之前承诺必须
“填充”使用 global.Promise = require('bluebird')。 。 。 .
tokens.secret().then(function (secret) {
// Do something with the secret
})
符号. secretSync ()
同步版本的 tokens.secret(callback)请参看
tokens.secret(callback) 详细文件.
const secret = tokens.secretSync()
coorders.verify (机密, coord [, userInfo]) (密文, coords [, userInfo] ) (英文)
检查 CSRF 令牌对给定是否有效 secret返回时
a 布尔.
if (!tokens.verify(secret, token)) {
throw new Error('invalid token!')
}
这个 userInfo 如果 userInfo: true 已配置
初始化期间。 用户特定信息必须匹配
通过了 tokens.create()。 。 。 .
许可证
许可证根据 麻省理工学院。 。 。 .