| 
            
              
              
              
                | 
  
 | ЗАО «Компания «ИнтерТраст»
 
 Россия, 125319,
 
 г. Москва, ул. Усиевича, 3
 
 тел.: (495) 956-79-28
 
 www.intertrust.ru
 
 
 |  
 
  1Инструкция по настройке модуля SSO для Company Media 4.2.xСодержание
 
 
            1 Инструкция по настройке модуля SSO для Company Media 4.2.x 1
 
 1. Общие положения 3
 
 2. Требования к инфраструктуре 3
 
 3. Перечень работ по настройке SSO 5
 
 
 
 
            
               Общие положения Данная инструкция описывает установку и настройку службы общего входа SSO в CompanyMedia версии 4.1.
 
 AD – служба каталога Microsoft Active Directory
 DD – служба каталога IBM Domino Directory
 SSO – служба общего входа Single sign-on
 
 
            
               Требования к инфраструктуре
                
                   Требования к Версиям используемого ПО ОС контроллера домена: Windows Server 2008
 
 ОС сервера СМ4: Windows Server 2008
 
 Версия Domino на сервере СМ4: Domino 8.5.3 не ниже FP1
 
 Поддерживаемые бразуеры: IE
 8,9,10,11 Google Chrome, Mozilla Firefox
 
            
              
                 Требования к контроллеру Домена AD 
            Режим работы контроллера AD: Windows Server 2008
 
Включена служба ОС Windows Kerberos Key Distribution Center
 
 
            
              
                 Требования к уровню Доступа в ОС 
            Доступ в ОС Windows: администратор домена AD (для выполнения разовых настроек:создания ключей служб, предоставления доступа к локальным машинам)
 
Доступ в Domino: администратор с full-access, доступ к адресной книге для редактирования настроек веб-сайтов, SSO
 
Доступ в ОС серверов СМ4: доступ на уровне локального администратора, доступ на запись в каталог C:\windows (%system%)
 
 
            
              
                 Требования к рабочим серверам Cm4: 
            Сервер СМ4 введен в домен AD, для которого настраивается SSO
 
A-запись в DNS: имя хоста, для которого выполняются команды ниже должно являться A-записью в DNS (не cname)
 
Для каждой учетной записи из Active Directory:
 должна быть создана соответствующая учетная запись в каталоге Domino Directory,
 в поле krbPrincipalName в DD указано доменное имя учетной записи из Active Directory
 
Выключена настройка «Load Internet configurations from Server\Internet Sites documents»
 
Создан общий документ Configuration Settings ( с параметром «*» )
 
 
            
               Перечень работ по настройке SSO Для включения SSO необходимо выполнить следующие настройки:
 
 
 
            Настройки в службе каталога Active Directory: регистрация сервисных учетных записей, создание ключей служб, предоставление прав доступа на серверы СМ4
 
Настройка ОС сервера Company Media
 
Настройки сервера Domino
 
Настройки сервера приложений Tomcat
 
Настройка веб-браузеров на клиентских рабочих местах
 
 
 
 
            
              
                 нАстройка служб каталога Active Directory .
 
 
            
              
                 Регистрация сервисных учетных записей Создать сервисные учетные записи в домене AD для каждого сервера СМ4 с SSO в контейнере «Users»
 
 Рекомендуемый формат имени: web.<dominoname>, где - имя сервера Domino, на котором будет настроен SSO
 
 Пример: web.cmt1@vtc.local , web.cmt2@vtc.local
 
 Важно: сервисные учетные записи регистрировать только в стандартном контейнере «Users» каталога Ad, иначе возникнут ошибки при выполнении следующих шагов.
 
 
            
              
                 Настройка созданных учетных записей 
            Установить свойства созданных в п.1 учетных записей с помощью оснастки Active Directory Users and Computers или ADSIEdit.
 
 "+" отмечены флаги, к-е необходимо включить:
 +user cannot change password
 +password never expired
 +шифрование AES128
 
 
            Установить новые пароли для созданных учетных записей,
 например KrbPass456
 
 Важно: тот же пароль небоходимо использовать при генерации ключей SSO в п.3.1.3
 
 Примечание: шаг обязателен, требуется для применения п.3.1.2.
 
 
            
              
                 Создание ключей службы Domino и Tomcat
                  
                     Создание ключей .keytab 
            запустить cmd.exe интерпретатор командной строки
 
выполнить команду создания ключей ktpass (см. п .5 ) для настраиваемых учетных записей, серверов и домена.
 Пример выполнения команды для учетной записи web.cmt1и сервера cmt1.vtc.local
 в домене VTC.LOCAL :
 
 ktpass -princ HTTP/cmt1.vtc.local@VTC.LOCAL -mapuser web.cmt1-pass KrbPass456 -crypto all -ptype KRB5_NT_PRINCIPAL -out http-cmt1.keytab
 
 
            сохранить полученные ключи (файлы *.keytab )
 
сохранить вывод консоли в текстовый файл
 
 
 
  3.1.3.2. описание параметров команды ktpass:ktpass -princ HTTP/<sso.hostname>@<AD.DOMAIN> -mapuser <username> -pass <password> -crypto all -ptype KRB5_NT_PRINCIPAL -out <filename> , где:
 таблица 1
 
 
            
            
            
            
            
              | №
 
 | Наименование параметра
 
 | Описание
 
 | Пример заполнения
 
 |  
              | 1
 
 | sso.hostname
 
 | Имя сервера СМ4
 
 | cmt1.vtc.local
 
 |  
              | 2
 
 | AD.Domain
 
 | Имя домена AD, заглавными буквами
 
 | VTC.LOCAL
 
 |  
              | 3
 
 | username
 
 | Имя сервисной учетной записи,
 без доменной части
 
 | web.cmt1
 
 |  
              | 4
 
 | password
 
 | Пароль ключа
 
 | KrbPass456
 
 |  
              | 5
 
 | filename
 
 | Имя создаваемого файла ключей
 
 | http-cmt1.keytab
 
 |  
            
              
                 Предоставление прав доступа на серверы СМ4 созданным учетным записям 
            На сервере CM4 добавить созданные учетные записи в локальных администраторов
 
Настроить запуск служб "Tomcat", "Lotus Domino Server..." и "Lotus Domino Diagnostics..." от имени сервисной учетной записи, например "web.cmt1".
 
При выборе учетной записи будет подставлена запись формата HTTP\@vtc.local. Заменить на доменное имя пользователя: web.cmt1@vtc.local
 
убедиться, что появилось сообщение "the account has been granted the logon as a service right"
 
перезапустить службы Domino и Tomcat на сервере СМ4
 
 
            
              
                 Настройка ОС сервера CompanyMedia 
            Создать файл с именем krb5.ini
 
 
 Содержимое файла:
 
 содержимое файла krb5.ini для домена vtc.local и контроллера домена pdc1.vtc.local
 (заменить параметры на имя рабочего домена и имя хоста контроллера домена)
 
 Пример для домена vtc.local:
 [libdefaults]
 
 default_realm = VTC.LOCAL
 
 permitted_enctypes = aes128-cts rc4-hmac des3-cbc-sha1 arcfour-hmac-md5 des-cbc-md5 des-cbc-crc
 
 default_tgs_enctypes = aes128-cts rc4-hmac des3-cbc-sha1 arcfour-hmac-md5 des-cbc-md5 des-cbc-crc
 
 default_tkt_enctypes = aes128-cts rc4-hmac des3-cbc-sha1 arcfour-hmac-md5 des-cbc-md5 des-cbc-crc
 ticket_lifetime = 600
 
 kdc_timesync = 1
 
 ccache_type = 4
 [realms]
 
 FSINTST.LOCAL = {
 
 kdc = pdc1.vtc.local
 
 admin_server = pdc1.vtc.local
 
 default_domain = VTC.LOCAL
 
 }
 [domain_realm]
 
 .vtc.local = VTC.LOCAL
 
 vtc.local = VTC.LOCAL
 [appdefaults]
 autologin = true
 
 forward = true
 
 forwardable = true
 
 encrypt = true
 
 
 
 
            Скопировать созданный файл krb5.ini на сервер СМ4 в каталог Windows (C:\windows)
 
 
 
 
 
 
 
 
 
            В документе "Configuration Settings" для всех серверов (*) на вкладке LDAP включить настройку:
 
 
 
 
 (отвечает за формат привязки к LDAP, разрешает использование формата cn=username)
 
 
 
            Проверить с помощью команды ldapsearch поиск из LDAP Domino.
 Поиск должен возвращать все учетные записи пользователей Domino:
 C:\Lotus\Notes>ldapsearch.exe -h 169.254.52.1 -D "cn=ldapuser,o=intertrust" -w "password456" -b "o=Intertrust" "(cn=*)"
 
 
 
 
 
 
 
 
            отключить настройку в док-те сервера load configuration from internet sites
 
настроить host name на вкладке HTTP : cma01.vtc.local
 
создать конфигурацию SSO для сервер-док-та аналогично скриншоту:
 
 
 Configuration Name: произвольно
 
 Organization: не заполнять
 
 DNS Domain: .vtc.local
 
 Domino Server Names: CMT01/VTC
 
 Windows single sign-on integration : Enabled
 рис. 3.1
 
 
  
 
            Создать ключи SSO для созданной конфигурации: нажать кнопку «Create WebSSO keys»
 
Настроить вкладку Domino Web Engine аналогично рис.3.2 (Session Authentication: Multiple Servers)
 
Выбрать полученный документ LTPA Token в п Web SSO Configuration
 
(Проверить, создалась ли настройка LTPA Token можно в АК Domino, вид $WebSSOConfig)
 
 
 рис. 3.2
 
 
  
 
 
            Для отладки в notes.ini сервера Domino установить переменные (выключить после успешной проверки)
 
 
 DEBUG_HTTP_SERVER_SPNEGO=5
 
 DEBUG_LDAP=7
 
 DEBUG_SSO_TRACE_LEVEL=2
 
 WEBAUTH_VERBOSE_TRACE=1
 
 
 
            Добавить переменную в notes.ini сервера
 
 WIDE_SEARCH_FOR_KERBEROS_NAMES=1
 
 
 
            Создать полнотекстовый индекс для АК Домино.
 
 
 
 
 
            
              
                 Настройка сервера приложений Tomcat
                  
                     Копирование ключей *.keytab в каталог lib Скопировать файл *.keytab, полученные в пп 3.1.3 в папку tomcat\lib
 
 
            
              
                 Установка библиотек для поддержки русских имен пользователей (в поле user name) Распаковать из cmjrest.war файла или извлечь из папки /work в /endorsed
 
 файлы с именем:
 icu4j-50.1.1-RELEASE.jar
 icu4j-charset-50.1.1-RELEASE.jar
 
 
            
              
                 Настройка файла cmj.properties В файле cmj.properties заполнить все поля секции cmj.auth.*
 
 Пример заполнения для домена vtc.local:
 
 cmj.auth.profile=kerberos
 
 cmj.auth.kerberos.ses.servicePrincipal=HTTP/cmt1.vtc.local
 
 cmj.auth.kerberos.ses.keyTabLocation=classpath:http-cmt1.keytab
 
 cmj.auth.kerberos.ses.debug=true
 
 cmj.auth.kerberos.domino.ldapUrl=ldap://169.254.52.8:389
 
 cmj.auth.kerberos.domino.base=
 
 cmj.auth.kerberos.domino.userDn=ldapuser
 
 cmj.auth.kerberos.domino.userPassword=Password456
 
 cmj.auth.kerberos.domino.pooled=true
 
 cmj.auth.kerberos.ses.useCanonicalName=true
 
 cmj.auth.kerberos.ses.webSSOConfigName=LtpaToken
 
 Таблица 2. Подробное описание параметров аутентификации в cmj.properties:
 
 
            
            
            
            
            
              | №
 
 | Наименование параметра
 
 | Заполнение
 
 | Описание
 
 |  
              | 1
 
 | cmj.auth.profile
 
 | kerberos
 
 | влючить SSO
 
 |  
              | 2
 
 | cmj.auth.kerberos.ses.servicePrincipal
 
 | HTTP/cm4demo01.fsintst.local
 
 | SPN-имя для хоста, где работает домино
 
 |  
              | 3
 
 | cmj.auth.kerberos.ses.keyTabLocation
 
 | classpath:http-cmt1.keytab
 
 | путь и имя сгенерированного keytab-файла.
 в указанном ниже варианте - файл находится в /lib
 
 |  
              | 4
 
 | cmj.auth.kerberos.ses.debug
 
 | true
 
 | вывод более подробной информации о процессе соединения
 
 |  
              | 5
 
 | cmj.auth.kerberos.domino.ldapUrl
 
 | ldap://169.254.52.8:389
 
 | url-адрес, где находится Domino/Ldap-сервис (резерв.)
 
 |  
              | 6
 
 | cmj.auth.kerberos.domino.base
 
 | 
 
 
 | "база" для поиска в LDAP. может быть пустой
 
 |  
              | 7
 
 | cmj.auth.kerberos.domino.userDn
 
 | LdapUser
 
 | Distinguished-имя (логин), под которым tomcat-будет устанавливать соединение с Domino
 
 |  
              | 8
 
 | cmj.auth.kerberos.domino.userPassword
 
 | Password456
 
 | пароль для userDn
 
 |  
              | 9
 
 | cmj.auth.kerberos.domino.pooled
 
 | true
 
 | использовать пул соединений. повышает производительность
 
 |  
              | 10
 
 | cmj.auth.kerberos.ses.useCanonicalName
 
 | true
 
 | 
 
 
 |  
              | 11
 
 | cmj.auth.kerberos.ses.webSSOConfigName
 
 | LtpaToken
 
 | 
 
 
 |  
 
 
            Скопировать файл log4j.xml в папку /lib. Содержимое файла указано в приложении 1.
 
Исправить путь к файлу журналирования в скопированном файле:
 
 C:/tomcat/logs/cmj4.log"/>
 
 
 
 
            
              
                 Настройка веб-браузеров на клиентских рабочих месах 
 
 
            
              
                 Настройка браузеров Internet Explorer, Google Chrome Обеспечить выполнение следующих действий вручную или с помощью политик AD:
 
 
            сервис/свойства обозревателя/безопасность/"местная интрасеть"
 
нажать узла/дополнительно/добавить имя хоста сервера СМ4, например: "http://cmt1.vtc.local/" и выключить требование https
 
нажать другой: проверка подлинности пользователя/вход выбрать "автоматический вход в сеть только в зоне интрасети"
 
 
            
              
                 Настройка браузеров Internet Explorer, Google Chrome 
            В строке браузера ввести : about:config
 
Открыть параметр «network.negotiate-auth.trusted-uris»
 
Ввести имя хоста сервера СМ4
 
 
            
              
                 Проверка работоспособности настроек 
            Выбрать учетную запись в Active Directory для тестов, пример: t.lapina@vtc.local
 
В Domino Directory выбрать или создать тестового пользователя в формате:
 
 Настроить в СМ4
 first name : Татьяна Николаевна
 
 last name : Лапина
 
 logon : t.lapina
 
 
 
            в поле krbPrinicpalName записать UPN уч.записи ( формат t.lapina@vtc.local )
 
В БД делопроизводства выбрать или создать РКК, доступный тестируемому пользователю
 
Записать UNID документа и ReplicaID БД, в к-й содержится документ
 
перейти по URL вида: http://cmt01.vtc.local/cmjrest/api/ids/44257A620030FB24:C6076C28B7A4C5FF44257C010039B61A
 
ожидаемый результат - появление диалога сохранения файла без запроса пароля
 
 определения:
 
 Правила формирования ссылки для проверки:
 http://<hostname>/cmjrest/api/ids/<repldbid>:<rkkunid>
 где :
 - имя хоста сервера Tomcat
 
 <repldbid> - реплика БД делопроизводства
 - UNID РКК в БД делопроизводства
 
 Приложение 1. Файл Log4j.xml
 
 
 
 
 http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/PatternLayout.html
 
 value="%p %c: %m%n"
 
 %p - priority - "info"
 
 %c - category (class) - "ru.intertrust.cmj.fdnd.temp.ecmSync.SyncModel"
 
 %m - message
 
 %n - EOL
 
 value="%p %m%n"
 
 -->
 
 
 -->
 
 
 
 
 
 
 
 
 -->
 
 -->
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 -->
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 Корневой logger WARN -->
 
 
 
 -->
 
 
 
 
 
 
 
 
 
            Версия от 03.07.2014
 
 
 |