2014-09-04 9 views
6

मुझे तीसरे पक्ष के आवेदन अनुरोधों को सत्यापित करने के लिए अपना खुद का ओउथ प्रदाता बनाने की आवश्यकता है, मैं Google, ट्विटर, लिंक्डइन, माइक्रोसॉफ्ट प्रदाताओं का उपयोग नहीं करना चाहता हूं। मुझे अनुरोध प्रमाणित करने और क्लाइंट को एक्सेस टोकन वापस करने के लिए अपना स्वयं का प्रदाता बनाना होगा। लेकिन नेट पर सभी मदद बाहरी प्रदाताओं से संबंधित है (Google, लिंक्डइन, ट्विटर, फेसबुक ..)। क्या कोई मुझे अपना खुद का कस्टम प्रदाता बनाने में मदद कर सकता है?ओएथ कस्टम प्रदाता सी #

+0

मैंने थोड़ी देर पहले शोध किया, और यह एक बुरा विचार साबित हुआ क्योंकि अंतहीन सुरक्षा चिंताओं के बारे में पता होना है, और हैकर्स से आगे अंतहीन अपडेट हैं। अंत में, अधिकांश लोगों ने मुफ्त ThinkTecture सर्वर का चयन किया। इसके पीछे के लोग प्रौद्योगिकी में गंभीर नेता हैं। http://www.thinktecture.com/identityAndAccessControl – EvilDr

+0

क्या आपने [OAuth 1] (http://tools.ietf.org/html/rfc5849) या [OAuth 2] के लिए spec पढ़ा है (http: //tools.ietf .org/html/rfc6749)? –

+0

मुझे अपने ग्राहक की आवश्यकता के अनुसार, OAUTH 2.0 का उपयोग करने की आवश्यकता है। – daisy

उत्तर

6

जैसा कि रोलैंड ने कहा था कि यदि आप कल्पना के माध्यम से इसे सीधे सीधे आगे बढ़ाते हैं।

मान लिया जाये:

एक उच्च स्तर पर यह आपके AuthCode अनुदान पैटर्न का समर्थन करने के करने की आवश्यकता होगी क्या है आपका आवेदन उपयोगकर्ताओं के मालिक हैं।

  • तृतीय पक्ष अनुप्रयोगों में से प्रत्येक को ग्राहक/रहस्य जारी करें।
  • अपने सर्वर पर
    • के लिए अंत बिंदु बनाने के लिए अधिकृत करते
    • टोकन

ग्राहक नीचे की तरह अधिकृत अंत बिंदु हिट जब:

/authorize?response_type=code&client_id=<clientID>&state=xyz&redirect_uri=http://thirdparty.com

  • रेडी क्लाइंट को लॉगिन पेज पर पहुंचाएं।
  • उपयोगकर्ता द्वारा प्रदान किए गए उपयोगकर्ता नाम/pwd को मान्य करें।
  • यदि सफल हो, तो तृतीय पक्ष क्लाइंट को यूआरआई को ऑथोड के साथ रीडायरेक्ट करें।
  • यदि विफलता है, तो तृतीय पक्ष क्लाइंट को यूआरआई को त्रुटि (प्री-प्रकाशित) के साथ रीडायरेक्ट करें।

नमूना यहाँ कॉलबैक https://thirdparty.com/cb?code=SplxlOBeZQQYbYS6WxSbIA&state=xyz

ग्राहक तो/टोकन यूआरआई पर authcode साथ कुछ के साथ नीचे की तरह कॉल करेगा:

/token?grant_type=authorization_code&code=SplxlOBeZQQYbYS6WxSbIA&redirect_uri=http://thirdparty.com 

, एक टोकन जनरेट clientid, प्रयोक्ता-आईडी के खिलाफ यह स्टोर और टोकन के साथ प्रतिक्रिया दें। कुछ की तरह नीचे

{ 
    "access_token":"2YotnFZFEjr1zCsicMWpAA", 
    "token_type":"example", 
    "expires_in":3600, 
    "refresh_token":"tGzv3JOkF0XG5Qx2TlKWIA", 
    "example_parameter":"example_value" 
} 

जब 3 पार्टी का उपयोग अपनी सेवाओं/संसाधनों ग्राहक के खिलाफ टोकन मान्य और उपयोगकर्ता आईडी और अनुदान या पहुंचने से रोका जाता।

यह शुरू करना है, लेकिन आप बहुत अधिक अनुकूलन कर सकते हैं जो आप दायरे और अन्य OAuth2 पैटर्न के साथ कर सकते हैं।

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