如何将节点模块中的凭据保密?

时间:2016-10-03 00:52:42

标签: node.js npm node-modules

它基本上在标题中。如果所有节点模块都是开源的,那么如何将用户名和密码保密?像这样:

// code
db.connect(username, password);
// more code

该模块的任何下载程序都可以查看凭据。我怎么做到这样他们不能?

2 个答案:

答案 0 :(得分:1)

您不会在节点模块中包含凭据,这将被视为不良做法。您为节点模块的用户提供了一些提供自己凭据的方法。例如,如果模块导出了一个类。您可以拥有一个使用用户名和密码的类构造函数。

此外,所有节点模块都不是开源的。 NPM还提供托管私有包的功能(收费),或者你有类似sinopia的东西,它允许你自己托管包注册表以便与npm一起使用。

答案 1 :(得分:0)

通常,您将从配置文件(而不是从公共共享代码)加载凭据,并且只有配置文件的shell才会包含在公共存储库中。

在node.js中,读取配置文件的最简单方法之一是使文件中的数据为JSON,为文件提供.json文件扩展名,然后您只需加载{{{ 1}}如:

require()
相关问题