JWT:什么是很好的秘密密钥,以及如何将其存储在Node.js / Express应用程序中?

山姆

首先,什么是生成密钥的好方法?我应该在键盘上打很多随机键以产生一个,但是对此必须有更好的解决方案。解释生成一个很好的密钥的方法。

其次,什么是存储密钥的好方法?我可以在应用程序配置中编写密钥,但这意味着对源代码的妥协将损害整个系统。将密钥存储在Node.js Express应用中的好方法是什么?

安德鲁·拉弗斯(Andrew Lavers)

要以编程方式生成秘密,可以使用节点的crypto.randomBytes()

var crypto = require('crypto');
var jwt = require('jsonwebtoken');

crypto.randomBytes(256, function(ex, buf) {
  if (ex) throw ex;
  var token = jwt.sign({foo: 'bar'}, buf);
  var decoded = jwt.verify(token, buf);
});

至于存储它,您是绝对正确的,绝对不应在您的源代码管理中存储秘密。更好的方法是从环境变量(例如)加载此类敏感信息process.env.MY_SECRET

我见过的另一种不太常见的模式是从与代码分开存储的文件中加载机密。例如,您可以让您的节点应用程序查找JSON文件~/.myapp/secrets.json

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在Node.js和Express.js应用程序中设置HttpOnly标志?

来自分类Dev

var app = express();的用途是什么?在创建Node.Js应用程序的过程中?

来自分类Dev

并发如何在Node.js + Express应用程序中工作?

来自分类Dev

如何在node / mean / express应用程序中拆分index.js文件?

来自分类Dev

如何在Node.js Express应用程序中为用户提供下载窗口选项

来自分类Dev

告诉Mongoose使用哪个数据库-在node.js Express应用程序中

来自分类Dev

Node.JS / Express应用程序中的Jade模板找不到外部Javascript文件?

来自分类Dev

Node.js / Express应用程序中的群集进程阻止

来自分类Dev

app..get()在Node.js Express应用程序中似乎不起作用

来自分类Dev

Express Node.js应用程序中的全局服务器会话

来自分类Dev

在Node.js Express框架中的不同端口上运行多个应用程序

来自分类Dev

node.js/express 应用程序中的错误:发送后无法设置标头

来自分类Dev

如何在express.js中的两个应用程序方法之间发送数据

来自分类Dev

启动Node.js Express应用程序

来自分类Dev

Node.js Express应用程序生产部署

来自分类Dev

为什么我的Express js应用程序不执行?

来自分类Dev

如何在Visual Studio 2015中编写API方法Node.js Express 3应用程序

来自分类Dev

尝试使用猫鼬更新mongodb中的记录。我的应用程序正在使用Node.js和Express 4

来自分类Dev

如何在代理后面配置 node.js (express.js) 应用程序?

来自分类Dev

尝试在Heroku上部署Node.js / Express / Socket.io应用程序时出现应用程序错误

来自分类Dev

express.js应用程序中的响应头

来自分类Dev

Forever.js不会重新启动我的Node.js / Express应用程序

来自分类Dev

将我的node.js模块集成到express.js应用程序

来自分类Dev

使用express.js和node.js运行我的示例应用程序

来自分类Dev

使用 node.JS 应用程序错误编写 express JS API

来自分类Dev

为什么我不能运行我的node.js Express Web应用程序

来自分类Dev

为什么我无法运行我的node.js Express Web应用程序

来自分类Dev

在Node.js中查询应用程序名称

来自分类Dev

在Node.js应用程序中遍历'__dirname'

Related 相关文章

  1. 1

    如何在Node.js和Express.js应用程序中设置HttpOnly标志?

  2. 2

    var app = express();的用途是什么?在创建Node.Js应用程序的过程中?

  3. 3

    并发如何在Node.js + Express应用程序中工作?

  4. 4

    如何在node / mean / express应用程序中拆分index.js文件?

  5. 5

    如何在Node.js Express应用程序中为用户提供下载窗口选项

  6. 6

    告诉Mongoose使用哪个数据库-在node.js Express应用程序中

  7. 7

    Node.JS / Express应用程序中的Jade模板找不到外部Javascript文件?

  8. 8

    Node.js / Express应用程序中的群集进程阻止

  9. 9

    app..get()在Node.js Express应用程序中似乎不起作用

  10. 10

    Express Node.js应用程序中的全局服务器会话

  11. 11

    在Node.js Express框架中的不同端口上运行多个应用程序

  12. 12

    node.js/express 应用程序中的错误:发送后无法设置标头

  13. 13

    如何在express.js中的两个应用程序方法之间发送数据

  14. 14

    启动Node.js Express应用程序

  15. 15

    Node.js Express应用程序生产部署

  16. 16

    为什么我的Express js应用程序不执行?

  17. 17

    如何在Visual Studio 2015中编写API方法Node.js Express 3应用程序

  18. 18

    尝试使用猫鼬更新mongodb中的记录。我的应用程序正在使用Node.js和Express 4

  19. 19

    如何在代理后面配置 node.js (express.js) 应用程序?

  20. 20

    尝试在Heroku上部署Node.js / Express / Socket.io应用程序时出现应用程序错误

  21. 21

    express.js应用程序中的响应头

  22. 22

    Forever.js不会重新启动我的Node.js / Express应用程序

  23. 23

    将我的node.js模块集成到express.js应用程序

  24. 24

    使用express.js和node.js运行我的示例应用程序

  25. 25

    使用 node.JS 应用程序错误编写 express JS API

  26. 26

    为什么我不能运行我的node.js Express Web应用程序

  27. 27

    为什么我无法运行我的node.js Express Web应用程序

  28. 28

    在Node.js中查询应用程序名称

  29. 29

    在Node.js应用程序中遍历'__dirname'

热门标签

归档