Назад | Перейти на главную страницу

Что такое свойство uSNCreated в Active Directory? Это уникально?

Мне нужен способ идентификации пользователей, который не изменится, если изменятся наши правила именования электронной почты или имен пользователей; у них было в прошлом. Мы используем LDAP, но наши международные офисы используют Active Directory, так что я здесь немного зеленый.

Я заметил из дампа, что у всех пользователей есть уникальное значение, присвоенное uSNCreated. Является ли это глобально уникальным для пользователя? Изменится ли оно, если изменится какое-либо из их свойств? Это мой святой Грааль уникальных идентификаторов для AD ?!

Ответ @ sysadmin1138 немного вводит в заблуждение. uSNCreated не имеет отношения ко времени; Единственно только на ДК. Это «наибольшийCommittedUsn + 1» контроллера домена во время создания объекта. Он, вероятно, смешивает это с whenCreated, которое представляет собой 64-битное число, представляющее количество интервалов в 100 наносекунд с 12:00 1 января 1601 года ... и также не обязательно уникальное. Однако он прав в том, что objectGuid вместе с objectSid лучше всего использовать для отслеживания объектов через изменения атрибутов. Оба всегда устанавливаются для всех пользовательских объектов и никогда не изменятся без удаления и воссоздания объекта ... в это время все ставки на отслеживание объекта отключены!

Почему бы не использовать значение, которое использует Microsoft - SID? Это хранится в виде двоичного файла в objectSid атрибут. Еще одно преимущество этого заключается в том, что если ваши пользователи будут перемещаться между доменами в будущем, objectSid будет храниться в sIDHistory чтобы вы могли согласовать изменения.

Это поле на самом деле является скрытым полем даты и времени, и его уникальность не гарантируется. Лучшее поле для этого - objectGUID. Это уникально.