Имеет ли System.DirectoryServices.AccountManagement.Principal нулевой GUID? - PullRequest
0 голосов
/ 28 апреля 2010

У меня есть ситуация, когда мне нужно сохранить глобальный уникальный идентификатор, который указывает на учетную запись Active Directory user . Я склоняюсь к Guid , потому что его легче хранить, чем Sid .

Согласно записи MSDN , свойство (которое может иметь значение Nullable) всегда будет возвращать ноль, если для ContextType установлено значение «Machine». Мне не нужно беспокоиться об этом, потому что наш ContextType всегда будет установлен на «Домен».

Мой вопрос: будет ли это свойство когда-либо возвращать нуль, если ContextType имеет значение «Домен»? Другими словами, будет ли учетная запись в магазине AD DS всегда иметь Guid?

Ответы [ 2 ]

1 голос
/ 12 декабря 2010

Я увидел это после ответа на связанный вопрос, и ответ - да: у каждого объекта будет GUID, это обозначено на

http://msdn.microsoft.com/en-us/library/ms675579.aspx

где документация по schemaIDGuid гласит: «При создании объекта classSchema сервер Active Directory генерирует это значение, если оно не указано. Если вы создаете новый класс, сгенерируйте свой собственный GUID для каждого класса, чтобы все установки вашего расширение использует тот же schemaIDGUID для ссылки на класс. "

так .... если вы не создадите его, AD сделает это за вас.

0 голосов
/ 30 мая 2010

У меня нет однозначного ответа, но я написал простое консольное приложение, которое запускалось через все наши учетные записи пользователей Active Directory.

Для нас, по крайней мере, ответ - нет. Принципал всегда будет иметь Guid, если ContextType - это «Домен»

...