Можно ли использовать строки GUID Active Directory для сравнения без учета регистра? - PullRequest
0 голосов
/ 07 апреля 2020

Я не смог найти это документально, поэтому мне интересно, если это имеет значение ...

С Active Directory вам может потребоваться сравнить идентификаторы приложений, идентификаторы объектов и т. Д. c, чтобы узнать идентификаторы для авторизации. цели. Поскольку идентификаторы приложений и идентификаторы объектов - это просто случайно сгенерированные идентификаторы GUID, которые сначала создаются в одном месте, а затем копируются в другое место, где они необходимы, я не вижу веской причины, по которой регистр этих идентификаторов когда-либо будет меняться или изменяться , Так что я бы предположил, что «хорошо» проводить сравнение с учетом регистра большую часть времени.

Но GUID, как правило, анализируются без учета регистра, поэтому логически кажется, что было бы также неплохо делать регистрозависимый сравнение тоже. И это был бы наиболее широко совместимый подход.

Итак, вывод таков: это действительно не имеет значения ... но следует учитывать регистр символов, верно? Если нет, то почему?

1 Ответ

0 голосов
/ 07 апреля 2020

Под крышками GUID (или UUID ) - это 128-битное число. Буквы в текстовом представлении на самом деле не являются буквами: это цифры в базе 16, где AF стоит после 9. Поэтому регистр не имеет значения вообще.

Если вы будете сравнивать строковые представления, то нет вред при проведении сравнения без учета регистра. Однако даже лучше (и немного быстрее) сравнить фактическое числовое значение. Например,. NET имеет структуру Guid, где оператор равенства сравнивает каждый байт в значении.

...