Use active directory при установке ubuntu что это
[Active Directory] Ubuntu в домене Windows AD
Некоторое время назад на работе достался мне для работы ноутбук HP ProBook 6460b. Ну и пришла в голову идея поставить на него вместо надоевшей Windows 7 Pro давно понравившуюся мне Ubuntu 14.04 Trusty LTS. Выбор операционной системы связан с тем, что Ubuntu я использую на домашнем ноутбуке и мне захотелось иметь такую же систему на рабочем компьютере. Потому, что постоянное переключение между ОСями дома и на работе быстро надоело мне и я решился на установку Ubuntu на рабочем ноуте.
Начну по порядку#
Процесс установки Убунты на ноутбук не буду пересказывать потому, что не вижу в этом смысла из-за большого количества таких мануалов на просторах интернета. Скажу только то, что устанавливал с флешки, а образ на флешку писал на рабочем ноутбуке под Windows 7 Pro с помощью программы Rufus. Хватит про установку, перейдем к процессу введения в домен.
При вводе в домен Windows я пользовался стандартной инструкцией по вводу в домен. В процессе ввода в домен возникали проблемы самого разного характера (в основном связанные с моей невнимательностью и легкой кривизной рук 🙂 ). Да инструкция на русском языке есть и она довольно хороша, но я все же пользовался не только этой инструкцией, но и другими подсказками с прочих сайтов и форумов. Поэтому я решил собрать из всех одну свою.
Настройка DNS#
Теперь необходимо проверить файл /etc/hostname и убедиться в том, что мы правильно задали имя нашего ноутбука.
Кроме всего прочего необходимо отредактировать файл /etc/hosts так, чтобы в нем была запись с полным доменным именем и обязательно с коротким именем. У меня получился такой формат:
Сразу необходимо проверить, что наш контроллер домена пингуется нормально по короткому и по полному доменному именам:
Не обязательно конечно, но как говорится в инструкции “желательно” при внесении каких-либо изменений делать перезагрузку. Лично я так и делал.
Настройка синхронизации времени#
Тут собственно говоря ничего сложного! Я просто единожды выполнил команду:
и забыл про это дело. Другие варианты развития я не вижу смысла освещать в статье т.к. они мне не понадобились.
Собственно переходим к самому основному: настройка авторизации через Kerberos
Это конечно далеко не все, что настраивается но уже сейчас возможно проверить способность авторизации в домене. Для этого достаточно выполнить команду:
Вместо vasya и DOMAIN.RU вы так же указываете свои имя пользователя и домен. Команда так же регистрозависима! Если вы после выполнения данной команды получаете завпрос на ввод пароля от указанного пользователя и не получаете никаких ошибок, значит у вас все прекрасно. В противном случае еще раз перепроверьте все измененные вами файлы на правильность (внимательно изменяйте все ваши файлы).
Убедиться в том, что билет получен, можно с помощью команды:
Будем считать, что авторизация вы настроили и билет получен. Теперь настроим вход в домен.
Настройка Samba и вход в домен#
Теперь необходимо проверить внесенные изменения на правильность (точнее себя на внимательность и руки на кривость 🙂 ) следующей командой:
В случае правильного изменения файла /etc/samba/smb.conf вы увидите примерно следующее:
Данное сообщение известит вас о том, что вы правильно внесли все изменения и настала пора наконец-таки осуществить вход в домен. Для этого необходимо выполнить следующую команду:
В случае успешного входа вы увидите на экране примерно следующее:
Я снова не стану описывать все возможные ошибки, потому что и ежу понятно, что если появились ошибки значит ты сделал что-то не так. Поэтому скажу только одно: RTFM friend!
На данном этапе вы можете установить себе smbclient :
и проверить доступность ресурсов, хотя бы, на доменконтроллере:
Вы должны будете увидеть список доступных ресурсов на доменконтроллере
Переходим к настройке Winbin#
Winbind позволяет спроецировать всех пользователей и все группы AD в вашу Linux систему, присвоив им ID из заданного диапазона. Таким образом вы сможете назначать пользователей домена владельцами папок и файлов на вашем компьютере и выполнять любые другие операции, завязанные на пользователей и группы.
Строки с параметрами idmap config указаны с новыми параметрами не характерными для старых версий Samba, поэтому на данном этапе будьте внимательнее. Старый формат этих строк можно посмотреть в официальной инструкции по вводу в домен.
После перезапуска проверьте, что Winbind установил доверительные отношения с AD командой
А так же, что Winbind увидел пользователей и группы из AD командами:
Итак, Winbind работает, однако в систему он еще не интегрировал.
Добавление Winbind в качестве источника пользователей и групп#
Для того, чтобы ваша Ubuntu прозрачно работала с пользователями домена, в частности, чтобы вы могли назначать пользователей домена владельцами папок и файлов, необходимо указать Ubuntu использовать Winbind как дополнительный источник информации о пользователях и группах.
Для этого измените две строчки в файле /etc/nsswitch.conf :
добавив к ним в конце winbind :
Так же рекомендую привести строку hosts: в файле /etc/nsswitch.conf к виду:
Теперь можно проверить, что Ubuntu запрашивает у Winbind информацию о пользователях и группах выполнив по очереди следующие команды:
Авторизация в Ubuntu через пользователей домена#
Он-лайн авторизация#
Для он-лайн авторизации я лично подредактировал парочку файлов. Первый файл, который я редактировал это /etc/pam.d/common-session и добавил в него всего одну строчку:
На этом собственно говоря все готово! Перезагружаемся и входим под учетной записью доменного пользователя.
Офф-лайн авторизация#
Часто возникает ситуация, когда домен-контроллер недоступен по различным причинам — профилактика, отключение света или вы принесли ноутбук домой и хотите поработать. В этом случае для Winbind можно настроить кэширование учетных записей пользователей домена. Для этого необходимо сделать следующее. Добавьте в секцию [global] файла /etc/samba/smb.conf следующие строки:
Обычно этого достаточно. Если же возникают ошибки, то необходимо создать файл /etc/security/pam_winbind.conf со следующим содержанием:
Файл /etc/pam.d/gnome-screensaver в таком случае принимает вид:
А также изменяется файл /etc/pam.d/common-auth :
На этом вроде бы все 🙂
Вместо заключения#
Установка Контроллера Домена Active Directory на Ubuntu под управлением Samba
SAMBA это открытая реализация протокола SMB который предоставляет сервис файлов и печати для клиентов SMB / CIFS. Samba помогает в успешном взаимодействии по сети вашей системы Ubuntu с клиентами под Windows, обеспечивая тем самым и интеграции с общими сервисами для среды Windows. Эти услуги помогают обмену данными и информацией о компьютерах и пользователях, участвующих в сети, и могут быть классифицированы по трем основным категориям с точки зрения функциональности:
Сервис общих файлов и печати: Использует протокол Server Message Block (SMB) для облегчения обмена файлами, директориями, разделами, и работе печати через сеть.
Сервис Директорий: предоставляет жизненно важную информацию о компьютерах и пользователях сети с помощью Lightweight Directory Access Protocol (LDAP) и Microsoft Active Directory.
Аутентификация и доступ: устанавливает личность пользователя или компьютера в сети и определяет информацию, к которой компьютер или пользователь имеет право доступа, используя права доступа к файлам, групповых политик, а также службу аутентификации Kerberos.
В этой статье рассказывается как установить Active Directory Domain Controller под управлением Samba на Ubuntu 16.04. Samba как AD DC требует версию минимум 4.0.0. Настоятельно рекомендуется использовать последний стабильный релиз Samba который содержит исправление ошибок прошлых релизов и улучшение поддержки Microsoft Active Directory и дополнительные возможности.
Основное преимущество этого заключается в том, что нам не нужно устанавливать отдельный Kerberos KDC. Samba включает в себя AD совместимый KDC и предоставляет свою собственную реализацию LDAP для AD бекэнда.
Перед началом
Начнем по порядку. Изменяем настройки сервера согласно нашим трем пунктам выше.
1) Настройте ваш сервер на использование статичного IP. Отредактируйте файл /etc/network/interfaces на IP «96.126.107.141», имя контроллера домена «some-org.com» и другие детали:
# cat /etc/network/interfaces
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto eth0
iface eth0 inet static
address 96.126.107.141
netmask 255.255.255.0
network 96.126.107.0
broadcast 96.126.107.255
gateway 96.126.107.1
dns-nameservers 96.126.107.141 8.8.8.8
dns-search some-org.com
# This is an autoconfigured IPv6 interface
iface eth0 inet6 auto
Мы изменил iface eth0 inet dhcp на iface eth0 inet static и то что выделено жирным — это конфигурация сети.
2) Исправьте ваш файл resolv.conf — добавьте имя вашего контроллера домена.
# cat /etc/resolv.conf
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
# DO NOT EDIT THIS FILE BY HAND — YOUR CHANGES WILL BE OVERWRITTEN
nameserver 96.126.107.141
nameserver 8.8.8.8
nameserver 207.192.69.4
search some-org.com
3) Наконец — поправьте ваш /etc/hosts file и установите «ubuntu.some-org.com» как имя хоста:
# cat /etc/hosts
127.0.0.1 localhost
96.126.107.141 ubuntu.some-org.com ubuntu
# The following lines are desirable for IPv6 capable hosts
::1 localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
# echo ubuntu.some-org.com > /etc/hostname
# /etc/init.d/networking restart
[ ok ] Restarting networking (via systemctl): networking.service.
После изменение требуется перезапустить сеть.
Наконец, всё готово к установке пакетов.
Установка пакетов
Сначала требуется установить пакеты необходимые для установки нашего Domain controller Active directory.
# apt-get install git attr build-essential libacl1-dev libattr1-dev libblkid-dev libgnutls-dev libreadline-dev python-dev libpam0g-dev python-dnspython gdb pkg-config libpopt-dev libldap2-dev dnsutils libbsd-dev attr krb5-user docbook-xsl libcups2-dev acl ntp ntpdate winbind
При установке пакетов у вас спросят информацию о вашем kerberos. Вам требуется предоставить зону по умолчанию Kerberos и информацию об администраторе. Вы можете указать вашу зону по умолчанию как some-org.com и администрирующий сервер как имя хоста указанное выше.
Установка и настройка SAMBA
Вам потребуется скачать последние пакеты Samba с git репозитория в директории»samba4″.
После скачивания войдите в директорию «samba4» и настройте ваш пакет Samba.
#cd samba4
root@ubuntu:
#./configure —enable-debug —enable-selftest
root@ubuntu:
Сборка SAMBA достаточно продолжительна. После того как все будет сделано — проверьте версии SAMBA и клиента SMB — они должны совпадать.
Создание Samba Active Directory
Следующий шаг — инициализация вашего контроллера. Вы можете просто выполнить команду:
/samba4# /usr/local/samba/bin/samba-tool domain provision —realm=some-org.com —domain=some-org —adminpass=»password» —server-role=dc —dns-backend=SAMBA_INTERNAL
Looking up IPv4 addresses
Looking up IPv6 addresses
Setting up secrets.ldb
Setting up the registry
Setting up the privileges database
Setting up idmap db
Setting up SAM db
Setting up sam.ldb partitions and settings
Setting up sam.ldb rootDSE
Pre-loading the Samba 4 and AD schema
Adding DomainDN: DC=some-org,DC=com
Adding configuration container
Setting up sam.ldb schema
Setting up sam.ldb configuration data
Setting up display specifiers
Modifying display specifiers
Adding users container
Modifying users container
Adding computers container
Modifying computers container
Setting up sam.ldb data
Setting up well known security principals
Setting up sam.ldb users and groups
Setting up self join
Adding DNS accounts
Creating CN=MicrosoftDNS,CN=System,DC=some-org,DC=com
Creating DomainDnsZones and ForestDnsZones partitions
Populating DomainDnsZones and ForestDnsZones partitions
Setting up sam.ldb rootDSE marking as synchronized
Fixing provision GUIDs
A Kerberos configuration suitable for Samba 4 has been generated at /usr/local/samba/private/krb5.conf
Once the above files are installed, your Samba4 server will be ready to use
Server Role: active directory domain controller
Hostname: ubuntu
NetBIOS Domain: SOME-ORG
DNS Domain: some-org.com
DOMAIN SID: S-1-5-21-4019752003-3807572232-1148719748
Можно, конечно, использовать Bind9 как DNS, но SAMBA уже содержит в себе собственный полнофункциональный DNS сервер. Это указано командой SAMBA_INTERNAL. Далее нам требуется запустить сервис SAMBA после настройки контроллера.
Проверка вашего Samba Domain Controller
Мы можем запустить «smbclient», для проверки того, что Samba предоставляет стандартные AD DC общие директории «netlogon» и «sysvol», которые были указаны в «smb.conf» во время настройки.
Sharename Type Comment
——— —- ——-
print$ Disk Printer Drivers
IPC$ IPC IPC Service (ubuntu server (Samba, Ubuntu))
Domain=[WORKGROUP] OS=[Windows 6.1] Server=[Samba 4.3.11-Ubuntu]
Server Comment
——— ——-
UBUNTU ubuntu server (Samba, Ubuntu)
Workgroup Master
——— ——-
WORKGROUP UBUNTU
Для проверки работы аутентификации вы можете попробовать подключиться к общей директории «netlogon», используя аккаунт администратора домена, который был создан во время настройки.
47431 blocks of size 524288. 40274 blocks available
Настройка SAMBA_INTERNAL DNS
Работающий DNS имеет важное значение для правильной работы с Active Directory. Без правильных записей DNS, Kerberos не будет работать, что в свою очередь означает, что многие из основных функций так же не будут работать. Всегда стоит потратить некоторое дополнительное время, обеспечивая ваши настройки DNS, чтобы убедиться, что они должным образом сделаны.
Требуется изменить файл /etc/resolv.conf для внесения нашего имени домена:
#echo domain some-org.com >> /etc/resolv.conf
Ваш контроллер домена требуется сервер имен, который способен разрешить запросы в зоны Active Directory. Поскольку это ваш первый контроллер домена в лесу AD.
Так же требуется изменить файл «/usr/local/samba/etc/smb.conf» и добавить dns от google как dns_forwarder.
# cat /usr/local/samba/etc/smb.conf
# Global parameters
[global]
workgroup = SOME-ORG
realm = SOME-ORG.COM
netbios name = UBUNTU
server role = active directory domain controller
dns forwarder = 8.8.8.8
Тестирование DNS
Для проверки правильной работы DNSвыполните команды и проверьте правильность вывода:
Настройка Kerberos
Kerberos важная часть Active Directory. Обычно настраивается в файле /etc/krb5.conf. Во время инициализации рабочий пример будет создан в файле /usr/local/samba/share/setup/krb5.conf. Вы можете заменить файл krb5.conf на файл примера путем копирования или создания символьной ссылки.
Вам потребуется отредактировать этот файл и изменить default_realm на имя вашего DC:
# cat /etc/krb5.conf
[libdefaults]
default_realm = SOME-ORG.COM
dns_lookup_realm = false
dns_lookup_kdc = true
Имя realmдолжно быть указано ВЕРХНИМ РЕГИСТРОМ.
Тестирование Kerberos
Вы можете использовать kinit для тестирования вашей конфигурации Kerberos:
# kinit administrator@SOME-ORG.COM
Password for administrator@SOME-ORG.COM:
Warning: Your password will expire in 41 days on Sun 27 Nov 2016 09:31:07 AM UTC
Вам потребуется отключить срок действия пароля администратора active directory для того чтобы исключить проблемы аутентификации в будущем.
# /usr/local/samba/bin/samba-tool user setexpiry administrator —noexpiry
Expiry for user ‘administrator’ disabled.
Примечание: Всегда указывайте ваш realm в верхнем регистре. Для проверки работы Kerberos запустите:
Valid starting Expires Service principal
10/17/2016 04:19:31 10/17/2016 14:19:31 krbtgt/SOME-ORG.COM@SOME-ORG.COM
renew until 10/18/2016 04:19:19, Etype (skey, tkt): arcfour-hmac, arcfour-hmac
Создание директории пользователей
Создадим теперь директорию пользователей и установим правильные права и владельца.
# chmod g+s /Users
root@ubuntu:
# chown root:users /Users
Далее отредактируйте ваш файл конфигурации SMB «/usr/local/samba/etc/smb.conf»:
[Users]
directory_mode: parameter = 0700
read only = no
path = /Users
csc policy = documents
Настройка NTP
Active Directory требует синхронизации времени для всех участников домена чтобы Kerberosработал правильно. Строго рекомендуется использовать NTP на вашем контроллере домена для синхронизации времени. Эта документация предоставит вам всю необходимую информацию для настройки NTP on anна вашем контроллере домена AD.
Итоги
И, наконец, мы создали наш контроллер домена AD на сервере Ubuntu 16.04. Вы можете создать свой собственный Active Directory DC и обмениваться данными по сети. Главным преимуществом этой конфигурации является возможность централизовать учетные данные пользователей и компьютеров. Он имеет ряд и других преимуществ. Некоторые из ключевых преимуществ:
Это перевод статьи. Оригинал можно почитать здесь.
Linux в домене Active Directory
Перед администраторами иногда встают задачи интеграции Linux серверов и рабочих станций в среду домена Active Directory. Обычно требуется:
1. Предоставить доступ к сервисам на Linux сервере пользователям домена.
2. Пустить на Linux сервер администраторов под своими доменными учётными данными.
3. Настроить вход на Linux рабочую станцию для пользователей домена, причём желательно, чтобы они могли при этом вкусить все прелести SSO (Я, например, не очень люблю часто вводить свой длинный-предлинный пароль).
Обычно для предоставления Linux системе пользователей и групп из домена Active Directory используют winbind либо настраивают библиотеки nss для работы с контроллером домена Active Directory по LDAP протоколу. Но сегодня мы пойдём иным путём: будем использовать PowerBroker Identity Services (Продукт известен также под именем Likewise).
Установка.
Есть две версии продукта: Enterprise и Open. Мне для реализации моих задач хватило Open версии, поэтому всё написанное далее будет касаться её.
Получить Open версию можно на сайте производителя, но ссылку Вам предоставят в обмен на Ваше имя, название компании и e-mail.
Существуют 32-х и 64-х пакеты в форматах rpm и deb. (А также пакеты для OS X, AIX, FreeBSD, SOlaris, HP-UX)
Исходники (Open edition) доступны в git репозирории: git://source.pbis.beyondtrust.com/pbis.git
Я устанавливал PBIS на Debian Wheezy amd64:
Содержимое пакета устанавливается в /opt/pbis. Также в системе появляется новый runscript lwsmd, который собственно запускает агента PBIS.
В систему добавляется модуль PAM pap_lsass.so.
Утилиты (большей частью консольные), необходимые для функционирования PBIS, а также облегчающие жизнь администратору размещаются в /opt/pbis/bin
Ввод в домен.
Перед вводом в домен следует убедиться, что контроллеры домена доступы и доменные имена корректно разворачиваются в ip. (Иначе следует настроить resolv.conf)
Для ввода в домен предназначены две команды: /opt/pbis/bin/domainjoin-cli и /opt/pbis/bin/domainjoin-gui. Одна из них работает в командной строке, вторая использует libgtk для отображения графического интерфеса.
Для ввода в домен потребуется указать: имя домена, логин и пароль доменного пользователя с правами для ввода ПК в домен, контейнер для размещения объекта компьютера в домене — всё то же самое, что и при вводе в домен windows ПК.
После ввода в домен потребуется перезагрузка.
Обратите внимание — PBIS умеет работать с сайтами Active Directory. Клиент PBIS будет работать с контроллерами того сайта, в котором он находится!
После перезагрузки.
После перезагрузки и id, и getent выдадут вам пользователей и группы домена (национальные символы обрабатываются корректно. Пробелы заменяются на символ «^»).
В доменной DNS зоне появится запись с именем вашего ПК.
Не спешите входить от имени доменного пользователя. Сначала имеет смысл (но вовсе не обязательно) настроить PBIS.
Одно из отличий Enterprise версии — возможность управлять этими настройками через GPO.
Стоит обратить внимание на HomeDirPrefix, HomeDirTemplate.
Я также сразу задал «RequireMembershipOf» — только пользователи, члены групп или SID из этого списка могут авторизоваться на компьютеры.
Описание каждого параметра можно получить, например так:
Значение параметра устанавливается например так:
Обратите внимание — PBIS не использует атрибуты SFU либо иные другие атрибуты Acrive Directory для получения loginShell пользователя, а также его uid и gid.
loginShell для доменных пользователей задаётся в настройках PBIS, причём установка различных loginShell различным пользователям — возможна только в Enterprise версии.
uid формируется как хэш SID пользователя.
gid — как хэш SID primaryGroup пользователя.
Таким образом на двух ПК пользователь получит всегда одинаковые uid и gid.
Теперь можно входить в систему от имени доменного пользователя. После входа доменного пользователя обратите внимание на вывод klist — PBIS получит для пользователя необходимые билеты kerberos. После этого можно безпроблемно обращаться к ресурсам на windows ПК (Главное, чтобы используемое ПО поддерживало GSSAPI). Например: теперь я без дополнительных запросов паролей (и пароль мой нигде не сохранён!) открываю любые smb ресурсы домена в Dolphin. Также Firefox (при настройке network.negotiate-auth.trusted-uris) позволяет использовать SSO при доступе к Web-порталам с доменной авторизацией (естественно если SSO настроена на сервере)
А как же SSO при доступе к ресурсам на Linux ПК?
Можно и так! PBIS заполняет /etc/krb5.keytab и поддерживает его актуальным. Поэтому серверное ПО с поддержкой GSSAPI может быть сконфигурировано для SSO.
Например, для доступа к серверу по ssh, в конфигурационный файл /etc/ssh/sshd_config (путь в вашей системе может отличаться)
И при подключении указать доменное имя компьютера (присутствующее в его SPN — иначе билет kerberos не сможет быть выписан)
UsePAM yes
(PBIS предоставляет модуль для PAM в том числе)
Также логично будет добавить директиву «AllowGroups» и указать через пробел доменные группы, пользователям которых вы намерены дать доступ к ssh серверу.
На клиентском Linux ПК в конфигурацию клиента ssh достаточно включить:
Естественно на клиентском Linux компьютере должен быть настроен kerberos. Простейший способ выполнить это условие — так же ввести клиентский компьютер в домен и работать от имени доменного пользователя.
Если вы намереваетесь организовать таким образом ssh доступ администраторов к linux серверам — хорошей идеей будет запретить на них вход root по ssh и добавить linux-администраторов (а ещё лучше их доменную группу) в файл sudoers.
Это не единственные сценарии применения PBIS. если статья покажется Вам интересной — в следующей напишу как организовать samba файловый сервер в домене для доменных пользователей без winbind.
Дополнительную информацию по теме можно получить на форуме сообщества PowerBroker Identity Services: forum.beyondtrust.com
UPD 2 Пришла обратная связь от пользователя sdemon72. Возможно кому-то будет полезно.
Здравствуйте! Попробовал ваш рецепт на свежей linuxmint-18-mate-64bit, все получилось с некоторыми оговорками:
1. С получением программы через сайт у меня возникли сложности (не захотел писать реальный номер телефона, а бутафорский не прокатил — пришло письмо с сомнениями по его поводу), зато нашел репозиторий с наисвежайшими версиями: repo.pbis.beyondtrust.com/apt.html
2. При запуске программы выдает ошибки, чтобы их избежать, нужно перед запуском сделать следующее:
2.1. Установить ssh:
sudo apt-get install ssh
2.2. Поправить /etc/nsswitch.conf:
hosts: files dns mdns4_minimal [NOTFOUND=return]
(т.е. переносим dns с конца строки на вторую позицию)
2.3. Поправить /etc/NetworkManager/NetworkManager.conf:
#dns=dnsmasq
(т.е. комментируем эту строчку)
2.4. Перезапустить network-manager:
sudo service network-manager restart
После этого все сработало на ура! Буду очень благодарен, если внесете эти дополнения в статью, т.к. в поиске по сабжу она выпадает в первых строках. Оставлять комментарии я не могу (запрещает сайт), поэтому пишу вам лично.
Если интересно — история моих изысканий тут: linuxforum.ru/topic/40209
С уважением, Дмитрий
UPD 3: Почему бесплатную версию PBIS не получится применить в большой компании
В бесплатной версии работает только один алгоритм генерации UNIX iD (uid и gid) по SID доменного пользователя. Так вот он не обеспечивает уникальности
этих идентификаторов. Когда у вас очень старый домен или просто много пользователей очень высок риск, что два и более пользователя получат одинаковые идентификаторы в системе с OpenPBIS. В платной версии есть возможность выбора между алгоритмами генерации id, но она стоит значительно дороже аналогичного продукта от Quest Software ;(.