понедельник, 19 марта 2012 г.

Создание учётной записи в Active Directory и почтового ящика пользователя в Microsoft Exchange с помощью FIM 2010

Добрый день всем.

Сегодня хочу поделиться информацией о том, как создать учётную запись пользователя в AD DS и почтовый ящик пользователя в Microsoft Exchange 2010 SP1  с помощью Forefront Identity Manager 2010.


Общие сведения 

Данный функционал реализуется с помощью встроенной библиотеки GALSync.dll.



  
Сразу хочу заметить, что в варианте out of box Forefront Identity Manager 2010 не умеет создавать учётные записи пользователей в Lync 2010, рекомендую ознакомиться с веткой форума TechNet http://social.technet.microsoft.com/Forums/en/ilm2/thread/c3f94371-6cf8-4992-9dc6-303de151b123, как с возможным решением.

Немного о рассматриваемом сценарии

Наша задача: это реализация единонаправленного автоматического создания пользователя с предустановленным паролем в Active Directory с почтовым ящиком в Microsoft Exchange.

При этом портал FIM 2010 доступен так же и через интернет, будучи опубликованным на TMG 2010 по протоколу HTTPS.

Данная статья это только описание части решения, вторая часть подразумевает импорт учётных записей в FIM 2010 из Delimited text file формата UTF-8 выгруженного из 3-й системы.

Происходит это следующим образом:
  • Первым действием создаётся учётная запись пользователя с определёными параметрами в Active Directory
  • Вторым действием с помощью коннектора GALSync.dll запускается Powershell script создающий почтовый ящик для существующего пользователя в Microsoft Exchange в соответсвтии с указанной политикиой и базой данных.



Подготовка среды

В данном сценарии мы считаем что  FIM 2010 и все необходимые сервисные учётные записи созданы и все сервисы уже развёрнуты. Подробнее о планировании и установке FIM 2010 http://technet.microsoft.com/en-us/library/ee808045(v=ws.10).aspx

Нам понадобится выполнить несколько действий, что огранизовать этот процесс:


В консоли управления FIM Synchronization Service
  • Создать агент управления для базы FIM 2010
  • Создать агент управления для AD DS и Exchange

На портале самообслуживания FIM
  • Создать правило синхронизации
  • Создать рабочий процесс
  • Создать политику управления
Выполнить требования к  безопасности учётных записей:

  • Учётная запись агента для Active Directory Domain Services должна входить в группу Recipients Management минимум в моём понимании, т.к. это даёт необходимые привилегии для создания объекта пользователь и почтовый ящик в Exchange 2010 (в данном случае я использовал Oragamization Management)
  • Учётная запись агента для Active Directory Domain Services должна входить в группу Account Operators
  • Учётная запись агента для Active Directory Domain Services должна иметь полный доступ к контейнеру AD DS, в котором планируется создание учётных записей (в нашем сценарии это контейнер: FIMObjects
Требования к WIN-RM на Microsoft Exchange

  • Winrm должен быть настроен и запущен
  • Необходимо реализовать правила доступа Windows Firewall для разрешения удалённого управления



Создание агента управления FIM MA

1. Запустить консоль FIM Synchronization Service
2. Выбрать раздел Management Agents
3. В правой части окна в разделе Actions выберите пункт Create
4. В открывшемся окне укажите имя агента: FIMMA
5. В выпадающем списке Management Agent for  выберите FIM Service Management Agent и нажмите Next
6. В окне Connect to Database введите следующие настройки



Обращаю Ваше внимание на то, что учётная запись управления FimSvcMGTAcc у Вас может называеть по другому.
7. На странице Select object types укажите тип Person и нажмите Next
8. На странице Configure  Connector Filter нажмите Next
9. На странице Configure Object Type Mappings напротив Datasource Object Type класса Person в разделе Mateverse Object Type установите значение person и нажмите Next
10. В разделе Configure Attribute Flow создайте конфигурацию  импорта Datasource свойств класса Person в свойства класса person в Metaverse, согласно скриншоту ниже и нажмите Next



Вас интересуют строки помеченные желтым маркером. В разделе Flow Direction должен быть установлен  флажок Import, в резделе Mapping type должен быть установлен флажок Direct

Так же хочу заметить, что предварительно лучше составить таблицу соотношения наименовай свойств классов и опробовать передачу  данных из источника данных в metaverse и далее в конечную систему с 1 - 2 объектами. Наименование полей свойств классов  не всегда совпадает в начальной системе, FIM и конечной системе. Это поможет сократить время при разборе ошибок импорта или экспорта.

11. Выбираем Make them disconnectors и нажимаем Next
12.  Завершаем конфигурирование нажимаем OK


Создание агента управления для Active Directory

1. Запустить консоль FIM Synchronization Service
2. Выбрать раздел Management Agents
3. В правой части окна в разделе Actions выберите пункт Create
4. В открывшемся окне укажите имя агента: Exchange (я решил назвать так, но вы можете и по другому)
5. В выпадающем списке Management Agent for выберите Active Directory Domain Services и нажмите Next
6. Введите имя сервисной учётной записи: ADMA, укажите FQDN имя домена и NetBios имя домена, как указано на рисунке ниже и нажмите Next




7. На странице Configure Directory Partitions отметьте галочкой раздел AD DS, нажмите Containers и установите галочку только на контейнер FIMObjects, как показано на рисунке ниже, затем нажмите OK и Next


8 На странице Configure Provisioning Hierarchy нажмите Next
9. На странице Select object Attributes установите галочку в поле User
10. На странице Select Attributes выберите следующие аттрибуты:
  • cn
  • displayName
  • employeeID
  • givenName
  • homeMDB
  • l
  • mail
  • mailNickname
  • mDBUseDefaults
  • msExchHomeServerName
  • msExchRBACPolicyLink
  • postalAddress
  • sAMAccountName
  • sn
  • streetAddress
  • unicodePwd
  • userAccountControl
  • userPrincipalName
11. Нажмите Next 4 раза
12. На странице Configure Deprovisioning выберите Determine with a rules extentions и нажмите Next
13. Настройте свойства на странице Configure Extentions, как показано на скриншоте.
Значение URI:http://%CasServerName/powershell и завершите операцию настройки нажав ОК.



Создание правил синхронизации

1. Заходим на портал самообслуживания FIM по адресу https://srv-fim/identitymanagement, выберите Syncronization Rules


2. Нажмите кнопку New



3. Введите имя правила и выберите направления Outbound, затем нажмите Next



 4. Укажите поля связей на странице Relationship, укажите Create resource in external system



5. Пропустите страницу Workflow Parameters нажав Next и на странице Outbound attribute Flow укажите зависимости между свойствами классов, а так же правила формирования их значений, так, как показано на двух скриншотах ниже


Обращаю ваше внимание, что параметры msExchHomeServerName, homeMDB - это параметры класса данных string. То, что вы в них вводите должно иметь следующий вид (пример):

homeMDB: CN=Mailbox Database 1627792968,CN=Databases,CN=Exchange Administrative Group (FYDIBOHF23SPDLT),CN=Administrative Groups,CN=MAIL-ORG,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=MSFT,DC=LOCAL
msExchHomeServerName: /o=MSFT/ou=Exchange Administrative Group (FYDIBOHF23SPDLT)/cn=Configuration/cn=Servers/cn=MZ-EXCH


Для справки: для организации процесса создания почтового ящика пользователю с помощью FIM необходимо, чтобы у пользователя были следующие параметры
  • dn
  • mailNickname
  • homeMDB
  • msExchHomeServerName


Укажите свойство Initials Flow Only для параметров dn, unicodePwd,userAccountControl

ПРИМЕЧАНИЕ! Характер установленных зависимостей свойств классов, а так же их набор, продиктованы тем, что я описываю конкретный случай. В ваших задачах эти зависимости могут меняться.


Создание рабочего процесса

1. Заходим на портал самообслуживания FIM по адресу https://srv-fim/identitymanagement, выберите Workflows
2. Нажмите New
3. Введите название рабочего процесса Test WF, выберите Action и нажмите Next
4. Выберите Synchronization rule activity, выберите Select и укажите политику Test Exchange
5. Выберите Add и нажмите Save
6. Нажмите Next и Submit

Создание политики управления
1. Заходим на портал самообслуживания FIM по адресу https://srv-fim/identitymanagement, выберите Management Policy Rules
2. Нажмите New
3. Введите имя Test MPs и выберите Set tratnsition и нажмите Next
4. На странице Transition Definition указываем группу  All people в окне Transition Set и выбираем пункт Transition In и нажимаем Next
5. На странице Policy Workflows выбираем Test WF и завершаем конфигурирование нажав Next и Submit.
Включение Enable metaverse rules extention,  Enable Synchronization Rules provisioning, run this extention in a separate process

1. Запустить консоль FIM Synchronization Service
2. Выбираем Tools, Options и конфигурируем в соответствии со скриншотом


3. Нажимаем ОК


Создание профилей запуска для агентов управления

1. Запустить консоль FIM Synchronization Service
2. Выбрать раздел Management Agents
3. Выберите агент управления правой кнопкой мыши
4. Выберите пункт Configure Run Profiles
5. Нажмите Add profile
6. Введите имя профиля и нажмите Next
7. Укажите один из  типов синхронизации и нажмите Next
  •  Full import
  •  Full synchronization
  • Delta import
  • Delta synchronization
  • Export
8. Повторите действия  для каждого профиля запуска


Инициализация агента управления FIMMA

Теперь возможно провести провести инициализацию агента управления FIMMA.
Для этого выполните последовательно с помощью профилей запуска выполните в следующем порядке шаги:
  • Full import
  • Full synchronization
  • Export
  • Delta import
  • Export
  • Delta import
Все действия должны пройти без ошибок. Если оные появились необходимо их устранить


Перенос учётной записи в AD DS и Exchange 2010

Теперь мы готовы к переносу учётных записей из FIM 2010 в AD DS и созданию почтового ящика пользователя в MIcrosoft Exchange 2010.

1. Заходим на портал самообслуживания FIM по адресу https://srv-fim/identitymanagement, выбираем вкладку Users и нажимаем New
2. Вводим данные пользователя, как показанно на скриншотах ниже  и нажимаем Next на каждой странице






3. Нажимаем Submit и Finish

4. Вот он наш тестовый пользователей

5. Запустить консоль FIM Synchronization Service
6. Выбрать раздел Management Agents
7. Выберите агент управления FIMMA правой кнопкой мыши
8. Выберите пункт Configure Run Profiles
9. Запустите последовательно:
  • Delta import
  • Delta Sync
10. Убедитесь, что тестовая учётная запись попала в metaverse


11. Запустите Full syncronization у агента управления Exchange
12. Убедитесь, что тестовый пользователь синхронизирован из metaverse

13. Выберите у агента управления Exchange профиль запуска Export и убедитесь, что тестовый пользователь успешно экспортирован


14. Убедимся, что пользователь у нас успешно появился в ADDS, а так же получил почтовый ящик на Exchange Server 2010 SP1