मैं NodeJS
अनुप्रयोग में एक खिड़कियों उपयोगकर्ता को प्रमाणित करना चाहते हैं। क्या इसके लिए अभी तक कोई ऐड-ऑन है? node-krb5
है लेकिन यह अभी तक विंडोज का समर्थन नहीं करता है।NodeJS या ExpressJS विंडोज प्रमाणीकरण
उत्तर
मैंने इस के लिए एक ब्लॉग पोस्ट जोड़ा है http://hadenoughpi.wordpress.com/2013/04/16/node-js-windows-authentication-using-edgejs/ मुझे आशा है कि यह सही तरीकों में से एक है।
आप 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();
});
तो आप अपने अन्य मार्गों में अनुरोध वस्तु पर उपयोगकर्ता आईडी का उपयोग कर सकते हैं:
app.get("/api/testAuthentication", function(request, response){
console.log(request.user.id + " is authenticated");
});
app.get("/api/testAuthorization", hasRole("a role"), function(request, response, next){
console.log(request.user.id " is authenticated and authorized");
});
जहां hasRole इस तरह दिखता है:
function hasRole(role) {
return function(request,response,next){
//your own authorzation logic
if(role == "a role")
next();
else
response.status(403).send();
}
}
लेकिन जब हम आईआईएस के पीछे नोड डालते हैं, तो हमने बहुत सारे नोड लाभ खो दिए! – DaNeSh
मैं प्रतिक्रिया 'ब्राउज़र में यूआरएल से (request.user.id)' प्राप्त करने में सक्षम हूँ। लेकिन जब मैं एक ही यूआरएल तक पहुंचने की कोशिश कर रहा हूं, तो मुझे त्रुटि अनधिकृत त्रुटि मिल रही है। मुझे पता है कि यह पोस्ट पुराना है लेकिन यदि संभव हो, तो क्या आप कोई उदाहरण साझा कर सकते हैं जहां आपने इस तरह की चीज का उपयोग किया है? –
node-sspi
:अगर आप उपयोगकर्ता आईडी का उपयोग कर अपनी खुद की प्राधिकरण तर्क लागू करना चाहते हैं तो आप इस तरह एक मिडलवेयर समारोह को परिभाषित कर सकते यह आसान और कुशल पाया उपयोग करने के लिए।
- 1. समाशोधन सत्र, expressjs, NodeJS
- 2. NodeJS/Expressjs एप्लिकेशन संरचना
- 3. बाइंड expressjs
- 4. Expressjs
- 5. ExpressJS
- 6. विंडोज प्रमाणीकरण बनाम प्रमाणीकरण
- 7. विंडोज प्रमाणीकरण
- 8. विंडोज प्रमाणीकरण
- 9. विंडोज प्रमाणीकरण
- 10. विंडोज प्रमाणीकरण
- 11. विंडोज प्रमाणीकरण
- 12. एकीकृत विंडोज प्रमाणीकरण
- 13. कस्टम विंडोज जीआईएनए प्रमाणीकरण
- 14. कस्टम विंडोज प्रमाणीकरण पैकेज
- 15. आईआईएस विंडोज प्रमाणीकरण बेनामी
- 16. SignalR विंडोज एकीकृत प्रमाणीकरण
- 17. आईआईएस विंडोज प्रमाणीकरण अजीबता
- 18. System.Net.WebClient विंडोज प्रमाणीकरण
- 19. NodeJS
- 20. NodeJS सर्वर होस्ट नाम
- 21. लोकहोस्ट से कनेक्ट करें: 3000 किसी अन्य कंप्यूटर से | expressjs, nodejs
- 22. एएसपी.नेट विंडोज प्रमाणीकरण लॉगआउट
- 23. बाईपास विंडोज प्रमाणीकरण
- 24. pymssql विंडोज प्रमाणीकरण
- 25. नैन्सीएफएक्स और विंडोज प्रमाणीकरण
- 26. वाटिन विंडोज प्रमाणीकरण
- 27. विंडोज प्रमाणीकरण प्रमाण-पत्र
- 28. वीबीए: विंडोज प्रमाणीकरण
- 29. मैं विंडोज प्रमाणीकरण
- 30. क्लासिक एएसपी - विंडोज प्रमाणीकरण
यह विंडोज़ प्रमाणन जो एकल प्रवेश है के प्रयोजन को हरा दिया। आपके समाधान के लिए उपयोगकर्ता नाम, डोमेन और पासवर्ड गुजरना आवश्यक है। –