2013-07-24 12 views
6

私は、開発者だけが見ることができるように、HerokuプライベートでNodeJSアプリケーションを作成しようとしています。基本的な認証のように、それを行う簡単な方法はありますか? (私が見つけ出すすべての解決策は、Rubyアプリケーションに固有のものです)。HerokuでNodeJsアプリケーションをプライベートにする

+0

あなたは、フレームワークの任意の並べ替えを使用していますか? – max

答えて

2

基本認証を利用する場合は、http-authPassportの2つのオプションがあります。 http-authは非常に単純なモジュールであり、Passportは認証のための選択肢を備えた強力なモジュールです。どちらのモジュールも、基本コードからExpressフレームワーク統合までのコード例を提供します。

+0

私はこれが質問しているとは思わない。これは、アプリでユーザーを認証する方法を示しています。たとえば、汚れた環境を保護する方法ではありません。 – Noah

0

私は同じ問題があります。私はあなたのために働くかもしれない1つの解決策を得ることに成功しましたが、それは角度のフルスタックからの組み込みユーザーログインを妨げるように見えるので、私にとっては適切ではありませんでした。

私は、開発者と利害関係者だけがそれを見ることができるように、アプリケーションをパスワードで保護する簡単な方法を望んでいました。 https://www.npmjs.org/package/http-authトリックを行うようです。

これには、http-authをプロジェクトに追加します(npm install http-auth --save)。次に、createServerが定義されているファイルとそのコードを検索する必要があります。

あなたはExpressを使用している場合、あなたは、例えばHTTP-AUTHのドキュメントからいずれかのオプションを試すことができない場合は、この

// HTTP Authentication 
var preAuth = require('http-auth'); 
var basic = preAuth.basic({ 
     realm: "Restricted Access! Please login to proceed" 
    }, function (username, password, callback) { 
     callback((username === "user" && password === "password")); 
    } 
); 

// Setup server 
var app = express(); 
    app.use(preAuth.connect(basic)); 
var server = require('http').createServer(app); 

ような何かを行うことができます

// Authentication module. 
var auth = require('http-auth'); 
var basic = auth.basic({ 
     realm: "Simon Area." 
    }, function (username, password, callback) { // Custom authentication method. 
     callback(username === "Tina" && password === "Bullock"); 
    } 
); 

// Creating new HTTP server. 
http.createServer(basic, function(req, res) { 
    res.end("Welcome to private area - " + req.user + "!"); 
}).listen(1337); 

ここには、やや類似したアプローチの2つの関連スレッドもあります。

express.basicAuth throwing error

Basic HTTP authentication in Node.JS?

関連する問題