powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / авторизация db2 в ldap
14 сообщений из 14, страница 1 из 1
авторизация db2 в ldap
    #35679803
alex.ivenin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Настраиваю авторизацию db2 в ldap. Собственно авторизация настроена и проходит успешно, но для работы приложения с этой базой требуется, чтобы пользователь состоял в системной группе flcus, передать это из ldap в db2 никак не удается. Подскажите в чем дело.
Конфиги следующие.

ldif file

dn: dc=nodomain
objectClass: top
objectClass: dcObject
objectclass: person
objectclass: organizationalPerson
objectclass: mozillaAbPersonAlpha
dc: nodomain
sn: nodomain
cn: nodomain

dn: cn=admin,dc=nodomain
objectclass: top
objectclass: inetOrgPerson
cn: admin
sn: admin
userPassword: {SSHA}6MueM2+L/WMuvMLN9ePf7Qp3oA2PKi06

dn: cn=db2admin,dc=nodomain
objectclass: top
objectclass: inetOrgPerson
sn: db2admin
cn: db2admin
userPassword: {SSHA}jl5CNUSaY6gRwILkM2sCypCrFxgCE/r8

dn: OU=FLCUS,dc=nodomain
objectclass: inetOrgPerson
cn: FLCUS
sn: FLCUS

dn: CN=DKX623V,OU=FLCUS,dc=nodomain
objectclass: top
objectclass: person
objectclass: organizationalPerson
objectclass: inetOrgPerson
cn: DKX623V
sn: FLCUS
userPassword: {SSHA}X+cZzQs9pFAUnab7f78PmbM7pyT+KxRP


IBMLDAPSecurity.ini

LDAP_HOST = 10.0.0.114:389
USER_OBJECTCLASS = inetOrgPerson
USER_BASEDN = dc=nodomain
USERID_ATTRIBUTE = cn
AUTHID_ATTRIBUTE = cn
GROUP_OBJECTCLASS = inetOrgPerson
GROUP_BASEDN = ou=flcus
GROUPNAME_ATTRIBUTE = ou
GROUP_LOOKUP_METHOD = SEARCH_BY_DN
GROUP_LOOKUP_ATTRIBUTE = ou
DEBUG = true
...
Рейтинг: 0 / 0
авторизация db2 в ldap
    #35679865
Mark Barinstein
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
alex.ivenin IBMLDAPSecurity.ini

LDAP_HOST = 10.0.0.114:389
USER_OBJECTCLASS = inetOrgPerson
USER_BASEDN = dc=nodomain
USERID_ATTRIBUTE = cn
AUTHID_ATTRIBUTE = cn
GROUP_OBJECTCLASS = inetOrgPerson
GROUP_BASEDN = ou=flcus
GROUPNAME_ATTRIBUTE = ou
GROUP_LOOKUP_METHOD = SEARCH_BY_DN
GROUP_LOOKUP_ATTRIBUTE = ou
DEBUG = trueКак это может быть?
У вас что за ldap?
...
Рейтинг: 0 / 0
авторизация db2 в ldap
    #35679879
alex.ivenin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ошибся, там должно быть
GROUP_OBJECTCLASS = groupOfNames

OpenLDAP
...
Рейтинг: 0 / 0
авторизация db2 в ldap
    #35679963
Mark Barinstein
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
alex.iveninошибся, там должно быть
GROUP_OBJECTCLASS = groupOfNames

OpenLDAPДогда должно быть:
1.
GROUP_LOOKUP_ATTRIBUTE = member
2.
ldapsearch -h 10.0.0.114:389 -b "ou=flcus" "objectclass=groupOfNames" *
должен про вашу группу FLCUS выдавать типа:
...
objectclass: groupOfNames
ou: FLCUS
member: <dn_of_your_user>

И всё это при условии, что у groupOfNames вообще есть аттрибут ou (обычно он cn, как и у inetOrgPerson).
...
Рейтинг: 0 / 0
авторизация db2 в ldap
    #35680239
alex.ivenin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Mark Barinsteinalex.iveninошибся, там должно быть
GROUP_OBJECTCLASS = groupOfNames

OpenLDAPДогда должно быть:
1.
GROUP_LOOKUP_ATTRIBUTE = member
2.
ldapsearch -h 10.0.0.114:389 -b "ou=flcus" "objectclass=groupOfNames" *
должен про вашу группу FLCUS выдавать типа:
...
objectclass: groupOfNames
ou: FLCUS
member: <dn_of_your_user>

И всё это при условии, что у groupOfNames вообще есть аттрибут ou (обычно он cn, как и у inetOrgPerson).

У groupOfNames есть такой атрибут. Но я все-таки решил сменить все на cn.
Сейчас база выглядит так.

ldapvi --discover

0 dc=nodomain
objectClass: top
objectClass: dcObject
objectClass: mozillaAbPersonAlpha
objectClass: inetOrgPerson
objectClass: person
objectClass: organizationalPerson
dc: nodomain
sn: nodomain
cn: nodomain

1 cn=admin,dc=nodomain
objectClass: top
objectClass: inetOrgPerson
cn: admin
sn: admin

2 cn=db2admin,dc=nodomain
objectClass: top
objectClass: inetOrgPerson
sn: db2admin
cn: db2admin

3 cn=flcus,dc=nodomain
cn: flcus
member: uid=dkx623v,dc=nodomain
objectClass: groupOfNames
objectClass: top

4 cn=dkx623v,cn=flcus,dc=nodomain
objectClass: inetOrgPerson
objectClass: top
sn: dkx623v
cn: dkx623v

ldapsearch возвращает следующее
ldapsearch -x -b "dc=nodomain" "(&(objectClass=groupOfNames)(cn=flcus))"
# extended LDIF
#
# LDAPv3
# base <dc=nodomain> with scope subtree
# filter: (&(objectClass=groupOfNames)(cn=flcus))
# requesting: ALL
#

# flcus, nodomain
dn: cn=flcus,dc=nodomain
cn: flcus
member: uid=dkx623v,dc=nodomain
objectClass: groupOfNames
objectClass: top

# search result
search: 2
result: 0 Success

# numResponses: 2
# numEntries: 1


IBMLDAPSecurity.ini

LDAP_HOST = 10.0.0.114:389
USER_OBJECTCLASS = inetOrgPerson
USER_BASEDN = dc=nodomain
USERID_ATTRIBUTE = cn
AUTHID_ATTRIBUTE = cn
GROUP_OBJECTCLASS = groupOfNames
GROUP_BASEDN = cn=flcus
GROUPNAME_ATTRIBUTE = member
GROUP_LOOKUP_METHOD = SEARCH_BY_DN
GROUP_LOOKUP_ATTRIBUTE = cn
DEBUG = true

Конечный результат не изменился.
...
Рейтинг: 0 / 0
авторизация db2 в ldap
    #35680283
Mark Barinstein
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
alex.ivenin
# flcus, nodomain
dn: cn=flcus,dc=nodomain
cn: flcus
member: uid=dkx623v,dc=nodomain
objectClass: groupOfNames
objectClass: top

# search result
search: 2
result: 0 Success

# numResponses: 2
# numEntries: 1


IBMLDAPSecurity.ini

LDAP_HOST = 10.0.0.114:389
USER_OBJECTCLASS = inetOrgPerson
USER_BASEDN = dc=nodomain
USERID_ATTRIBUTE = cn
AUTHID_ATTRIBUTE = cn
GROUP_OBJECTCLASS = groupOfNames
GROUP_BASEDN = dc=nodomain
GROUPNAME_ATTRIBUTE = member
GROUP_LOOKUP_METHOD = SEARCH_BY_DN
GROUP_LOOKUP_ATTRIBUTE = cn
DEBUG = trueКроме того, раз:
cn=dkx623v,cn=flcus,dc=nodomain
objectClass: inetOrgPerson
objectClass: top
sn: dkx623v
cn: dkx623v

то должно быть:

dn: cn=flcus,dc=nodomain
cn: flcus
member: dn: cn=flcus,dc=nodomain
cn: flcus
member: cn=dkx623v,cn=flcus,dc=nodomain
objectClass: groupOfNames
objectClass: top

objectClass: groupOfNames
objectClass: top
...
Рейтинг: 0 / 0
авторизация db2 в ldap
    #35680289
Mark Barinstein
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Виноват:

dn: cn=flcus,dc=nodomain
cn: flcus
member: cn=dkx623v,cn=flcus,dc=nodomain
objectClass: groupOfNames
objectClass: top
...
Рейтинг: 0 / 0
авторизация db2 в ldap
    #35680306
alex.ivenin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Согласен, тут я тоже ошибся. Поправил сейчас. Не помогло. Пользователь авторизовывается, но прав у него нет из-за того, что ldap не передает db2 группу flcus. Совсем забыл сказать, flcus должна быть системной windows-группой пользователя, чтобы все работало. Если это имеет значение, конечно.

ldapvi --discover
0 dc=nodomain
objectClass: top
objectClass: dcObject
objectClass: mozillaAbPersonAlpha
objectClass: inetOrgPerson
objectClass: person
objectClass: organizationalPerson
dc: nodomain
sn: nodomain
cn: nodomain

1 cn=admin,dc=nodomain
objectClass: top
objectClass: inetOrgPerson
cn: admin
sn: admin

2 cn=db2admin,dc=nodomain
objectClass: top
objectClass: inetOrgPerson
sn: db2admin
cn: db2admin

3 cn=flcus,dc=nodomain
cn: flcus
member: cn=dkx623v,cn=flcus,dc=nodomain
objectClass: groupOfNames
objectClass: top

4 cn=dkx623v,cn=flcus,dc=nodomain
objectClass: inetOrgPerson
objectClass: top
sn: dkx623v
cn: dkx623v
...
Рейтинг: 0 / 0
авторизация db2 в ldap
    #35680341
Mark Barinstein
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
alex.iveninСогласен, тут я тоже ошибся. Поправил сейчас. Не помогло. Пользователь авторизовывается, но прав у него нет из-за того, что ldap не передает db2 группу flcus.Что выдает запрос
Код: plaintext
SELECT * FROM TABLE(AUTH_LIST_GROUPS_FOR_AUTHID ('DKX623V')) T
?
...
Рейтинг: 0 / 0
авторизация db2 в ldap
    #35682060
alex.ivenin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SQL0551N "DKX623V" не обладает привилегией для выполнения операции "SELECT" над объектом "123.456". SQLSTATE=42501
...
Рейтинг: 0 / 0
авторизация db2 в ldap
    #35682765
Mark Barinstein
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
alex.iveninSQL0551N "DKX623V" не обладает привилегией для выполнения операции "SELECT" над объектом "123.456". SQLSTATE=42501"123.456" - это оно так и пишет?
У вас анонимный поиск принадлежности пользователя к группам работает в openLdap?
...
Рейтинг: 0 / 0
авторизация db2 в ldap
    #35688758
alex.ivenin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Mark Barinsteinalex.iveninSQL0551N "DKX623V" не обладает привилегией для выполнения операции "SELECT" над объектом "123.456". SQLSTATE=42501"123.456" - это оно так и пишет?
У вас анонимный поиск принадлежности пользователя к группам работает в openLdap?
нет, 123.456 - это я поправил имя таблицы
да, анонимный поиск работает
...
Рейтинг: 0 / 0
авторизация db2 в ldap
    #35688790
Mark Barinstein
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вы можете показать результат запроса:
Код: plaintext
SELECT * FROM TABLE(AUTH_LIST_GROUPS_FOR_AUTHID ('DKX623V')) T
?
Это проверка того, как db2 определяет, в какие группы входит пользователь DKX623V.
...
Рейтинг: 0 / 0
авторизация db2 в ldap
    #35688863
alex.ivenin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Mark BarinsteinВы можете показать результат запроса:
Код: plaintext
SELECT * FROM TABLE(AUTH_LIST_GROUPS_FOR_AUTHID ('DKX623V')) T
?
Это проверка того, как db2 определяет, в какие группы входит пользователь DKX623V.
Вообщем-то да
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / авторизация db2 в ldap
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]