expressでbasic認証
app.use(express.basicAuth('username', 'password'));
もしくは
app.use(express.basicAuth(function(user, password) { return user === 'username' && password === 'password'; }));
こうかな。上のほうが簡単だけど下の方が柔軟。
パスで分けたいなら
app.all('/hoge/*', express.basicAuth(function(user, password) { return user === 'username' && password === 'password'; }));
とか。
設定にbasic認証が存在しているときだけbasic認証かけて、さらに複数ユーザー設定できるようにするためにこんな感じにした。
if (config.basicAuth) { app.use(express.basicAuth(function(user, pass) { return config.basicAuth[user] && config.basicAuth[user] === pass; })); }
設定ファイルは
var config = { basicAuth: { user: 'pass', hoge: 'fuga', foo: 'bar' } };
こんな感じで書ける。