2013-07-24 6 views

Antwort

2

Wenn Sie die Basisauthentifizierung nutzen möchten, haben Sie zwei Möglichkeiten: http-auth und Passport. http-auth ist ein sehr einfaches Modul und Passport ist ein leistungsfähiges Modul mit Alternativen für die Authentifizierung. Beide Module bieten Codebeispiele, die vom Basiscode bis zur Express-Framework-Integration reichen.

+0

Ich denke nicht, dass das ist, was die Frage verlangt. Dies beantwortet die Authentifizierung eines Benutzers in einer App. Nicht, wie zum Beispiel eine Fleckenumgebung zu sichern. – Noah

0

Ich habe das gleiche Problem. Es ist mir gelungen, eine Lösung zu finden, die für Sie funktioniert, aber für mich nicht geeignet ist, da sie die integrierte Benutzeranmeldung von angular-fullstack beeinträchtigt.

Ich wollte nur einen schnellen Weg zum Passwortschutz der App, so dass nur Entwickler und Stakeholder es sehen konnten. https://www.npmjs.org/package/http-auth scheint den Trick zu tun.

Dies beinhaltet hinzufügen http-Auth zu Ihrem Projekt (npm installieren http-Auth --save). Dann müssen Sie die Datei finden, in der Ihr createServer definiert ist, und den Code dort.

Wenn Sie Express verwenden können Sie so etwas wie dieses

// 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); 

tun Wenn nicht, dann können Sie eine der Optionen aus der Dokumentation http-auth versuchen z.B.

// 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); 

Hier sind auch ein paar verwandte Themen mit etwas ähnlichen Ansätzen.

express.basicAuth throwing error

Basic HTTP authentication in Node.JS?

Verwandte Themen