Рейтинг:0

Программное обновление атрибутов AD

флаг mx

Приношу свои извинения, так как я инженер, а не системный администратор, но я работаю с кем-то, кто управляет AD.

Текущая ситуация: у нас есть атрибут AD, который содержит длинную разбираемую строку, содержащую несколько элементов данных. Мы хотели бы разбить эти элементы на отдельные атрибуты. Например, если у нас есть:

serverInfo: name=nameOne|xx=xx|group=group1|id=123|привилегия=9;name=nameTwo|xx=yy|.....

Я хотел бы найти имя nameOne и извлечь группу, идентификатор и привилегию в отдельные атрибуты, поэтому для этого пользователя у вас будет:

serverInfo: name=nameOne|xx=xx|group=group1|id=123|привилегия=9;name=nameTwo|xx=yy|.....
группа: группа1
идентификатор: 123
привилегия: 9

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

Мой вопрос: как бы вы это сделали?

Я ожидаю, что ответы будут такими: «Я бы исправил пакетный файл» или «Я бы использовал инструмент xyz» или что-то в этом роде. Я не ищу конкретного решения, как можно было бы начать решать эту проблему.

LeeM avatar
флаг cn
не зная, какие языки сценариев или программирования доступны в качестве опций, трудно советовать. Я бы не стал использовать чистый пакет, потому что синтаксический анализ строк ужасен и не предназначен для манипулирования объектами. Используйте что-то, где вы можете разделить строку разделителем `|`. Затем для каждого элемента из разделения используйте регулярное выражение для создания хеш-таблицы или аналогичного (например, PSCustomObject), извлекая идентификатор свойства перед `=` и присваивая значение свойства после `=`.
Рейтинг:2
флаг tz

Существует несколько способов достижения этой цели, но наиболее распространенным, вероятно, будет сценарий PowerShell, использующий Модуль ActiveDirectory к:

  • Запрос атрибута из объектов, которые его содержат
  • Разобрать данные
  • Установите новые значения для отдельных атрибутов, связанных с проанализированными данными.

Это также предполагает, что новые атрибуты, которые вы пытаетесь установить, уже существуют в вашей схеме AD.

Пользователю, запускающему сценарий, также потребуются соответствующие разрешения (или набор учетных данных с разрешениями) в AD для чтения исходного атрибута и изменения целевых атрибутов.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.