मुझे सक्रिय निर्देशिका सेटअप के साथ मेरी एएसपी.NET वेब सेवा को एकीकृत करने और इसे प्रमाणीकरण उपयोगकर्ताओं के साथ उपयोग करने और एडी समूहों के साथ जांच करने में कोई समस्या है, वे सदस्य हैं और यदि उनके पास है मेरे कस्टम एप्लिकेशन का उपयोग करने के लिए अनुमतियाँ।सक्रिय निर्देशिका में उपयोगकर्ता के समूह प्राप्त करना
मेरे कस्टम एप्लिकेशन की अपनी अनुमतियां हैं, और व्यवस्थापक सक्रिय निर्देशिका समूहों को कॉन्फ़िगर करते हैं जो कस्टम एप्लिकेशन का उपयोग करने की अनुमति देते हैं।
मेरा मुद्दा यह है कि जब मैं एक अलग ट्रस्टेड एडी वन से उपयोगकर्ता को दो अलग-अलग ट्रस्ट के साथ लॉगिन करता हूं, तो लॉगिन करने का प्रयास करता हूं, मुझे एडी सर्वर से अपने एएसपी.NET वेब सेवाओं से अपने समूहों की सूची नहीं मिल सकती के साथ संवाद करता है। एएसपी.नेट वेब सेवा के पास केवल एडी सर्वर (एडी मेन) तक पहुंच है, न कि ट्रस्ट एडी नियंत्रक (एडी माध्यमिक)।
उपयोगकर्ता (एडी माध्यमिक) डोमेन का सदस्य है, और मैं उस उपयोगकर्ता को (एडी मुख्य) डोमेन के विरुद्ध प्रमाणित कर सकता हूं, लेकिन मुझे (एडी मुख्य) डोमेन से समूह की सूची नहीं मिल सकती है जब मुझे उपयोगकर्ता (एडी माध्यमिक) डोमेन में है।
मैंने इस कोड को आजमाया है।
StringCollection groupids = new StringCollection();
try
{
DirectoryLibrary dirLib = new DirectoryLibrary();
DirectoryEntry directoryEntry = new DirectoryEntry("LDAP://" + domain,username, password);
if (directoryEntry != null)
{
//Enum the properties so we can see what is in them
foreach (string propname in directoryEntry.Properties.PropertyNames)
{
Debug.WriteLine(propname);
}
object obGroups = directoryEntry.Invoke("Groups");
foreach (object ob in (IEnumerable)obGroups)
{
// Create object for each group.
DirectoryEntry obGpEntry = new DirectoryEntry(ob);
groupids.Add(obGpEntry.NativeGuid);
}
}
}
catch (DirectoryServicesCOMException ex) { throw ex; }
मैंने निर्देशिकाऐंट्री ऑब्जेक्ट से इस तरह कुछ करने की कोशिश की है।
List<GroupPrincipal> result = new List<GroupPrincipal>();
StringCollection groupids = new StringCollection();
PrincipalContext yourDomain = new PrincipalContext(ContextType.Domain, domain, userName, password);
// find your user
UserPrincipal user = UserPrincipal.FindByIdentity(yourDomain, userName);
// if found - grab its groups
if (user != null)
{
PrincipalSearchResult<Principal> groups = user.GetGroups();
// iterate over all groups
foreach (Principal p in groups)
{
// make sure to add only group principals
if (p is GroupPrincipal)
{
groupids.Add(p.DisplayName);
}
}
}
लेकिन, मुझे उपयोगकर्ता नहीं मिलता है और मैं अन्य डोमेन है कि उपयोगकर्ता के लिए समूह की एक सूची प्राप्त नहीं कर सकते। किसी भी सहायता की सराहना की जाएगी।
मैं [पहले था] है (http://serverfault.com/questions/358102/inconsistent-information-in-active -directory-सदस्यों और सदस्य-ऑफ-द गुण) विज्ञापन समूह सदस्यता के साथ दर्द की एक छोटी सी दुनिया। गुड लक, सभी मैं कह सकता हूँ ... – AakashM
हम अभी तक एक समाधान नहीं मिला है, लेकिन यह लगता है कि हम स्थापित करने के लिए ADFS –