none
How to get a domain name from objectSID (AD MA extension) RRS feed

  • Question

  • I am looking for help, need to write a sync rule to fetch the domain name from multiple forests based on objectSID in AD MA extension (classic MIM).

    Could you please guide me? Thanks in advance.


    Thursday, August 8, 2019 8:22 AM

Answers

  • I have managed to write the code, sharing here:

    SecurityIdentifier sid = new SecurityIdentifier(csentry["objectSID"].BinaryValue, 0);

                                // Strip off the user's RID and add the "well known" RID for the guest account
                                // This way we only have to look up one account (guest) per domain
                                string guest_sid = sid.ToString().Substring(0, sid.ToString().LastIndexOf('-')) + "-501";

                                if (domain_cache.Contains(guest_sid))
                                {
                                    mventry["domain"].Value = domain_cache[guest_sid].ToString();
                                }
                                else
                                {
                                    if (guest_sid == "+++++++++")
                                    {
                                        mventry["domain"].Value = "+++++++";
                                    }
                                    else
                                    {
                                        mventry["domain"].Value = "Unknown";
                                    }
                                }
    Thursday, August 22, 2019 6:26 AM

All replies

  • Can anyone guide me?
    Friday, August 9, 2019 9:57 AM
  • I have managed to write the code, sharing here:

    SecurityIdentifier sid = new SecurityIdentifier(csentry["objectSID"].BinaryValue, 0);

                                // Strip off the user's RID and add the "well known" RID for the guest account
                                // This way we only have to look up one account (guest) per domain
                                string guest_sid = sid.ToString().Substring(0, sid.ToString().LastIndexOf('-')) + "-501";

                                if (domain_cache.Contains(guest_sid))
                                {
                                    mventry["domain"].Value = domain_cache[guest_sid].ToString();
                                }
                                else
                                {
                                    if (guest_sid == "+++++++++")
                                    {
                                        mventry["domain"].Value = "+++++++";
                                    }
                                    else
                                    {
                                        mventry["domain"].Value = "Unknown";
                                    }
                                }
    Thursday, August 22, 2019 6:26 AM