2017-03-07 16 views

उत्तर

7

सबसे पहले स्वयं लागू तरीकों का उपयोग करने से बचने का प्रयास करें। सबसे अधिक उपयोग किया जाने वाला दृष्टिकोण Json web token का उपयोग करना है। https://jwt.io/ जब आप लॉग इन करते हैं, तो टूटा हुआ कोणीय 2 पर लौटें और फिर प्रत्येक अनुरोध पर इसे पास करें। उपयोग करने के लिए कार्यान्वयन और पुस्तकालयों के कई उदाहरण हैं। https://github.com/auth0/angular2-jwt

How to use JWT in MVC application for authentication and authorization?

-4

सर्वोत्तम अभ्यास बुनियादी प्रमाणीकरण का उपयोग कर रहा है और अपना उपयोगकर्ता नाम और पासवर्ड शीर्षलेख में डाल रहा है। ग्राहक के पक्ष में आप शीर्ष लेख के लिए उपयोगकर्ता नाम और पासवर्ड जोड़ना होगा:

var user = 'user'; 
var password = 'password'; 
var base64encodedData = new Buffer(user + ':' + password).toString('base64'); 

अपने सभी HTTP अनुरोध करने के लिए इस शीर्षलेख जोड़ें:

'Authorization': 'Basic ' + base64encodedData 

सर्वर साइड this link में यूज़रनेम और पासवर्ड डिक्रिप्ट करने के लिए आप कर सकते हैं। Man in middle attack को रोकने के लिए मत भूलना, एपीआई के लिए https आवश्यक है।

+0

मैं वास्तव में तो स्मृति में कहीं भी पासवर्ड को बचाने के लिए होने का विचार पसंद नहीं है मैं इसे हेडर में इंजेक्ट कर सकता हूं। –

+0

आपको ऐसा नहीं करना चाहिए। व्यावहारिक रूप से उपयोगकर्ता नाम और पासवर्ड जहां लॉगिन में एपीआई को भेजा गया था और इसके बाद केवल उत्पन्न टोकन क्लाइंट और एपीआई के बीच स्थानांतरित हो रहा है। यह oauth2 है: https://oauth.net/2/ –

1

सबसे अच्छा तरीका है एक पैकेज IdentityServer कहा जाता है का उपयोग कर रहा है। मैं इस पर एक ट्यूटोरियल है, लेकिन इसके पुराने संस्करणों में से एक का उपयोग कर लिखा है, लेकिन यह आप एक अच्छा विचार दे देंगे:

https://www.linkedin.com/pulse/securing-net-core-web-api-identityserver4-resource-owner-dalvandi

संबंधित मुद्दे