के लिए प्रधानाचार्य/सापेक्ष पहचानकर्ता (आरआईडी) प्राप्त करें मैं एक कस्टम सदस्यता प्रदाता वर्ग में सक्रिय निर्देशिका का उपयोग कर रहा हूं ताकि एएसपी.NET 2.0 इंट्रानेट एप्लिकेशन में उपयोगकर्ताओं को प्रमाणित किया जा सके और उनके एसआईडी को प्रोफाइल के साथ संबद्ध किया जा सके। आवेदन पत्र।एएसपी.नेट - डायरेक्टरीएन्ट्री/एसआईडी
जब ActiveDirectoryMembershipProvider
प्रयोग किया जाता है, MembershipUser
के लिए ProviderUserKey
वस्तु YY
नाम स्थान (यह भी एक समूह/डोमेन के रूप में) के भीतर प्रमुख है के रूप में
SecurityIdentifier sid = (SecurityIdentifier)Membership.GetUser().ProviderUserKey;
string sidValue = sid.ToString();
/* sidValue = "S-1-5-21-XXXX-XXXX-XXXX-YY" */
मैं यह समझ के रूप में इस प्रकार है।
कस्टम MembershipProvider का उपयोग कर, मैं sid
DirectoryEntry entry = new DirectoryEntry(path, username, password);
SecurityIdentifier sid = new SecurityIdentifier((byte[])entry.Properties["objectSid"].Value, 0);
string sidValue = sid.ToString();
/* sidValue = "S-1-5-21-XXXX-XXXX-XXXX" */
sidValue
इस मामले में समान है एक DirectoryEntry वस्तु की objectSid
संपत्ति का उपयोग कर, प्राप्त कर सकते हैं सिवाय यह प्रिंसिपल YY
शामिल नहीं है।
मेरा प्रश्न दो गुना
- प्रिंसिपल आदेश विशिष्ट एक व्यक्ति की पहचान करने के लिए आवश्यक है?
- यह DirectoryEntry ऑब्जेक्ट से प्रिंसिपल प्राप्त करने के लिए (या
System.DirectoryServices
में उपलब्ध किसी भी अन्य कक्षाओं के माध्यम से) संभव है?
संपादित करें:
किया करने के बाद कुछ और पढ़ने ({1}{2}), अब मैं जानता हूँ कि sid यदि उपयोगकर्ता एक समूह/डोमेन से दूसरे में ले जाया जाता है बदल सकते हैं। इस के प्रकाश में, GUID
DirectoryEntry
Properties["objectGUID"]
में परिभाषित विशिष्ट एक उपयोगकर्ता की पहचान के लिए एक बेहतर विकल्प हो का उपयोग कर चाहते हैं?
objectGUID खाते या वस्तु के प्रकार है कि निर्देशिका प्रविष्टि का प्रतिनिधित्व करता है के लिए एक GUID के लिए एक GUID है? साथ ही, क्या आपके पास किसी भी दस्तावेज का लिंक है जो प्रत्येक निर्देशिका प्रविष्टि गुणों पर विवरण प्रदान करता है? –
यह व्यक्तिगत खाते के लिए एक GUID है। यदि आप एडीएसआई एडिट एमएमसी स्नैप-इन (http://technet.microsoft.com/en-us/library/cc773354(WS.10).aspx) का उपयोग करते हैं तो आप इसे सक्रिय निर्देशिका में देख सकते हैं। – serialhobbyist
मैंने मुख्य पोस्ट के लिंक जोड़े हैं क्योंकि पिछले एक को थोड़ा उलझन लग रहा था। मुझे यकीन नहीं था कि क्या आप DirectoryEntry ऑब्जेक्ट या AD ऑब्जेक्ट के गुण चाहते थे। बाद के मामले में एडी लोग उनके बारे में विशेषताओं के रूप में बात करते हैं। इसलिए उपयोगकर्ता जैसे एडी क्लास का एक उदाहरण, DisplayName जैसे गुण हैं। DirectoryEntry का एक उदाहरण गुण गुण है जिसमें गुणों और उनके मानों का संग्रह होता है। इसे गुण, आईएमओ कहा जाना चाहिए। – serialhobbyist