2012-04-23 74 views
2

保持數據庫安全的API密鑰和訪問細節的最佳實踐是什麼?保持數據庫安全的API密鑰和訪問細節

我們將用Nodejitsus jitsu deploy進行部署,所以我的想法是有一個配置文件,不會是git的一部分。我將有.gitignore'd

module.exports = (app) -> 

    app.configure 'development', -> 

     global.config = 
      dbUrl: 'mongodb://username:[email protected]:port/closet' 
      foursquare: 
       client_id: 'xxx' 
       client_secret: 'xxx' 
       redirect_uri: 'http://127.0.0.1:3000/account/auth/foursquare/done' 

     return 

    app.configure 'production', -> 

     global.config = 
      dbUrl: 'mongodb://username:[email protected]:port/closet' 
      foursquare: 
       client_id: 'yyy' 
       client_secret: 'yyy' 
       redirect_uri: 'http://example.com/account/auth/foursquare/done' 

     return 


    return 

回答

2

通常我做的是保存我的配置在config.json,將其添加到我的.gitignore,然後包括.npmignore使NPM不使用.gitignore決定捆綁什麼。這樣,git不會添加config.json,但jitsu會在部署時捆綁它。

env變量,如booyaa建議的那樣,也可以工作。

1

你可以使用jitsu env命令存儲API密鑰(和其他機密)作爲環境變量

我們目前的配置文件。然後使用process.env在node.js應用程序中獲取這些變量。