2013-02-11 47 views
6

मुझे दावों से विंडोज टोकन प्राप्त करने की आवश्यकता है। समाधान एक दावा जागरूक डब्ल्यूसीएफ webservice है जो एडीएफएस 2.0 का उपयोग करता है और आईआईएस एएसपी.NET 4.0 में चलता है। (Kerberos टोकन प्रतिरूपित डेटाबेस का उपयोग करने की दिशा में की जरूरत है)c2WTS (विंडोज टोकन सेवा के लिए दावा) .net 4.5

.NET 3.5 और 4.0 में C2WTS सेवा दावों से विंडोज पहचान पाने के लिए प्रयोग किया जाता है:

WindowsIdentity winId = S4UClient.UpnLogon (UPN);

लेकिन सी 2 डब्ल्यूटीएस के लिए प्रलेखन निम्न बताता है: "... [.NET Framework 4.5 से शुरू होने पर, विंडोज आइडेंटिटी फाउंडेशन (डब्ल्यूआईएफ) को पूरी तरह से .NET Framework में एकीकृत किया गया है। इस द्वारा संबोधित वाईआईएफ का संस्करण विषय, डब्ल्यूआईएफ 3.5, को हटा दिया गया है और इसका उपयोग केवल .NET Framework 3.5 SP1 या .NET Framework 4 के विरुद्ध विकसित होने पर किया जाना चाहिए ... "

.NET 4.5 में c2WTS के बराबर क्या होगा?

उत्तर

5

कोई समकक्ष नहीं है। लेकिन आप अभी भी सी 2 डब्ल्यूटीएस सेवा प्राप्त करने के लिए वाईआईएफ स्थापित कर सकते हैं।

सैल सुरक्षा टोकन हैंडलर में MapToWindows सुविधा है जो Windows पहचान लौटाती है। यह सी 2 डब्ल्यूटीएस के समान है - लेकिन

1) विंडोज पहचान का उपयोग केवल स्थानीयकरण के लिए ही किया जा सकता है - प्रतिरूपण करने के लिए आपको सिस्टम विशेषाधिकारों की आवश्यकता होगी। यही सी 2 डब्ल्यूटीएस के तहत चलता है। 2) टोकन को प्रतिनिधि करने के लिए आपको एडी में बाध्य प्रतिनिधिमंडल को कॉन्फ़िगर करने की आवश्यकता है (जैसे सी 2 डब्ल्यूटीएस)

+0

सुझावों के लिए धन्यवाद। सैल सुरक्षा टोकन पर .NET 4.5 MapToWindows की कोशिश नहीं की है, लेकिन C2WTS का उपयोग कर रहे हैं। मैं पहचान प्राप्त करने में सक्षम हूं, लेकिन लिनक्स में ओरेकल डीबी की ओर प्रतिनिधिमंडल काम नहीं कर रहा है। हम लिनक्स में ओरेकल सेवा की ओर एडी में प्रोटोकॉल संक्रमण के साथ सीमित प्रतिनिधिमंडल के साथ संघर्ष कर रहे हैं। मैं इसे उत्तर के रूप में चिह्नित करूंगा क्योंकि यह मेरे प्रश्न को सही मानता है, भले ही चीजें अभी तक पूरी तरह से काम न करें। – HakonIngvaldsen

0

एस 4 यू इस समय पर बनाया गया है। आपको सी 2 डब्ल्यूटीएस की आवश्यकता नहीं है। तुम सिर्फ कर सकते हैं:

var id = new WindowsIdentity(valueFromClaim); 
// continue your impersonation 

सेवा कॉल के लिए, यदि आप DefaultCredentials को साख निर्धारित करते हैं, आप ठीक इस SAML टोकन हैंडलर पर ToWindowsIdentity निष्पादित करने के लिए प्रकट होता है के रूप में होना चाहिए।

चूंकि आप ओरेकल जा रहे हैं, इसलिए आपको स्पष्ट रूप से एक विंडोज संदर्भ बनाने और प्रतिरूपण करने की आवश्यकता हो सकती है (देखें: Creating a service for user (S4U) token)।

उन सभी ने कहा, आपको बाध्य प्रतिनिधिमंडल को सही तरीके से कॉन्फ़िगर किया जाना चाहिए या प्रतिनिधिमंडल कार्य नहीं करेगा।