Из 1С выгружаются данные о сотрудниках на веб-страницу в виде JSON. Нужно поднять базу данных, в которую из JSON будут добавляться данные о сотрудниках, после получения данных о сотрудниках из 1С должно сравниваться с теми, что есть в БД, на основе этого должны выявляться новые сотрудники и те, кто был уволен, а далее те, кто уволен - не блокируются, а им меняется пароль на рандомный, если новые, то создаётся новый пользователь и дале обновление в Active Directory, Exchange, Security Group, OU и Bitrix.
Можно ли это грамотно реализовать С помощью PowerShell-скрипта или есть более оптимальные способы ?
Реализовывать бизнес логику на скриптах - не является ни грамотным, ни оптимальным способом.
Для подобных вещей использутся Identity Managers, один из самых используемых сейчас это Keycloak
У 1с для выгрузок есть 1с:Шина
Alexey Dmitriev, Ну так просто синхронизироваться c AD - этого мало. exchange это не просто свойства юзера в AD
А хотя бы скрипты умеет запускать если надо или в очередь какую-нибудь стучаться ?
На первый взгляд, это всё же больше для sso, чем для создания учёток везде где надо. Хотя пока не смотрел пристально.
Maximum_IT, а нельзя в 1С у сотрудников ставить признак "уволен", "новый" и т.д. и вытаскивать по этим признакам? потом новым пользователям признак обнулять...
Я встречал в своей практике и чисто на скриптах и как отдельное приложение на C# (с возможностью запуска всё тех же скриптов для работы с exchange)
Мой вариант ответа - можно. Но скрипт будет большой и сложный.
С учётом необходимости создавать учётки там, где они сами не создаются, тот или иной вид скриптов всё равно понадобится.
Делать это средствами только скриптов, или использовать, например, какие-то прослойки в виде очередей или серверов sso - на ваш вкус и опыт писания/настройки всего промежуточного.
Только, на мой взгляд, БД здесь лишний элемент. Точнее, БД имеет смысл, только если запросы в AD для вас окажутся слишком дорогими (при большом количестве сотрудников)