Начал было радоваться, что Intalio настроил на Microsoft Active Directory как тут появились новые "грабли". Дело в том, что RBACQueryService, который идет вместе с security-ws-service даже после обновления не работает как надо.
Суть проблемы в следующем (авторизация в UI-FW проходит без проблем):
Если нам надо получить аттрибуты пользователя с помощью операции RBACQueryService->GetUserProperties, то мы можем получить доступ непосредственно только к пользователям, которые находятся в security.ldap.user.base=ou=Users, а пользователи допустим находящиеся в ou=Users1,ou=Users видны для операции GetUserProperties уже не будут.
На данный момент ищу решение проблемы, как найду - обязательно выложу.
Эту статью Вы можете прочитать на новом блоге
среда, 31 марта 2010 г.
понедельник, 29 марта 2010 г.
Галактика вышла в массы
На днях обнаружил, что с недавнего времени ERP "Галактика" стала Open Source, закрытым осталось только ядро. Был очень удивлен, т.к. до недавнего времени данная "коробка" была полностью закрыта и стоила достаточно дорого. В отрытой версии доступно 15 лицензий (контурных или модульных - пока не знаю, покручу - расскажу). Причем доступен оченб богатый набор контуров/модулей. В скором времени выложу более подробную информацию.
Эту статью Вы можете прочитать на новом блоге
Эту статью Вы можете прочитать на новом блоге
Ярлыки:
Галактика,
ERP,
Open Source,
OpenSource
вторник, 23 марта 2010 г.
Настройка Intalio|Server для работы с Microsoft Active Directory
Как и обещал ранее, в данной статье я расскажу как настроить Intalio|Server для работы с Microsoft Active Directory.
Хоть и на официальном сайте Intalio говориться о том, что использование Microsoft AD возможно только в Enterprise версии в это верить особо не стоит. Для настройки нам понадобиться:
1. Внести изменения в ldap.properties
2. Обновить библиотеки security
Хоть и на официальном сайте Intalio говориться о том, что использование Microsoft AD возможно только в Enterprise версии в это верить особо не стоит. Для настройки нам понадобиться:
1. Внести изменения в ldap.properties
2. Обновить библиотеки security
1. Изменение настроек ldap.properties
Не удивляйтесь, что изменения в данном файле-настроек будут незначительные. Ниже приведен листинг ldap.properties:
#
# Configuration for Microsoft Active Directory
#
#
# The ULR for the LDAP Server
# The default is 'ldap=://localhost:389/'.
#
java.naming.provider.url=ldap://my.active.directory:389/
#
# The user of the LDAP Server connection
# For example: 'cn=Directory Manager'.
#
java.naming.security.principal=cn=Administrator,cn=users,dc=my,dc=active,dc=directory
#
# The credentials or password of the connection
# For example: 'password'.
#
java.naming.security.credentials=password
#
# Authetication method to connect to the LDAP Server
# The default is 'simple'.
#
java.naming.security.authentication=simple
#
# The supported realm(s) for the directory. The properties
# list name of the realm, and the base DN separated by a
# colon (':')
# For example: 'airrus:dc=airrus,dc=com'.
#
security.ldap.realm.0=intalio:dc=my,dc=active,dc=directory
#
# The ldap factory for the directory service
# The default is 'com.sun.jndi.ldap.LdapCtxFactory'.
# (without quotes, same below)
#
java.naming.factory.initial=com.sun.jndi.ldap.LdapCtxFactory
#
# The user's sub-context
# For example: 'ou=People', if people belongs to
# 'ou=People'
#
security.ldap.user.base=ou=Users
#
# The role or group's sub-context
# For example: 'ou=Roles', if roles belongs to
# 'ou=Roles'.
#
security.ldap.role.base=ou=Groups
#
# An LDAP attribute name that identifies an user
# For example: 'uid'.
#Данный аттрибут устанавливаем sAMAccountName, т.к. он является логином, cn нам
#не совсем подходит, т.к. там может содержаться русский язык, который при авторизации
#без "напильника" не принимается
security.ldap.user.id=sAMAccountName
#
# The LDAP attribute name that identifies a role
# For example: 'cn'.
#
security.ldap.role.id=cn
#
# The LDAP attribute name that references a role's ascendants
# If this attribute is specified, leave 'security.ldap.role.descen' out
# For example, if standard Role is used for access control, specify
# 'nsRoleDN' or a corresponding attribute of the particular server,
# and leave out security.ldap.role.descen properties.
#
#security.ldap.role.ascen=nsRoleDN
#
# The LDAP attribute name that references a role's descendants or members.
# If this attribute is specified, leave security.ldap.role.ascen out.
# For example, if Group is used for access control, specify 'member'
# or a corresponding attribute of the particular server, and leave out
# security.ldap.role.ascen
#
#security.ldap.role.descen=member
#
# The LDAP attribute name of an user object that references the user's roles
# For example, 'nsRoleDN'.
#
#security.ldap.user.roles=nsRoleDN
#
# The LDAP attribute name of a role (or group) that references the role's
# users.
# For example, 'uniquemember'.
#В AD роли находятся под аттрибутом member а не uniquemember
security.ldap.role.users=member
#
# The attribute name of an user's calculated effective roles.
# If Role is used, specify 'nsRole' or a corresponding attribute
# of the particular server. For Group with Active Directory,
# specify 'memberOf'. If unsure, leaves it out
#
#security.ldap.user.allroles=nsRole
#
# The permissions' sub-context
# For example, 'ou=Permission'.
#
security.ldap.perm.base=ou=Permission
#
# The LDAP attribute name of a role that references permission objects
# For example: 'permissions'.
#
security.ldap.role.perms=permission
#
# The LDAP attribute of permission object that reference the permission's
# roles or groupsOC
# For example: 'nsRoleDN'.
#
#security.ldap.perm.roles=nsRoleDN
#
# The LDAP attribute of permission object that references the permission's
# protected resources.
# For example: 'resource'.
#
security.ldap.perm.objects=resource
#
# The LDAP attribute name that identifies a permission object
# For example, 'cn'.
#
security.ldap.perm.id=cn
#
# The LDAP attributes names of an user's credentials or passwords
# of the user.
# Format: 'ldap property:alias'
# For example, 'userPassword:password'.
#
security.ldap.user.credential.0=userPassword:password
#security.ldap.user.credential.0=userCert:userCertificate
#
# The LDAP attribute names of an user
# Format: 'ldap property:alias'
#PЗдесь нам надо проинициализировать аттрибут sAMAccountName, для использования его #в качестве логина
security.ldap.user.prop.0=sAMAccountName:sAMAccountName
security.ldap.user.prop.1=displayName:cn
security.ldap.user.prop.2=ou
security.ldap.user.prop.3=objectClass:objectclass
security.ldap.user.prop.4=sn
security.ldap.user.prop.5=givenName:givenname
security.ldap.user.prop.6=mail:email
security.ldap.user.prop.7=cn:uid
security.ldap.user.prop.8=street:streetaddress
security.ldap.user.prop.9=roomNumber:roomnumber
security.ldap.user.prop.10=nsrole:nsrole
security.ldap.user.prop.11=nsroledn:nsroledn
#
# The LDAP atrribute names of a role or group
# Format: 'ldap property:alias'
#
security.ldap.role.prop.0=sn:sn
security.ldap.role.prop.1=ou:ou
security.ldap.role.prop.2=objectClass:objectclass
security.ldap.role.prop.3=member:member
Как видно из примера отличия весьма незначительны. Но настроить только ldap.properties недостаточно, т.к. подуровни (sub ou's) ou (organisational unit) будут недоступны, а это означает, что Вы можете работать только с пользователями, находящимися в ou=Users, также Вы не сможете авторизоваться используя sAMAccountName.
2. Обновление библиотек security
После настройки ldap.properties требуется сделать обновление библиотеки, отвечающие за security, скачать их можно отсюда: http://www.intalio.org/public/maven2/org/intalio/security/.
Список требуемых библиотек (Выбирайте желательно последние версии библиотек, на момент публикации последняя версия - 1.0.12):
Скорее всего Вы там увидите security-ws-service-1.0.4. Для того, чтобы обновить версию, Вам следует:
3. Нужно обновить библиотеки security в UI-FW
Для обновления библиотек необходимо скопировать ранее скачанные файлы:
- security-api-1.0.12.jar
- security-web-nutsNbolts-1.0.12.jar
- security-ws-client-1.0.12.jar
- security-ws-common-1.0.12.jar
в папку [intalio_server]\webapps\ui-fw\WEB-INF\lib, затем старые версии библиотек требуется удалить.
4. Нужно обновить библиотеки security в BPMS-CONSOLE
Для обновления библиотек необходимо скопировать ранее скачанные файлы:
- security-api-1.0.12.jar
- security-web-nutsNbolts-1.0.12.jar
- security-ws-client-1.0.12.jar
- security-ws-common-1.0.12.jar
в папку [intalio_server]\webapps\bpms-console\WEB-INF\lib, затем старые версии библиотек требуется удалить.
5. Нужно обновить библиотеки security в GI
Для обновления библиотек необходимо скопировать ранее скачанные файлы:
- security-web-nutsNbolts-1.0.12.jar
в папку [intalio_server]\webapps\gi\WEB-INF\lib, затем старые версии библиотек требуется удалить.
5. Нужно обновить библиотеки security в WDS
Для обновления библиотек необходимо скопировать ранее скачанные файлы:
- security-api-1.0.12.jar
- security-web-nutsNbolts-1.0.12.jar
- security-ws-client-1.0.12.jar
- security-ws-common-1.0.12.jar
в папку [intalio_server]\webapps\wds\WEB-INF\lib, затем старые версии библиотек требуется удалить.
Теперь перезагружаем Intalio|Server и можем использовать Microsoft Active Directory.
Эту статью Вы можете прочитать на новом блоге
2. Обновление библиотек security
После настройки ldap.properties требуется сделать обновление библиотеки, отвечающие за security, скачать их можно отсюда: http://www.intalio.org/public/maven2/org/intalio/security/.
Список требуемых библиотек (Выбирайте желательно последние версии библиотек, на момент публикации последняя версия - 1.0.12):
1. security-ws-service-1.0.12.aar
2. security-ws-common-1.0.12.jar
3. security-ws-client-1.0.12.jar
4. security-web-nutsNbolts-1.0.12.jar
5. security-api-1.0.12.jar
2. security-ws-common-1.0.12.jar
3. security-ws-client-1.0.12.jar
4. security-web-nutsNbolts-1.0.12.jar
5. security-api-1.0.12.jar
Затем следует зайти в http://localhost:8080/axis2 -> Administration и проверить версию security-ws-service-x.x.xx. См. рисунок ниже.
1. Удалить из папки [intalio_server]/webapps/axis2/WEB-INF/services файл security-ws-service-1.0.12.aar.
2. Загрузить новую версию сервиса, как показано на следующем рисунке:
2. Загрузить новую версию сервиса, как показано на следующем рисунке:
Для обновления библиотек необходимо скопировать ранее скачанные файлы:
- security-api-1.0.12.jar
- security-web-nutsNbolts-1.0.12.jar
- security-ws-client-1.0.12.jar
- security-ws-common-1.0.12.jar
в папку [intalio_server]\webapps\ui-fw\WEB-INF\lib, затем старые версии библиотек требуется удалить.
4. Нужно обновить библиотеки security в BPMS-CONSOLE
Для обновления библиотек необходимо скопировать ранее скачанные файлы:
- security-api-1.0.12.jar
- security-web-nutsNbolts-1.0.12.jar
- security-ws-client-1.0.12.jar
- security-ws-common-1.0.12.jar
в папку [intalio_server]\webapps\bpms-console\WEB-INF\lib, затем старые версии библиотек требуется удалить.
5. Нужно обновить библиотеки security в GI
Для обновления библиотек необходимо скопировать ранее скачанные файлы:
- security-web-nutsNbolts-1.0.12.jar
в папку [intalio_server]\webapps\gi\WEB-INF\lib, затем старые версии библиотек требуется удалить.
5. Нужно обновить библиотеки security в WDS
Для обновления библиотек необходимо скопировать ранее скачанные файлы:
- security-api-1.0.12.jar
- security-web-nutsNbolts-1.0.12.jar
- security-ws-client-1.0.12.jar
- security-ws-common-1.0.12.jar
в папку [intalio_server]\webapps\wds\WEB-INF\lib, затем старые версии библиотек требуется удалить.
Теперь перезагружаем Intalio|Server и можем использовать Microsoft Active Directory.
Эту статью Вы можете прочитать на новом блоге
понедельник, 22 марта 2010 г.
Аутентификация в Intalio через Microsoft Active Directory
Спустя 3 дня получилось таки настроить Intalio на работу с Active Directory. Не подумал бы даже с какими граблями встречусь - дело в том что оказалось все более-менее просто. Завтра с утречка выложу инфу как все это безобразие настроить :)
Эту статью Вы можете прочитать на новом блоге
Эту статью Вы можете прочитать на новом блоге
пятница, 19 марта 2010 г.
Intalio CE и Microsoft Active Directory
Авторизация в Intalio с помощью Microsoft Active Directory возможна!!!
На днях решил проверить совместную работу Intalio CE с Microsoft Active Directory, и как же я был удивлен, когда вторизация прошла!!! А удивление было обосновано тем, что на форуме www.intalio.com мне сообщили однажды, что Microsoft AD поддерживается только в Entrprise версии. Однако решил попробовать именно потому что, в Microsoft AD также используется LDAP, а если протокол один и тот же - то почему он должен работать только в ЕЕ версии?
Сразу напоролся на грабли:
В Apache LDAP у меня была OU=Users и OU=Roles, соответственно параметры в ldap.properties были следующими:
security.ldap.user.base=OU=User
security.ldap.role.base=OU=Roles
В Microsoft AD у нас существует достатно большое количество разных OU (Organizational Units) для пользователей. Так вот проблема заключается в следующем, что пока не нашел способа: либо поиска пользователей (что то типа SearcUserDN); либо надо понять как хотя бы перечислить существующие OU.
Эту статью Вы можете прочитать на новом блоге
На днях решил проверить совместную работу Intalio CE с Microsoft Active Directory, и как же я был удивлен, когда вторизация прошла!!! А удивление было обосновано тем, что на форуме www.intalio.com мне сообщили однажды, что Microsoft AD поддерживается только в Entrprise версии. Однако решил попробовать именно потому что, в Microsoft AD также используется LDAP, а если протокол один и тот же - то почему он должен работать только в ЕЕ версии?
Сразу напоролся на грабли:
В Apache LDAP у меня была OU=Users и OU=Roles, соответственно параметры в ldap.properties были следующими:
security.ldap.user.base=OU=User
security.ldap.role.base=OU=Roles
В Microsoft AD у нас существует достатно большое количество разных OU (Organizational Units) для пользователей. Так вот проблема заключается в следующем, что пока не нашел способа: либо поиска пользователей (что то типа SearcUserDN); либо надо понять как хотя бы перечислить существующие OU.
Эту статью Вы можете прочитать на новом блоге
Подписаться на:
Сообщения (Atom)