NodeJS
アプリでWindowsユーザーを認証します。 まだアドオンはありますか? node-krb5
がありますが、まだウィンドウはサポートされていません。NodejsまたはExpressJS Windows認証
答えて
私はこのためにブログ記事を追加しましたhttp://hadenoughpi.wordpress.com/2013/04/16/node-js-windows-authentication-using-edgejs/ 私はこれが正しい方法のひとつであることを望みます。
IISでiisnode https://github.com/auth0/passport-windowsauthをホストするとうまく動作します!パスポート-windowsauthは、広告統合が付属していますが、唯一、独自のauthorzationロジックを実装するためにユーザ名をしたい場合は、この
web.configファイルのようにそれを行うことができます。
<system.webServer>
<iisnode promoteServerVars="LOGON_USER" />
</system.webServer>
server.js:
var passport = require('passport');
var WindowsStrategy = require('passport-windowsauth');
app.use(passport.initialize());
app.use(passport.session());
passport.serializeUser(function(user, done) {
done(null, user);
});
passport.deserializeUser(function(user, done) {
done(null, user);
});
passport.use(new WindowsStrategy({
integrated: true
}, function(profile,done) {
var user = {
id: profile.id,
};
done(null, user);
}));
app.all("*", passport.authenticate("WindowsAuthentication"), function (request,response,next){
next();
});
その後、あなたはあなたの他のルートでリクエストオブジェクトにユーザーIDにアクセスすることができます。
app.get("/api/testAuthentication", function(request, response){
console.log(request.user.id + " is authenticated");
});
function hasRole(role) {
return function(request,response,next){
//your own authorzation logic
if(role == "a role")
next();
else
response.status(403).send();
}
}
しかし、IISの後ろにノードを置くと、Nodeのメリットがかなり失われてしまいます。 – DaNeSh
ブラウザのURLから '(request.user.id)'という応答を得ることができました。同じURLにアクセスしようとすると、不正なエラーが発生します。私はこの投稿が古いことを知っていますが、可能であれば、あなたはこの種のものを使った例を共有できますか? –
node-sspi
:hasRoleもがこのようになります
app.get("/api/testAuthorization", hasRole("a role"), function(request, response, next){
console.log(request.user.id " is authenticated and authorized");
});
:ユーザーIDを使用して、独自の承認ロジックを実装する場合次のようなミドルウェア機能を定義することができ、それが簡単かつ効率的に発見しました使用する。
- 1. Expressjs認証
- 2. ExpressJs + Passport.js + MySQL認証
- 3. Node.js Token ExpressJsで認証します
- 4. Nodejs + Expressjs + EJS + Mongodb
- 5. CKEditorとExpressJS - NodeJS
- 6. Nodejs + ExpressJS +ジェイド+ポストには
- 7. Nodejs/Expressjsアプリ構造
- 8. ExpressJSとCouchDBでのユーザ認証
- 9. ldap nodejsアクティブディレクトリ認証
- 10. NodeJSユーザー認証ミドルウェア
- 11. nodejsパスポート認証トークン
- 12. フォーム認証クロスWindows認証
- 13. Windows認証とフォーム認証
- 14. ルビーは、Windows認証
- 15. ExpressJS、NodeJs、MongoDB CRUDスケルトン - Mac
- 16. ネストされたGETリクエストNodejs Expressjs
- 17. Windows認証/承認
- 18. android + nodejsを使用した認証
- 19. Angularjs、Nodejs、Expressjs、express-sessoion、Mongo Storeを使用したクロスドメインCookie
- 20. ExpressJS/NodeJS - リバースプロキシの展開
- 21. nodejs、php、expressjsとのプライベートチャット?
- 22. IIS8.5 Windows認証
- 23. Windows認証セッションタイムアウト
- 24. Watin Windows認証
- 25. Nodejsでのパスポート認証
- 26. NodeJSのリダイレクト、認証、取得
- 27. NodeJsパスポートローカル戦略認証
- 28. NodeJs HTTPプロキシ基本認証
- 29. nodejs - ユーザー認証付きCRUD
- 30. Express NodeJSの認証ミドルウェア - ベストプラクティス
これは、シングルサインオンでのWindows認証の目的に反し。ソリューションには、ユーザー名、ドメイン、パスワードを渡す必要があります。 –