2013-01-25 43 views
6

से प्रमाणीकरण करना मैं एक .NET 4.5 ऐप में उपयोगकर्ता को प्रमाणीकृत करने के लिए एडी एफएस का उपयोग करके अपना सिर गोल करने की प्रक्रिया में हूं। मुझे कंसोल ऐप से टोकन का अनुरोध/प्राप्त करने और दावा करने वाले सिद्धांत में टोकन को परिवर्तित करने के कोई उदाहरण नहीं मिल रहे हैं। एकमात्र उदाहरण जो मैं पा सकता हूं वह डब्ल्यूसीएफ कॉन्फ़िगरेशन आधारित है और मैं वास्तव में वास्तविक कोड देखना चाहता हूं जो इसे अपने सबसे सरल रूप में कर सकता है।एडी एफएस के खिलाफ एक नेट 4.5 कंसोल ऐप

मैंने एडी एफएस स्थापित किया है और मुझे लगता है कि मुझे अनुरोध प्राप्त करने के लिए इसे कॉन्फ़िगर किया गया है। मैंने एक भरोसेमंद पार्टी बनाई है, इसे एक कुंजी दी है और इसे दो दावों को सौंपा है।

क्या कोई मुझे सही दिशा में इंगित कर सकता है या मुझे अपने कंसोल ऐप में अब प्रमाणीकरण अनुरोध भेजने के लिए क्या करना है?

धन्यवाद

उत्तर

8

सबसे आसान तरीका है .NET 4.5 से WSTrustChannelFactory उपयोग करने के लिए है। http://leastprivilege.com/2012/11/16/wcf-and-identity-in-net-4-5-external-authentication-with-ws-trust/

आपके पास करने के बाद टोकन आप इसी टोकन हैंडलर के माध्यम से इसे चलाने के एक ClaimsPrincipal में बदल रहे हैं:

यहाँ RequestSecurityToken विधि देखें।

मैं GitHub पर सहायक तरीकों और मेरे पुस्तकालय में बाइंडिंग है: https://github.com/thinktecture/Thinktecture.IdentityModel.45

(WCF फ़ोल्डर, WSTrustClient और एक्सटेंशन फ़ोल्डर के लिए देखो)।

+0

बहुत बढ़िया, मुझे लगता है कि मुझे लगभग वहां मिला है। मैंने WindowsWSTrust के उदाहरण में बाइंडिंग को स्विच किया क्योंकि मैं वर्तमान लॉग इन उपयोगकर्ता को प्रमाणित करना चाहता हूं। मुझे यह अभी मिल रहा है हालांकि "http अनुरोध क्लाइंट प्रमाणीकरण योजना के साथ अनधिकृत है 'अज्ञात' – Gavin

+0

एडीएफएस में आप किस अंतराल का उपयोग कर रहे हैं? – leastprivilege

+0

मैंने कुछ ट्रस्ट/13/विंडोज़, ट्रस्ट/13/विंडोस्ट्रांसपोर्ट और ट्रस्ट/2005/विंडोस्ट्रान्सपोर्ट – Gavin